2020-08-11

2020-08-11  本文已影响0人  iOSWater
    lazy var tableView: UITableView = {
        let tempView = UITableView()
        tempView.backgroundColor = .white
        tempView.delegate = self
        tempView.dataSource = self
        tempView.register(UINib.init(nibName: "MyAssetQianBaoTableViewCell", bundle: nil), forCellReuseIdentifier: cellID)
        tempView.separatorStyle = .none
        tempView.mj_header = RefreshUtil.createRefreshHeader(viewContorl: self, selector: #selector(refresh))
        return tempView
    }()
typealias CellSelectModel = (AssetWalletDataModel)->()

class MyAssetBottomListViewController: UIViewController {

    let cellID = "REUSEDCELLID"
    var cellArr: [AssetWalletDataModel] = []

    var cellSeletcModelBlock:CellSelectModel?
}
extension MyAssetBottomListViewController:UITableViewDelegate,UITableViewDataSource{
    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return cellArr.count
    }
    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell:MyAssetQianBaoTableViewCell = tableView.dequeueReusableCell(withIdentifier: cellID) as! MyAssetQianBaoTableViewCell
        cell.selectionStyle = .none
        cell.model = cellArr[indexPath.row]
        return cell
    }
    
    func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
        return 90
    }
    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
        let model = cellArr[indexPath.row]
        if cellSeletcModelBlock != nil {
            cellSeletcModelBlock!(model)
        }
    }
}

extension MyAssetBottomListViewController{
    
    @objc func refresh() {
        if GlobalArea.share.isLogin{
            getServerData()
        }
    }
    func getServerData() {
        let parameters: [String : Any] = [
            "data" : ["coinType": "","isHide" : "0"],
            "pageNo" : 1,
            "pageSize" : 99999
        ]
        Networks.postJSON(CallUtil.tradingWalletIndexUrl, serverType: .wallet, parameters: parameters).then { [weak self] (body) in
            guard let strongSelf = self else {return}
            strongSelf.tableView.mj_header.endRefreshing()
            let jsonString = String(data: body, encoding: String.Encoding.utf8)
            let model = AssetWalletModel.deserialize(from: jsonString)
            if model?.code == 0 {
                strongSelf.cellArr = model?.result?.list ?? []
                DispatchQueue.main.async { [weak self] in
                    guard let strongSelf = self else {return}
                    strongSelf.tableView.reloadData()
                }
            }
        }.catch { (error) in
            self.tableView.mj_header.endRefreshing()
            IndiView.showMsg(message: error.localizedDescription)
        }
    }
}
                DispatchQueue.main.async { [weak self] in
                    guard let strongSelf = self else {
                        return
                    }
                    strongSelf.bbtableView.reloadData()
                }
上一篇 下一篇

猜你喜欢

热点阅读