// // YingFuZKListViewController.swift // GeliBusinessPlatform // // Created by junye lu on 2020/5/8. // Copyright © 2020 junye lu. All rights reserved. // import UIKit class YingFuZKListViewController: BaseViewController,UISearchBarDelegate,SearchBarViewDelegate,UITableViewDataSource,UITableViewDelegate { let UserToken = UserDefaults.standard.value(forKey: "user_token") var page : Int = 0 var keyword: String = "" var dataArr:Array<accountsPayableListDataModel> = []//应付 var datas:Array<Any> = []//应收 @IBOutlet weak var titleLbl: UILabel! @IBOutlet weak var totalPriceLbl: UILabel! @IBOutlet weak var topView: UIView! @IBOutlet weak var listView: UITableView! var searchV : SearchBarView? = nil var barTitle:String? override func viewDidLoad() { super.viewDidLoad() navbar.title = barTitle self.view.addSubview(navbar) listView.separatorStyle = .none SetTopFrame(view: topView, height: 44) if barTitle == "应收账款" { titleLbl.text = "当前应收款余额总计:" } let searchBr = SearchBarView.init() topView.addSubview(searchBr) searchBr.snp.makeConstraints { (make) in make.left.equalTo(10) make.right.equalTo(-10) make.centerY.equalToSuperview() make.height.equalTo(30) } searchV = searchBr searchBr.placeholderStr = "请输入单号" searchBr.cornerRadius = 35/2.0 searchBr.delegate = self searchBr.delegateL = self listView.register(UINib(nibName: "YingFuZhangKuanCell", bundle: nil), forCellReuseIdentifier: "YingFuZhangKuanCell") //下拉刷新相关设置 headerMJ.setRefreshingTarget(self, refreshingAction: #selector(loadData)) listView.mj_header = headerMJ //上拉加载相关设置 footerMJ.setRefreshingTarget(self, refreshingAction: #selector(loadMoreData)) listView.mj_footer = footerMJ listView.mj_header?.beginRefreshing() } //MARK: - CELL DELEGATE func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { let vc = YingFuZhangKuanXQViewController() vc.navTitle = "\(barTitle!)详情" if (barTitle?.contains("应付"))!{ let model = dataArr[indexPath.row] vc.ven_id = model.ven_id! } self.navigationController?.pushViewController(vc, animated: true) } func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { return 49 } func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { if (barTitle?.contains("应付"))!{ return dataArr.count }else{ return datas.count } } func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { let cell = tableView.dequeueReusableCell(withIdentifier: "YingFuZhangKuanCell") as! YingFuZhangKuanCell if (barTitle?.contains("应付"))!{ let mo = dataArr[indexPath.row] cell.nameLbl.text = mo.ven_name! if mo.payable_money != "0.00" { cell.priceLbl.text = "¥-" + mo.payable_money! }else{ cell.priceLbl.text = "¥0" } }else{ } return cell } //MAKR:--调起搜索后添加个蒙版本 var blackBtnView:UIButton! = nil func searchBarSearchButtonClicked(_ searchBar: UISearchBar) { print("点击搜索进行--") searchBar.resignFirstResponder() keyword = searchBar.text! listView.mj_header?.beginRefreshing() } //MARK:--取消搜索代理 func clearSearchAction() { print("取消搜索代理了--") } func searchBarTextDidEndEditing(_ searchBar: UISearchBar) { print("编辑即将结束了--") removeBlackBtnView() if searchBar.text?.count == 0 && keyword.count != 0{ keyword = searchBar.text! listView.mj_header?.beginRefreshing() } } func searchBarShouldBeginEditing(_ searchBar: UISearchBar) -> Bool { print("调起搜索后添加个蒙版本") blackBtnView = UIButton () blackBtnView.backgroundColor = UIColor.init(named: "提示视图背景色") self.view.addSubview(blackBtnView) blackBtnView.snp.makeConstraints { (make) in make.left.right.bottom.equalToSuperview() make.top.equalTo(topView!.snp_bottom) } blackBtnView.addTarget(self, action: #selector(removeBlackBtnView), for: .touchUpInside) return true } @objc func removeBlackBtnView(){ if blackBtnView != nil { blackBtnView.removeFromSuperview() searchV!.resignFirstResponder() } } //MARK:--加载数据 @objc func loadData(){ print("加载数据") page = 1 let dic = ["user_token":UserToken as Any,"keyword":keyword as Any,"page":page as Any] if (barTitle?.contains("应付"))!{ accountsPayableList(dic, success: { (data) in let model = (data as! accountsPayableListModel) self.dataArr.removeAll() model.data?.vendor_res?.forEach({ (model) in self.dataArr.append(model) }) self.totalPriceLbl.text = "¥-\(model.data!.total_payable_money!)" self.listView.reloadData() self.listView.mj_header?.endRefreshing() self.page = 2 if model.data?.vendor_res?.count == 0 { self.listView.mj_footer?.endRefreshingWithNoMoreData() }else{ self.listView.mj_footer?.endRefreshing() } }) { (error) in self.listView.mj_header?.endRefreshing() } }else{//应收 } } //MARK:--加载更多数据 @objc func loadMoreData(){ print("加载更多数据") let dic = ["user_token":UserToken as Any,"keyword":keyword as Any,"page":page as Any] if (barTitle?.contains("应付"))!{ accountsPayableList(dic, success: { (data) in let dataM = data as! accountsPayableListModel if dataM.data?.vendor_res?.count == 0 { self.listView.mj_footer?.endRefreshingWithNoMoreData() }else{ self.page += 1 dataM.data?.vendor_res?.forEach({ (model) in self.dataArr.append(model) }) self.listView.reloadData() self.listView.mj_footer?.endRefreshing() } }) { (error) in self.listView.mj_footer?.endRefreshing() } }else{//应收 } } }