Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- SecondVc Button Action: After this action I have to load FirstVc TableView.So, am removing arrays and Adding data based on selected values. While Reloading TableView it shows Error.(self.tableView.reloaddata)
- @IBAction func okBtnAction(_ sender: Any)
- {
- print("Ok Button")
- Appconstant.isFiltered = true
- Appconstant.orderStatus = (statusButton.titleLabel?.text)!
- Appconstant.orderDate = (dateButton.titleLabel?.text)!
- let orderVc:OrderHistoryViewController = OrderHistoryViewController()
- orderVc.orderCartid.removeAll()
- orderVc.orderid.removeAll()
- orderVc.amount.removeAll()
- orderVc.orderStatus.removeAll()
- orderVc.date.removeAll()
- let orderHistoryModel = OrderHistoryModel.init(date:Appconstant.orderDate,pageNumber:pageNumber,pageSize:10,searchString:"",status:Appconstant.orderStatus)
- let serializedjson = JSONSerializer.toJson(orderHistoryModel!)
- orderVc.gethistory(url: Appconstant.ORDER_HISTORY_URL, value: serializedjson)
- dismiss(animated: true, completion: { _ in })
- }
- FirstVc API Hitting Method:
- func gethistory(url:String,value : String)
- {
- let username = "raghubb4444@gmail.com"
- let password = "1111"
- let loginString = NSString(format: "%@:%@", username, password)
- let loginData: NSData = loginString.data(using: String.Encoding.utf8.rawValue)! as NSData
- let base64LoginString = "Basic "+loginData.base64EncodedString(options: NSData.Base64EncodingOptions.lineLength64Characters)
- let request = NSMutableURLRequest(url: URL(string: url)!)
- request.httpMethod = "Post"
- request.addValue("application/json", forHTTPHeaderField: "Content-Type")
- request.addValue(base64LoginString, forHTTPHeaderField: "Authorization")
- request.addValue(Appconstant.TENANT, forHTTPHeaderField: "TENANT")
- request.httpBody = value.data(using: String.Encoding.utf8)
- let task = URLSession.shared.dataTask(with: request as URLRequest) { data, response, error in
- guard error == nil && data != nil else {
- return
- }
- if let httpStatus = response as? HTTPURLResponse, httpStatus.statusCode != 200 { // check for http errors
- print("statusCode should be 200, but is \(httpStatus.statusCode)")
- print("response = \(response)")
- self.checkconnection()
- }
- let responseString = NSString(data: data!, encoding: String.Encoding.utf8.rawValue)
- print("responseString = \(responseString)")
- DispatchQueue.main.async() {
- }
- let json = JSON(data)
- for items in json["result"].arrayValue
- {
- self.orderCartid.append(items["ID"].stringValue)
- self.orderid.append(items["OrderNo"].stringValue)
- self.amount.append(items["TotalPrice"].stringValue)
- self.orderStatus.append(items["OrderStatus"].stringValue)
- let str = items["OrderDateTime"].stringValue
- let string = items["OrderDateTime"].stringValue
- self.date.append(dateString)
- }
- DispatchQueue.main.async() {
- if(self.orderid.count == 0){
- self.tableView.isHidden = true
- }
- self.tableView.reloadData()
- }
- print("Array_Values==>>")
- print(self.orderid)
- print(self.orderStatus)
- print(self.amount)
- self.tableView.reloadData()
- }
- task.resume()
- }
Add Comment
Please, Sign In to add comment