123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169 |
- //
- // MeTraineeDetails04Controller.swift
- // JiaPeiManage
- //
- // Created by Ning.ge on 2023/6/20.
- //
- import UIKit
- import RxSwift
- import RxCocoa
- final class MeTraineeDetails04Controller: BaseTableViewController {
-
- let cellIdentifier:String = "_MeTraineeDetails04Cell"
- // MARK: 服务属性
- private let cocahService: CoachServiceType = CoachService(networking: CoachNetworking())
-
- // MARK: UI属性
- let header01_view = MeTraineeDetails01HeaderView.loadFromNib().then {
- $0.title_label.text = "签到签退表"
- }
- let header04_view = MeTraineeDetails04HeaderView.loadFromNib()
-
- // MARK: 数据
- var stuTmsSignDataModel:StuTmsSignDataModel?
- var rows : [StuTmsSignInfoModel] = []
- var page:Int = 1
- var pageSize:Int = 10
- var stuOutId:Int = 0
-
- init(stuOutId:Int) {
- super.init()
- self.stuOutId = stuOutId
- }
-
- required convenience init?(coder aDecoder: NSCoder) {
- fatalError("init(coder:) has not been implemented")
- }
-
- override func viewDidLoad() {
- super.viewDidLoad()
- //绑定
- biandView()
- if(self.stuOutId>0){getStuResultList()}
- }
-
- // MARK: 私有方法
- func getStuResultList(){
- page=1
- self.cocahService.stuTmsSignListByStuIdRequest(pageNum: page, pageSize: pageSize, stuOutId: stuOutId, city: LocalManager.userInfo.city!)
- .subscribe(onSuccess: {[unowned self] stuTmsSignDataModel in
- self.rows.removeAll()
- self.stuTmsSignDataModel = stuTmsSignDataModel
- self.rows+=stuTmsSignDataModel.rows
- print("resultInfoModel成功")
- self.hideLoadAnimation()
- self.tableView.reloadData()
- self.stopRefresh()
- }, onError: { error in
- self.stopRefresh()
- })
- .disposed(by: disposeBag)
- }
-
- //更多
- func getLoadMore(){
- //计算-页数
- if (stuTmsSignDataModel != nil){
- let total = pageSize*self.page
- if(total<(stuTmsSignDataModel?.total)!){
- self.page+=1
- }else{
- self.stopLoad()
- return //已经显示完
- }
- }
- //请求网络-加载
- self.cocahService.stuTmsSignListByStuIdRequest(pageNum: page, pageSize: pageSize, stuOutId: stuOutId, city: LocalManager.userInfo.city!)
- .subscribe(onSuccess: {[unowned self] stuTmsSignDataModel in
- self.stuTmsSignDataModel = stuTmsSignDataModel
- self.rows+=stuTmsSignDataModel.rows
- print("resultInfoModel成功")
- self.tableView.reloadData()
- self.stopLoad()
- }, onError: { error in
- self.stopLoad()
- })
- .disposed(by: disposeBag)
- }
-
- func biandView(){
- tableView.delegate = self
- tableView.dataSource = self
- tableView.separatorStyle = .none //去除分割线
- tableView.register(UINib(nibName: "MeTraineeDetails04Cell", bundle: nil), forCellReuseIdentifier: cellIdentifier)
- tableView.rowHeight = 62.f
- setupRefreshHeader(tableView) {[unowned self] in
- self.getStuResultList()
- }
- self.isEmptyDisplay = false
- self.hideLoadAnimation()
- // 设置上拉加载更多
- tableView.es.addInfiniteScrolling { [weak self] in
- self?.getLoadMore()
- }
- }
- }
- //数据源
- extension MeTraineeDetails04Controller:UITableViewDataSource {
-
-
- func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
- if (rows.count>0){
- return rows.count
- }
- return 0
- }
-
- func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
- let header_view = UIView().then {
- $0.backgroundColor = .db_theme
- }
- header_view.addSubview(header01_view)
- header01_view.snp.makeConstraints { make in
- make.left.right.top.equalTo(header_view)
- make.height.equalTo(50.f)
- }
- header_view.addSubview(header04_view)
- header04_view.snp.makeConstraints { make in
- make.top.equalTo(header01_view.bottom)
- make.left.right.equalTo(header_view)
- make.height.equalTo(44.f)
- }
- return header_view
- }
-
- func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
- return 50.f+44.f
- }
-
- func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
- let cell = tableView.dequeueReusableCell(withIdentifier: cellIdentifier, for: indexPath) as! MeTraineeDetails04Cell
- cell.contentView.backgroundColor = ((indexPath.row%2) != 0) ? UIColor("#113357") : UIColor("#0B2B4D")
- cell.backgroundColor = ((indexPath.row%2) != 0) ? UIColor("#113357") : UIColor("#0B2B4D")
- let info = rows[indexPath.row] as StuTmsSignInfoModel
- cell.trainCarLicnum_label.text = info.trainCarLicnum
- cell.sim_label.text = info.sim
- cell.logintime_label.text = info.loginTime
- if info.loginFlag == "1" {
- cell.state_label.text = "签到"
- cell.state_label.textColor = UIColor("#35BF5E")
- }else{
- cell.state_label.text = "签退"
- cell.state_label.textColor = UIColor("#FF5454")
- }
- return cell
- }
- }
- //事件
- extension MeTraineeDetails04Controller:UITableViewDelegate {
-
- }
|