MeTraineeSubjectPageViewController.swift 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. //
  2. // MeTraineeSubjectPageViewController.swift
  3. // JiaPeiManage
  4. //
  5. // Created by Ning.ge on 2023/6/15.
  6. //
  7. import UIKit
  8. import RxSwift
  9. import RxCocoa
  10. final class MeTraineeSubjectPageViewController: BaseTableViewController {
  11. let cellIdentifier:String = "_MeTraineeSubjectCell"
  12. // MARK: 服务属性
  13. private let cocahService: CoachServiceType = CoachService(networking: CoachNetworking())
  14. // MARK: UI属性
  15. // MARK: 数据
  16. var traineeDataModel:TraineeDataModel?
  17. var page:Int = 1
  18. var pageSize:Int = 10
  19. var state = "1"
  20. init(state:String) {
  21. super.init()
  22. self.state = state
  23. }
  24. required convenience init?(coder aDecoder: NSCoder) {
  25. fatalError("init(coder:) has not been implemented")
  26. }
  27. override func viewDidLoad() {
  28. super.viewDidLoad()
  29. getCoachInfoList()
  30. //绑定
  31. biandView()
  32. }
  33. // MARK: 私有方法
  34. func getCoachInfoList()
  35. {
  36. self.cocahService.coachInfoListRequest(city: LocalManager.userInfo.city!, appCoachId: "", coachId: "\(LocalManager.userInfo.id)", field: "", pageNum: page, pageSize: pageSize, schoolId: 0, state: state)
  37. .subscribe(onSuccess: { traineeDataModel in
  38. self.traineeDataModel = traineeDataModel
  39. print("coachInfoListRequest成功")
  40. self.hideLoadAnimation()
  41. self.tableView.reloadData()
  42. }, onError: { error in
  43. })
  44. .disposed(by: disposeBag)
  45. }
  46. func biandView(){
  47. tableView.delegate = self
  48. tableView.dataSource = self
  49. tableView.separatorStyle = .none //去除分割线
  50. tableView.register(UINib(nibName: "MeTraineeSubjectCell", bundle: nil), forCellReuseIdentifier: cellIdentifier)
  51. tableView.rowHeight = 288.f
  52. setupRefreshHeader(tableView) {[unowned self] in
  53. DispatchQueue.main.asyncAfter(deadline: .now() + 1.0) {
  54. // 在延迟 1 秒后执行的代码
  55. self.stopRefresh()
  56. }
  57. NSLog("AAAAAAA")
  58. }
  59. self.isEmptyDisplay = false
  60. }
  61. }
  62. //数据源
  63. extension MeTraineeSubjectPageViewController:UITableViewDataSource {
  64. func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
  65. return self.traineeDataModel?.rows?.count ?? 0
  66. }
  67. func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
  68. let cell = tableView.dequeueReusableCell(withIdentifier: cellIdentifier, for: indexPath) as! MeTraineeSubjectCell
  69. cell.index_button.setTitle("\(indexPath.row+1)", for: .normal)
  70. cell.setRowInfo(rowInfo: (self.traineeDataModel?.rows?[indexPath.row])!)
  71. return cell
  72. }
  73. }
  74. //事件
  75. extension MeTraineeSubjectPageViewController:UITableViewDelegate {
  76. func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
  77. tableView.deselectRow(at: indexPath, animated: false)
  78. let rowInfo = self.traineeDataModel?.rows![indexPath.row]
  79. if rowInfo != nil {
  80. let context: Int = rowInfo?.id ?? 0
  81. NYSwRouter.push(NYSwPushType.trainee_info,context: context)
  82. }
  83. }
  84. }