Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import UIKit
- import SwiftyJSON
- import Alamofire
- protocol searchSheetDelegate {
- func getSearchListArray(searchlist:[PROJECTLIST])
- }
- class IssuesSearchSheetViewController: UIViewController, HalfSheetPresentableProtocol, HalfSheetTopVCProviderProtocol {
- @IBOutlet var txtProID: SkyFloatingLabelTextField!
- @IBOutlet var txtProjektb: SkyFloatingLabelTextField!
- @IBOutlet var txtPSP: SkyFloatingLabelTextField!
- @IBOutlet var txtVerant: SkyFloatingLabelTextField!
- @IBOutlet var btnSuchen: UIButton!
- @IBOutlet var txtErstell: SkyFloatingLabelTextField!
- @IBOutlet var txtBuKrs: SkyFloatingLabelTextField!
- @IBOutlet var txtProfitcenter: SkyFloatingLabelTextField!
- @IBAction func suchenButton(_ sender: UIButton) {
- view.endEditing(true)
- isKeyboardUp = false
- let projectList:PROJECTLIST = PROJECTLIST(object: Any.self)
- projectList.pROID = self.txtProID.text
- projectList.pROBEZ = self.txtProjektb.text
- projectList.pSPNR = self.txtPSP.text
- projectList.vERNA = self.txtVerant.text
- projectList.eINGANG = self.txtErstell.text
- projectList.bUKRS = self.txtBuKrs.text
- projectList.pRCTR = self.txtProfitcenter.text
- getData(withUsername: "GLAJQI", andPassword: "blackberry1", andProjectList: projectList)
- }
- var delegate : searchSheetDelegate?
- override func viewDidLoad() {
- super.viewDidLoad()
- txtProID.delegate = self
- txtProjektb.delegate = self
- txtPSP.delegate = self
- txtVerant.delegate = self
- txtErstell.delegate = self
- txtBuKrs.delegate = self
- txtProfitcenter.delegate = self
- // Do any additional setup after loading the view.
- }
- override func didReceiveMemoryWarning() {
- super.didReceiveMemoryWarning()
- // Dispose of any resources that can be recreated.
- }
- let sapURL = "http://212.4.68.34:50002/sitf/values/?url=http://sitfsed.sitf.local:8000/mobile/pco/mainlist2"
- var projectlistArray:[PROJECTLIST] = [PROJECTLIST]()
- var filteredArray:[PROJECTLIST] = [PROJECTLIST]()
- func getData(withUsername username: String, andPassword password: String, andProjectList projectList: PROJECTLIST) {
- // startLoading()
- let credentials: String! = "Basic \("\(username):\(password)".data(using: String.Encoding.utf8)?.base64EncodedString(options: Data.Base64EncodingOptions(rawValue: 0)) ?? "")"
- //Base64 Authorization Header
- let loginHeaders = [
- "Authorization": "\(credentials!)"
- ]
- let requestURL = sapURL + "?verna=\(projectList.vERNA ?? "")&prctr=\(projectList.pRCTR ?? "")&bukrs=\(projectList.bUKRS ?? "")&proid=\(projectList.pROID ?? "")&probez=\(projectList.pROBEZ ?? "")&pspnr=\(projectList.pSPNR ?? "")" //proid=1516* -- default
- Alamofire.request(requestURL, method: .get, parameters: [:], headers: loginHeaders).responseJSON { response in
- if response.response?.statusCode == 200 {
- do {
- let json = try JSON(data: response.data!) //SwiftJSON
- let localTablesBase = MAINLISTBase(json: json)
- // let localTables = localTablesBase.lOCALTABLES
- if let arrayPRCTR = localTablesBase.mAINLIST?.pROJECTLIST {
- self.delegate?.getSearchListArray(searchlist: arrayPRCTR)
- self.dismiss(animated: true, completion: nil)
- } else {
- print("diqka nuk o n'rregëll error tjeter")
- }
- //here you reload table, stop loading or whatever you want to do with the data after received them
- //tableView.reloadData()
- //stopLoading
- } catch {
- print("diqka nuk o n'rregëll")
- }
- } else {
- print("error with code \(response.response?.statusCode ?? 0)")
- }
- }
- }
Add Comment
Please, Sign In to add comment