OKProject/API/API.swift | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
OKProject/Class/Enums.swift | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
OKProject/Class/Home/Controller/HomeVC.swift | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
OKProject/Class/Home/Controller/ReasonforTravelVC.swift | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
OKProject/Class/Home/Controller/TravelVC.swift | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
OKProject/Class/Home/Model/EnterpriseModel.swift | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
OKProject/Class/Home/ViewModel/TravelViewModel.swift | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
OKProject/Class/Order/Controller/MyOrderListVC.swift | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
OKProject/API/API.swift
@@ -689,6 +689,12 @@ case companyLimitApprove(id:Int,remark:String? = nil,status:Int) case getBusinessReason case queryBusinessCar(calType:CalType,endLonLat:String,startLonLat:String,startTime:String? = nil,endTime:String? = nil) case validPermission } @@ -1004,6 +1010,12 @@ return "/api/user/getCompanyLimitDetail" case .companyLimitApprove: return "/api/user/companyLimitApprove" case .getBusinessReason: return "/api/business/getBusinessReason" case .queryBusinessCar: return "/api/business/queryBusinessCarModel" case .validPermission: return "/api/business/validPermission" } } @@ -2011,6 +2023,25 @@ .append(key: "remark", value: remark) .append(key: "status", value: status) return .requestParameters(parameters: params.done(), encoding: URLEncoding.queryString) case .getBusinessReason: let params = APIParamsAppender() return .requestParameters(parameters: params.done(), encoding: URLEncoding.queryString) case .queryBusinessCar(let calType, let endLonLat, let startLonLat, let startTime, let endTime): let params = APIParamsAppender() .append(key: "carType", value: calType.rawValue) .append(key: "endLonLat", value: endLonLat) .append(key: "startLonLat", value: startLonLat) .append(key: "startTime", value: startTime) .append(key: "endTime", value: endTime) return .requestParameters(parameters: params.done(), encoding: URLEncoding.queryString) case .validPermission: let params = APIParamsAppender() return .requestParameters(parameters: params.done(), encoding: URLEncoding.queryString) } } } OKProject/Class/Enums.swift
@@ -184,6 +184,11 @@ } } enum CalType:Int{ case Single = 1 case Charter = 2 } enum LinesType:Int,HandyJSONEnum{ case none = -1 case pending = 0 OKProject/Class/Home/Controller/HomeVC.swift
@@ -697,7 +697,7 @@ let vc = TravelVC(orderType: .special) vc.showCar = showCar return vc case "公务出行": case "公务用车": let vc = TravelVC.init(orderType: .offical) vc.showCar = showCar vc.officialCharterClouse = { [weak self] in OKProject/Class/Home/Controller/ReasonforTravelVC.swift
@@ -35,6 +35,7 @@ @IBOutlet weak var tf_passengerPhone: UITextField! @IBOutlet weak var view_addPassenger: UIView! var passengers = [PassengerInfo]() var reasonModels = [ReasonModel]() var selectIndex = 0 @@ -56,6 +57,21 @@ passengers.append(PassengerInfo(name: "杨锴", phone: "18111223301")) tableViewHeiCons.constant = 40 * Double(passengers.count) APIManager.shared.provider.rx.request(.getBusinessReason).mapThenValidate([ReasonModel].self).subscribe { result in switch result{ case .success(let m): self.reasonModels = m ?? [] let h = ceil(Double(self.reasonModels.count) / 4.0) * 30.0 + floor(Double(self.reasonModels.count) / 4.0) * 10.0 self.collectViewHeiCons.constant = h self.collectionView.reloadData() case .failure(let error): alert(text: error.localizedDescription) } } onError: { error in alert(text: error.localizedDescription) }.disposed(by: disposeBag) } override func bindRx() { @@ -139,7 +155,8 @@ extension ReasonforTravelVC:UICollectionViewDataSource{ func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell { let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "_Common_SingleText_CCell", for: indexPath) as! Common_SingleText_CCell cell.titleL.text = "测试" let model = reasonModels[indexPath.row] cell.titleL.text = model.name cell.titleL.borderWidth = 1 cell.titleL.cornerRadius = 2 cell.titleL.backgroundColor = .white @@ -155,7 +172,7 @@ } func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { return 8 return reasonModels.count } } OKProject/Class/Home/Controller/TravelVC.swift
@@ -90,6 +90,15 @@ // 选择起点 cell.origin.delegate(on: self) { (self, _) in if self.viewModel.orderType.value == .offical && self.viewModel.authStatus.value == false{ alert(popup: .single, title: "提示", text: "未通过企业认证", submitTitle: "确定", cancelTitle: "取消") { } cancelClick: { } return } if self.viewModel.orderType.value == .special{ let vc = SearchAddressDragVC() vc.orderType.accept(.special) @@ -134,6 +143,14 @@ // 选择终点 cell.destination.delegate(on: self) { (self, _) in if self.viewModel.orderType.value == .offical && self.viewModel.authStatus.value == false{ alert(popup: .single, title: "提示", text: "未通过企业认证", submitTitle: "确定", cancelTitle: "取消") { } cancelClick: { } return } if self.viewModel.orderType.value == .special{ let vc = SearchAddressDragVC() @@ -160,6 +177,14 @@ // 选择人数 cell.appointment.delegate(on: self) { (self, _) in if self.viewModel.orderType.value == .offical && self.viewModel.authStatus.value == false{ alert(popup: .single, title: "提示", text: "未通过企业认证", submitTitle: "确定", cancelTitle: "取消") { } cancelClick: { } return } if self.viewModel.orderType.value == OrderType.special{ let num = YYMapViewManager.share.passengerNum.value SpecialSealAffirmView.show(defaultNum: num, affirmClouse: { num in @@ -180,6 +205,15 @@ } if self.viewModel.orderType.value == OrderType.offical{ if self.viewModel.authStatus.value == false{ alert(popup: .single, title: "提示", text: "未通过企业认证", submitTitle: "确定", cancelTitle: "取消") { } cancelClick: { } return } let view = TaxiReservationView() view.show(intervalMinute:20) view.complete.delegate(on: self) { (self, timeStamp) in @@ -199,6 +233,15 @@ //公务车出行事由 if self.viewModel.orderType.value == .offical{ if self.viewModel.authStatus.value == false{ alert(popup: .single, title: "提示", text: "未通过企业认证", submitTitle: "确定", cancelTitle: "取消") { } cancelClick: { } return } let vc = ReasonforTravelVC() vc.view.backgroundColor = UIColor.black.withAlphaComponent(0) vc.view.frame = CGRect(x: 0, y: screenH, width: ScreenWidth, height: ScreenHeight) @@ -234,6 +277,16 @@ cell.tip.delegate(on: self) { (self, _) in //公务车计费方式 if self.viewModel.orderType.value == .offical{ if self.viewModel.orderType.value == .offical && self.viewModel.authStatus.value == false{ alert(popup: .single, title: "提示", text: "未通过企业认证", submitTitle: "确定", cancelTitle: "取消") { } cancelClick: { } return } MineInfoView.instance(data: ["单程计费","包车计费"]).show { (row) in if row == 0{ @@ -256,6 +309,16 @@ cell.contact.delegate(on: self) { (self, _) in if self.viewModel.orderType.value == .special{ if self.viewModel.orderType.value == .offical && self.viewModel.authStatus.value == false{ alert(popup: .single, title: "提示", text: "未通过企业认证", submitTitle: "确定", cancelTitle: "取消") { } cancelClick: { } return } //乘车人信息 let vc = PassengerVC() vc.orderType.accept(self.viewModel.orderType.value) @@ -379,6 +442,19 @@ advertViewModel.getAdvertising() cell_address.queryServerCarModel() if viewModel.orderType.value == .offical{ APIManager.shared.provider.rx.request(.validPermission).mapThenValidate(AuthStatusModel.self).subscribe { restult in switch restult{ case .success(let m): self.viewModel.authStatus.accept(m?.permission ?? false) case .failure(let error): alert(text: error.localizedDescription) } } onError: { error in alert(text: error.localizedDescription) }.disposed(by: disposeBag) } } //MARK: - viewWillAppear OKProject/Class/Home/Model/EnterpriseModel.swift
@@ -45,3 +45,14 @@ var staffName = "" var status:LinesType = .none } struct ReasonModel:HandyJSON{ var companyId = "" var createTime = "" var id = 0 var name = "" } struct AuthStatusModel:HandyJSON{ var permission = false } OKProject/Class/Home/ViewModel/TravelViewModel.swift
@@ -53,6 +53,8 @@ /// 订单Id let orderId = BehaviorRelay<Int>(value: 0) let authStatus = BehaviorRelay<Bool>(value: false) /// 获取正在进行中的订单 func queryServingOrder() { APIManager.shared.provider.rx OKProject/Class/Order/Controller/MyOrderListVC.swift
@@ -108,7 +108,7 @@ vc = TaxiOrderListVC.init(orderType: .scenic) } return vc! case "公务出行": case "公务用车": var vc:LogisticsListVC? if vc == nil { vc = LogisticsListVC.init(orderType: .offical)