// // SelectBankViewController.swift // xingchuangke // // Created by Virgil on 2019/3/30. // Copyright © 2019 Virgil. All rights reserved. // import UIKit class MyDelegateViewController: BaseViewController, UITableViewDataSource, UITableViewDelegate, UITextFieldDelegate { @IBOutlet weak var viewRemark: UIView! @IBOutlet weak var tableView: UITableView! @IBOutlet weak var imgBackgroud: UIImageView! @IBOutlet weak var txtCode: UITextField! @IBOutlet weak var viewMenu: UIView! @IBOutlet weak var lblRemark: UILabel! var mid = "" var provinceId = "" var cityId = "" var shopEntity: ShopOpenEntity! var bankName = "" ///0:代理 1:商户 var type = 0 var strTitle = "代理" override func viewDidLoad() { super.viewDidLoad() if type == 1 { strTitle = "商户" } let viewNav = (CommonViewUntils.getViewForXIB(xibName: "NavView") as! NavView) viewNav.initView(title: "我的\(strTitle)") {[weak self] (index, _) in if index == 0 { self!.handleBack() } } self.view.addSubview(viewNav) viewNav.marginTop(top: 0) self.view.addSubview(viewNav) viewNav.marginTop(top: 0) viewMenu.marginTop(top: viewNav.bottom()) txtCode.setCornerRadius(size: 4) txtCode.setContentMarginLeft(leftWidth: 15) txtCode.setContentMarginRight(rightWidth: 30) imgBackgroud.setSizeHeight(height: viewMenu.bottom()) viewRemark.marginTop(top: 0, view: imgBackgroud) tableView.marginTop(top: 1, view: viewRemark) tableView.setSizeHeight(height: ScreenHeight - imgBackgroud.height() - 49) tableView.register(UINib(nibName: "MyDelegateTableViewCell", bundle: nil), forCellReuseIdentifier: "MyDelegateTableViewCell") tableView.delegate = self tableView.dataSource = self tableView.separatorStyle = .none tableView.showsVerticalScrollIndicator = false tableView.estimatedRowHeight = 100 tableView.keyboardDismissMode = .onDrag txtCode.delegate = self txtCode.returnKeyType = .search tableView.mj_header = MJRefreshNormalHeader(refreshingBlock: {[weak self] in self!.currentPage = 1 self!.loadData() }) tableView.mj_header?.lastUpdatedTimeKey = "ShowTableViewCell" tableView.mj_footer = MJRefreshBackNormalFooter(refreshingBlock: {[weak self] in self!.currentPage += 1 self!.loadData() }) // lblRemark.setColorString(str: "直属\(strTitle)(3人)", range: NSRange.init(location: 5, length: 2), defaultColor: CommonUntils.getUIColorFromRGB(rgbValue: 0x323232, alpha: 1.0), currentColor: UIColor.red) //CommonViewUntils.getAttributedString(str: "直属\(strTitle)(3人)", left: [5,strTitle.length() + 2,strTitle.length() + 4], color: [UIColor]) // lblRemark.text = "直属\(strTitle)(3人)" self.currentPage = 1 loadData() } @IBAction func btnQuery(_ sender: Any) { self.currentPage = 1 loadData() } func textFieldShouldReturn(_ textField: UITextField) -> Bool { self.currentPage = 1 loadData() return true } // MARK: =============加载数据=============== func loadData() //str:String { let url = RequestURL.myAgentList let params = NSMutableDictionary() params.setValue(CommonValue.getUserId(), forKey: "userId") params.setValue(txtCode.text!, forKey: "likeStr") loadDataList(url: url, params: params, tableView: tableView, tag: 1001) } func submitData() { if selectedIndex == -1 { SVProgressHUD.showError(withStatus: "请选择分拨代理") return } let url = RequestURL.machineAllocation let params = NSMutableDictionary() params.setValue(getString(current: selectedIndex, key: "id"), forKey: "userId") params.setValue(mid, forKey: "machineId") submitData(url: url, params: params, tag: 1002) } override func returnData(tag: Int) { if tag == 1001 { lblRemark.setColorString(str: "直属\(strTitle)(\(dicDataList.getInt(key: "totalNum"))人)", range: NSRange.init(location: 5, length: 2), defaultColor: CommonUntils.getUIColorFromRGB(rgbValue: 0x323232, alpha: 1.0), currentColor: UIColor.red) tableView.reloadData() } else if tag == 1002 { SVProgressHUD.showSuccess(withStatus: "分拨成功!") handleBack() } } override func returnError(tag: Int, type: String) { } // MARK: TABLEVLEW 实现 func numberOfSections(in tableView: UITableView) -> Int { return 1 } func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return self.arrData.count } func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { return 82 } func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { let cell = tableView.dequeueReusableCell(withIdentifier: "MyDelegateTableViewCell", for: indexPath as IndexPath) as! MyDelegateTableViewCell if getString(current: indexPath.row, key: "realName") == "" { cell.lblName.text = "未实名认证" } else { cell.lblName.text = "\(getString(current: indexPath.row, key: "realName")) " } let phone = "\(getString(current: indexPath.row, key: "phone"))(推荐码:\(getString(current: indexPath.row, key: "recCode")))" if phone.length() > 7 { cell.lblPhone.text = "\(phone.substringTo(index: 3))****\(phone.substringFrom(index: 7))" } else { cell.lblPhone.text = "\(phone.substringTo(index: 3))****" } cell.imgIcon.loadImage(imgUrl: getString(current: indexPath.row, key: "headPortrait"), defaultImage: "ion_index_01") if type == 1 { cell.btnPhone.isHidden = true cell.lblPhone.isHidden = true cell.lblName.marginTop(top: 0) cell.lblName.setSizeHeight(height: 82) } else { cell.imgIcon.setCornerRadius() } cell.btnPhone.tag = indexPath.row cell.btnPhone.addTarget(self, action: #selector(btnCallClick), for: .touchUpInside) return cell } var selectedIndex = -1 func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { ///0:代理 1:商户 if indexPath.row >= arrData.count { return } if type == 0 { let vc = MyDelegateDetailViewController() vc.dicData.setDic(dic: self.arrData[indexPath.row] as! NSDictionary) vc.id = getString(current: indexPath.row, key: "id") toViewController(viewController: vc) } else { let vc = MyShopDetailViewController() vc.id = getString(current: indexPath.row, key: "id") toViewController(viewController: vc) } } @objc func btnCallClick(btn: UIButton) { if CommonUntils.getIsSimulator() { SVProgressHUD.showError(withStatus: "模拟器环境下不能拨打电话") } else { CommonUntils.callPhone(phone: getString(current: btn.tag, key: "phone")) } } override func viewWillAppear(_ animated: Bool) { super.viewWillAppear(animated) appDelegate.setNavigationBarHidden(isHidden: true) loadData() } override init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: Bundle?) { super.init(nibName: "MyDelegateViewController", bundle: nil) } required init?(coder aDecoder: NSCoder) { fatalError("init(coder:) has not been implemented") } }