//
|
// TravelCardListVC.swift
|
// OKProject
|
//
|
// Created by 无故事王国 on 2022/2/10.
|
// Copyright © 2022 yangwang. All rights reserved.
|
//
|
|
import UIKit
|
|
class TravelCardListVC: YYTableViewController {
|
|
/// viewModel
|
let viewModel = TravelMyCardViewModel()
|
|
init(orderType: OrderType) {
|
viewModel.type.accept(orderType)
|
super.init(nibName: nil, bundle: nil)
|
}
|
|
required init?(coder: NSCoder) {
|
fatalError("init(coder:) has not been implemented")
|
}
|
|
override func viewDidLoad() {
|
super.viewDidLoad()
|
viewModel.configure(tableView: tableView)
|
}
|
|
override func viewWillAppear(_ animated: Bool) {
|
super.viewWillAppear(animated)
|
tableView.mj_header?.beginRefreshing()
|
}
|
|
//MARK: - UI
|
override func setupViews() {
|
super.setupViews()
|
tableView.separatorStyle = .none
|
tableView.delegate = self
|
tableView.dataSource = self
|
tableView.backgroundColor = UIColor(hexString: "#F3F4F5")
|
tableView.register(cellName: "TravelCardTCell", identifier: "_TravelCardTCell")
|
}
|
|
//MARK: - Rx
|
override func bindRx() {
|
super.bindRx()
|
}
|
|
//MARK: - Layouts
|
override func defineLayouts() {
|
super.defineLayouts()
|
tableView.snp.makeConstraints { (make) in
|
if #available(iOS 11.0, *) {
|
make.edges.equalTo(view.safeAreaLayoutGuide)
|
} else {
|
make.edges.equalToSuperview()
|
}
|
}
|
}
|
}
|
|
|
// MARK: - UITableViewDelegate
|
extension TravelCardListVC:UITableViewDelegate{
|
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
|
return UITableView.automaticDimension
|
}
|
|
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
|
let m = viewModel.dataSource.value[indexPath.row]
|
let vc = TravelCardDetailVC()
|
vc.id = m.id
|
vc.type = viewModel.type.value
|
yy_push(vc: vc)
|
}
|
}
|
|
// MARK: - UITableViewDelegate
|
extension TravelCardListVC:UITableViewDataSource{
|
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
|
return viewModel.dataSource.value.count
|
}
|
|
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
|
let m = viewModel.dataSource.value[indexPath.row]
|
let cell = tableView.dequeueReusableCell(withIdentifier: "_TravelCardTCell", for: indexPath) as! TravelCardTCell
|
cell.selectionStyle = .none
|
cell.contentView.backgroundColor = UIColor(hexString: "#F3F4F5")
|
cell.couponListModel = m
|
switch viewModel.type.value {
|
case .special:cell.titleL.text = "快车/专车"
|
case .taxi:cell.titleL.text = "出租车"
|
case .travel:cell.titleL.text = "跨城出行"
|
case .cityLogistics:
|
cell.titleL.text = "同城物流"
|
if m.businessTypes.contains([4,5]){cell.titleL.text = "同城/跨城物流"}
|
case .acrossLogistics:
|
cell.titleL.text = "跨城物流"
|
if m.businessTypes.contains([4,5]){cell.titleL.text = "同城/跨城物流"}
|
default:break
|
}
|
return cell
|
}
|
|
}
|