| | |
| | | import RxSwift |
| | | import HandyJSON |
| | | |
| | | /// 出行方式 /// 业务类型(1=快车,2=出租车,3=城际,4=小件物流-同城,5=小件物流-跨城,6=包车) |
| | | enum OrderType: Int,HandyJSONEnum{ |
| | | // 出租车 |
| | | case taxi = 2 |
| | | /// 快车 |
| | | case special = 1 |
| | | /// 跨城 |
| | | case travel = 3 |
| | | /// 同城物流 |
| | | case cityLogistics = 4 |
| | | /// 跨城物流 |
| | | case acrossLogistics = 5 |
| | | /// 包车 |
| | | case charter = 6 |
| | | |
| | | //公务用车 |
| | | case business = 8 |
| | | |
| | | func parame() -> Int { |
| | | switch self { |
| | | case .taxi: |
| | | return 2 |
| | | case .travel : |
| | | return 3 |
| | | case .cityLogistics: |
| | | return 4 |
| | | case .acrossLogistics: |
| | | return 5 |
| | | case .charter: |
| | | return 6 |
| | | case .business: |
| | | return 8 |
| | | default: |
| | | return 1 |
| | | } |
| | | } |
| | | |
| | | static func type(id: Int) -> OrderType { |
| | | switch id { |
| | | case 2: |
| | | return .taxi |
| | | case 3: |
| | | return .travel |
| | | case 4: |
| | | return .cityLogistics |
| | | case 5: |
| | | return .acrossLogistics |
| | | case 6: |
| | | return .charter |
| | | case 8: |
| | | return .business |
| | | default: |
| | | return .special |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | /// 出行 |
| | | class TravelVC: YYViewController { |
| | | |
| | |
| | | |
| | | // 选择人数 |
| | | cell.appointment.delegate(on: self) { (self, _) in |
| | | if self.viewModel.orderType.value == .special{ |
| | | if self.viewModel.orderType.value == OrderType.special{ |
| | | let num = YYMapViewManager.share.passengerNum.value |
| | | SpecialSealAffirmView.show(defaultNum: num, affirmClouse: { num in |
| | | YYMapViewManager.share.passengerNum.accept(num) |
| | |
| | | return |
| | | } |
| | | |
| | | if self.viewModel.orderType.value == .business{ |
| | | if self.viewModel.orderType.value == OrderType.offical{ |
| | | let view = TaxiReservationView() |
| | | view.show(intervalMinute:20) |
| | | view.complete.delegate(on: self) { (self, timeStamp) in |
| | |
| | | cell.passenger.delegate(on: self) { (self, _) in |
| | | |
| | | //公务车出行事由 |
| | | if self.viewModel.orderType.value == .business{ |
| | | if self.viewModel.orderType.value == .offical{ |
| | | let vc = ReasonforTravelVC() |
| | | vc.view.backgroundColor = UIColor.black.withAlphaComponent(0) |
| | | vc.view.frame = CGRect(x: 0, y: screenH, width: ScreenWidth, height: ScreenHeight) |
| | |
| | | // 添加小费 |
| | | cell.tip.delegate(on: self) { (self, _) in |
| | | //公务车计费方式 |
| | | if self.viewModel.orderType.value == .business{ |
| | | if self.viewModel.orderType.value == .offical{ |
| | | MineInfoView.instance(data: ["单程计费","包车计费"]).show { (row) in |
| | | if row == 0{ |
| | | |
| | |
| | | super.init(nibName: nil, bundle: nil) |
| | | viewModel.orderType.accept(orderType) |
| | | |
| | | if orderType == .business{ |
| | | if orderType == .offical{ |
| | | YYMapViewManager.share.state.accept(.appointment) |
| | | } |
| | | } |
| | |
| | | let vc = YYSpecialCarViewController.init(orderId: self.viewModel.orderId.value) |
| | | self.yy_push(vc: vc) |
| | | break |
| | | case .business: |
| | | case .offical: |
| | | let vc = TravelServiceVC.init(orderId: self.viewModel.orderId.value, orderType: self.viewModel.orderType.value) |
| | | self.yy_push(vc: vc) |
| | | default:break |
| | |
| | | |
| | | viewModel.number.bind(to: view_carNum.label_content.rx.text).disposed(by: disposeBag) |
| | | |
| | | view_carNum.didPressTrip.delegate(on: self) { (self, _) in |
| | | view_carNum.didPressTrip.delegate(on: self) { (_, _) in |
| | | switch self.viewModel.orderType.value{ |
| | | case .taxi: |
| | | // 订单流程界面 |
| | |
| | | |
| | | let vc = YYSpecialCarViewController.init(orderId: self.viewModel.currentOrderId.value,isCarpool: isCarpool) |
| | | self.yy_push(vc: vc) |
| | | case .business: |
| | | case .offical: |
| | | break |
| | | case .travel: |
| | | break |
| | |
| | | self.offset = 0 |
| | | } |
| | | |
| | | if viewModel.orderType.value == .business{ |
| | | if viewModel.orderType.value == .offical{ |
| | | self.cellHeight = 280 |
| | | } |
| | | |