| | |
| | | // |
| | | // WelfareCouponsSubListVC.swift |
| | | // WanPai |
| | | // |
| | | // Created by 无故事王国 on 2023/6/28. |
| | | // |
| | | // |
| | | // WelfareCouponsSubListVC.swift |
| | | // WanPai |
| | | // |
| | | // Created by 无故事王国 on 2023/6/28. |
| | | // |
| | | |
| | | import UIKit |
| | | import RxSwift |
| | | import RxRelay |
| | | import JQTools |
| | | |
| | | let WelfareCoupons_Noti = NSNotification.Name("WelfareCoupons_Noti") |
| | | |
| | | class WelfareCouponViewModel:RefreshModel<CouponModel>{ |
| | | var type = BehaviorRelay<Int?>(value: nil) |
| | | var status = BehaviorRelay<Int?>(value: nil) |
| | | override func api() -> (Observable<BaseResponse<[CouponModel]>>)? { |
| | | Services.myCouponList(type: type.value, useStatus: status.value) |
| | | } |
| | | } |
| | | |
| | | class WelfareCouponsSubListVC: BaseVC { |
| | | |
| | | lazy private var tableView:UITableView = { |
| | | let table = UITableView(frame: .zero, style: .plain) |
| | | lazy private var tableView:BaseTableView = { |
| | | let table = BaseTableView(frame: .zero, style: .plain) |
| | | table.separatorStyle = .none |
| | | table.delegate = self |
| | | table.dataSource = self |
| | |
| | | return table |
| | | }() |
| | | |
| | | let viewModel = WelfareCouponViewModel() |
| | | private var rows = Set<Int>() |
| | | |
| | | |
| | | required init(type:Int?) { |
| | | super.init(nibName: nil, bundle: nil) |
| | | viewModel.type.accept(type) |
| | | } |
| | | |
| | | required init?(coder: NSCoder) { |
| | | fatalError("init(coder:) has not been implemented") |
| | | } |
| | | |
| | | override func viewDidLoad() { |
| | | super.viewDidLoad() |
| | | |
| | | viewModel.configure(tableView,needMore: false) |
| | | viewModel.beginRefresh() |
| | | } |
| | | |
| | | override func setUI() { |
| | |
| | | tableView.snp.makeConstraints { make in |
| | | make.edges.equalToSuperview() |
| | | } |
| | | tableView.jq_setEmptyView() |
| | | } |
| | | |
| | | override func setRx() { |
| | |
| | | |
| | | extension WelfareCouponsSubListVC:UITableViewDataSource{ |
| | | func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { |
| | | return 15 |
| | | return viewModel.dataSource.value.count |
| | | } |
| | | |
| | | func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { |
| | |
| | | cell.btn_info.isSelected = rows.contains(indexPath.row) |
| | | cell.label_info.isHidden = !rows.contains(indexPath.row) |
| | | cell.view_line.isHidden = !rows.contains(indexPath.row) |
| | | cell.couponModel = viewModel.dataSource.value[indexPath.row] |
| | | return cell |
| | | } |
| | | |