diff --git a/.DS_Store b/.DS_Store index 7919513..cf1263d 100644 Binary files a/.DS_Store and b/.DS_Store differ diff --git a/OrderScheduling.xcworkspace/xcuserdata/zd.xcuserdatad/UserInterfaceState.xcuserstate b/OrderScheduling.xcworkspace/xcuserdata/zd.xcuserdatad/UserInterfaceState.xcuserstate index ddf6333..ee8c6e6 100644 Binary files a/OrderScheduling.xcworkspace/xcuserdata/zd.xcuserdatad/UserInterfaceState.xcuserstate and b/OrderScheduling.xcworkspace/xcuserdata/zd.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/OrderScheduling.xcworkspace/xcuserdata/zd.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/OrderScheduling.xcworkspace/xcuserdata/zd.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist index 9c0463d..6ee2a84 100644 --- a/OrderScheduling.xcworkspace/xcuserdata/zd.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +++ b/OrderScheduling.xcworkspace/xcuserdata/zd.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist @@ -1269,8 +1269,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringListController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "150" - endingLineNumber = "150" + startingLineNumber = "171" + endingLineNumber = "171" landmarkName = "viewDidLoad()" landmarkType = "7"> @@ -1285,8 +1285,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringListController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "151" - endingLineNumber = "151" + startingLineNumber = "172" + endingLineNumber = "172" landmarkName = "viewDidLoad()" landmarkType = "7"> @@ -1301,8 +1301,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringListController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "138" - endingLineNumber = "138" + startingLineNumber = "159" + endingLineNumber = "159" landmarkName = "viewDidLoad()" landmarkType = "7"> @@ -1413,8 +1413,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringListController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "119" - endingLineNumber = "119" + startingLineNumber = "140" + endingLineNumber = "140" landmarkName = "init(models:isPaiban:isAlarm:)" landmarkType = "7"> @@ -1429,8 +1429,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringListController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "111" - endingLineNumber = "111" + startingLineNumber = "131" + endingLineNumber = "131" landmarkName = "VehicleMonitoringListController" landmarkType = "3"> @@ -1537,8 +1537,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringListController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "110" - endingLineNumber = "110" + startingLineNumber = "130" + endingLineNumber = "130" landmarkName = "VehicleMonitoringListController" landmarkType = "3"> @@ -2013,8 +2013,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringListController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "135" - endingLineNumber = "135" + startingLineNumber = "156" + endingLineNumber = "156" landmarkName = "viewDidLoad()" landmarkType = "7"> @@ -2029,8 +2029,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "726" - endingLineNumber = "726" + startingLineNumber = "761" + endingLineNumber = "761" landmarkName = "viewDidLoad()" landmarkType = "7"> @@ -2348,8 +2348,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "226" - endingLineNumber = "226" + startingLineNumber = "236" + endingLineNumber = "236" landmarkName = "addAction()" landmarkType = "7"> @@ -2460,8 +2460,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "262" - endingLineNumber = "262" + startingLineNumber = "272" + endingLineNumber = "272" landmarkName = "dd_mapView(_:viewFor:)" landmarkType = "7"> @@ -2508,8 +2508,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "238" - endingLineNumber = "238" + startingLineNumber = "248" + endingLineNumber = "248" landmarkName = "dd_mapView(_:viewFor:)" landmarkType = "7"> @@ -2556,8 +2556,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "442" - endingLineNumber = "442" + startingLineNumber = "460" + endingLineNumber = "460" landmarkName = "reloadData(index:)" landmarkType = "7"> @@ -2572,8 +2572,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "440" - endingLineNumber = "440" + startingLineNumber = "457" + endingLineNumber = "457" landmarkName = "reloadData(index:)" landmarkType = "7"> @@ -2588,8 +2588,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "443" - endingLineNumber = "443" + startingLineNumber = "461" + endingLineNumber = "461" landmarkName = "reloadData(index:)" landmarkType = "7"> @@ -3771,8 +3771,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "278" - endingLineNumber = "278" + startingLineNumber = "288" + endingLineNumber = "288" landmarkName = "dd_mapView(_:didAnnotationViewTapped:)" landmarkType = "7"> @@ -4839,8 +4839,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "769" - endingLineNumber = "769" + startingLineNumber = "807" + endingLineNumber = "807" landmarkName = "addSubviews()" landmarkType = "7"> @@ -4855,8 +4855,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "327" - endingLineNumber = "327" + startingLineNumber = "341" + endingLineNumber = "341" landmarkName = "listContainerView(_:initListFor:)" landmarkType = "7"> @@ -4871,8 +4871,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "504" - endingLineNumber = "504" + startingLineNumber = "522" + endingLineNumber = "522" landmarkName = "selectVehicle(selectState:vehicleModel:currentTableViewVehicleModels:selectIndex:mapView:)" landmarkType = "7"> @@ -4887,8 +4887,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "372" - endingLineNumber = "372" + startingLineNumber = "392" + endingLineNumber = "392" landmarkName = "listContainerView(_:initListFor:)" landmarkType = "7"> @@ -4903,8 +4903,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "355" - endingLineNumber = "355" + startingLineNumber = "369" + endingLineNumber = "369" landmarkName = "listContainerView(_:initListFor:)" landmarkType = "7"> @@ -4951,8 +4951,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "378" - endingLineNumber = "378" + startingLineNumber = "398" + endingLineNumber = "398" landmarkName = "categoryView(_:didSelectedItemAt:)" landmarkType = "7"> @@ -4999,8 +4999,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "389" - endingLineNumber = "389" + startingLineNumber = "406" + endingLineNumber = "406" landmarkName = "categoryView(_:didSelectedItemAt:)" landmarkType = "7"> @@ -5015,8 +5015,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "834" - endingLineNumber = "834" + startingLineNumber = "872" + endingLineNumber = "872" landmarkName = "viewSafeAreaInsetsDidChange()" landmarkType = "7"> @@ -5095,8 +5095,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "1239" - endingLineNumber = "1239" + startingLineNumber = "1277" + endingLineNumber = "1277" landmarkName = "init(taskModels:)" landmarkType = "7"> @@ -5143,8 +5143,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "1251" - endingLineNumber = "1251" + startingLineNumber = "1289" + endingLineNumber = "1289" landmarkName = "init(taskModels:)" landmarkType = "7"> @@ -5191,8 +5191,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "1253" - endingLineNumber = "1253" + startingLineNumber = "1291" + endingLineNumber = "1291" landmarkName = "init(taskModels:)" landmarkType = "7"> @@ -5286,8 +5286,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "1080" - endingLineNumber = "1080" + startingLineNumber = "1118" + endingLineNumber = "1118" landmarkName = "listContainerView(_:initListFor:)" landmarkType = "7"> @@ -5302,8 +5302,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "1381" - endingLineNumber = "1381" + startingLineNumber = "1421" + endingLineNumber = "1421" landmarkName = "updateData(taskModel:)" landmarkType = "7"> @@ -5334,8 +5334,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "1242" - endingLineNumber = "1242" + startingLineNumber = "1280" + endingLineNumber = "1280" landmarkName = "init(taskModels:)" landmarkType = "7"> @@ -5350,8 +5350,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "1255" - endingLineNumber = "1255" + startingLineNumber = "1293" + endingLineNumber = "1293" landmarkName = "init(taskModels:)" landmarkType = "7"> @@ -5366,8 +5366,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "1085" - endingLineNumber = "1085" + startingLineNumber = "1123" + endingLineNumber = "1123" landmarkName = "categoryView(_:didSelectedItemAt:)" landmarkType = "7"> @@ -5382,8 +5382,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "1254" - endingLineNumber = "1254" + startingLineNumber = "1292" + endingLineNumber = "1292" landmarkName = "init(taskModels:)" landmarkType = "7"> @@ -5398,8 +5398,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "379" - endingLineNumber = "379" + startingLineNumber = "399" + endingLineNumber = "399" landmarkName = "categoryView(_:didSelectedItemAt:)" landmarkType = "7"> @@ -5414,8 +5414,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "615" - endingLineNumber = "615" + startingLineNumber = "633" + endingLineNumber = "633" landmarkName = "showListDetail(vehicleModel:)" landmarkType = "7"> @@ -5430,8 +5430,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "148" - endingLineNumber = "148" + startingLineNumber = "151" + endingLineNumber = "151" landmarkName = "addAction()" landmarkType = "7"> @@ -5446,8 +5446,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "193" - endingLineNumber = "193" + startingLineNumber = "203" + endingLineNumber = "203" landmarkName = "addAction()" landmarkType = "7"> @@ -5462,8 +5462,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "814" - endingLineNumber = "814" + startingLineNumber = "852" + endingLineNumber = "852" landmarkName = "viewSafeAreaInsetsDidChange()" landmarkType = "7"> @@ -5478,8 +5478,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "820" - endingLineNumber = "820" + startingLineNumber = "858" + endingLineNumber = "858" landmarkName = "viewSafeAreaInsetsDidChange()" landmarkType = "7"> @@ -5494,8 +5494,8 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "826" - endingLineNumber = "826" + startingLineNumber = "864" + endingLineNumber = "864" landmarkName = "viewSafeAreaInsetsDidChange()" landmarkType = "7"> @@ -5574,60 +5574,12 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "1387" - endingLineNumber = "1387" + startingLineNumber = "1427" + endingLineNumber = "1427" landmarkName = "listView()" landmarkType = "7"> - - - - - - - - - - @@ -5654,8 +5606,24 @@ filePath = "OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "357" - endingLineNumber = "357" + startingLineNumber = "371" + endingLineNumber = "371" + landmarkName = "listContainerView(_:initListFor:)" + landmarkType = "7"> + + + + diff --git a/OrderScheduling/HttpResponseModel/ResponseModel.swift b/OrderScheduling/HttpResponseModel/ResponseModel.swift index eac2646..4c06cba 100644 --- a/OrderScheduling/HttpResponseModel/ResponseModel.swift +++ b/OrderScheduling/HttpResponseModel/ResponseModel.swift @@ -198,7 +198,7 @@ public class VehicleMonitorListDataModel : Decodable { var taskStatusString : String? var workingCount : Int? = 0 var shouldShowWorkingCount : Bool { - if let workingCount, workingCount > 0 { + if let workingCount, workingCount > 1 { return true } return false diff --git a/OrderScheduling/VehicleMonitoring/View/VehicleMonitoringConfigView.swift b/OrderScheduling/VehicleMonitoring/View/VehicleMonitoringConfigView.swift index 650811f..9bae168 100644 --- a/OrderScheduling/VehicleMonitoring/View/VehicleMonitoringConfigView.swift +++ b/OrderScheduling/VehicleMonitoring/View/VehicleMonitoringConfigView.swift @@ -59,18 +59,48 @@ open class VehicleMonitoringConfigView : DDView { vehicleLogoutItem.snp.makeConstraints { make in make.left.top.right.equalToSuperview() - make.height.equalToSuperview().multipliedBy(0.5) + make.height.equalTo(auto(60)) } vehicleVideoItem.snp.makeConstraints { make in make.left.right.bottom.equalToSuperview() - make.height.equalToSuperview().multipliedBy(0.5) + make.height.equalTo(auto(60)) } } public required init?(coder: NSCoder) { fatalError("init(coder:) has not been implemented") } + + func showMonitoring(_ isShow: Bool) { + if isShow == true { + optionsRadiusView.snp.updateConstraints { make in + make.height.equalTo(auto(120)) + } + + vehicleLogoutItem.snp.updateConstraints { make in + make.height.equalTo(auto(60)) + } + + vehicleVideoItem.isHidden = false + vehicleVideoItem.snp.updateConstraints { make in + make.height.equalTo(auto(60)) + } + }else{ + optionsRadiusView.snp.updateConstraints { make in + make.height.equalTo(auto(60)) + } + + vehicleLogoutItem.snp.updateConstraints { make in + make.height.equalTo(auto(60)) + } + + vehicleVideoItem.isHidden = true + vehicleVideoItem.snp.updateConstraints { make in + make.height.equalTo(0) + } + } + } } open class VMCItemView : DDView { diff --git a/OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift b/OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift index 8c829e2..1d89740 100644 --- a/OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift +++ b/OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringController.swift @@ -97,6 +97,9 @@ extension VehicleMonitoringController { self?.vehicleMonitoringView.vehicleMonitoringPannelView.categoryView.counts = [] self?.vehicleMonitoringView.vehicleMonitoringPannelView.categoryView.reloadData() } + + /// 重置地图锚点 + self?.modifyMapAnchor() }) .disposed(by: disposeBag) @@ -188,6 +191,13 @@ extension VehicleMonitoringController { .observe(on: MainScheduler.instance) .subscribe(onNext: {[weak self] _ in if let view = self?.vehicleConfigView { + var isShowMonitoring = false + if USER.supplierType == 1 && self?.selectedModel?.terminalType == .GPS { + isShowMonitoring = true + }else{ + isShowMonitoring = false + } + view.showMonitoring(isShowMonitoring) ENTRY.showVehicleMonitoringConfigEntry(view: view, name: vehicleMonitoringConfigEntry) } }) @@ -279,11 +289,15 @@ extension VehicleMonitoringController : DDMAMapViewDelegate { if let tapPointAnnotation = view.annotation as? MAPointAnnotation, let mapModel = self.mapModel { let model = mapModel[tapPointAnnotation.tag] - if model.isSelected == true { - selectVehicle(selectState: false,vehicleModel: model, currentTableViewVehicleModels: mapModel, selectIndex: tapPointAnnotation.tag, mapView: mapView) - hideListDetail() + selectVehicle(selectState: true,vehicleModel: model, currentTableViewVehicleModels: mapModel, selectIndex: tapPointAnnotation.tag, mapView: mapView) + + if model.vehicleId == selectedModel?.vehicleId { + if isListDetailShowed == false { + showListDetail(vehicleModel: model) + }else{ + hideListDetail() + } }else{ - selectVehicle(selectState: true,vehicleModel: model, currentTableViewVehicleModels: mapModel, selectIndex: tapPointAnnotation.tag, mapView: mapView) showListDetail(vehicleModel: model) } } @@ -355,20 +369,26 @@ extension VehicleMonitoringController : JXCategoryListContainerViewDelegate { vc?.selectCellBlock = {[weak self] (model,item) in if let models = vc?.models,let mapView = self?.vehicleMonitoringView.maMapView.maMapView { self?.selectVehicle(selectState: true,vehicleModel: model, currentTableViewVehicleModels: models, selectIndex: item, mapView: mapView) + + self?.showMapCenter(with: model) } -// /// 将镜头设置为选中的item -// if let lat = model.lat,let lon = model.lon { -// self?.vehicleMonitoringView.maMapView.maMapView.setCenter(CLLocationCoordinate2D(latitude: Double(lat) ?? 0, longitude: Double(lon) ?? 0), animated: true) -// } -// } vc?.showDetailBlock = {[weak self] (model,item) in if let models = vc?.models,let mapView = self?.vehicleMonitoringView.maMapView.maMapView { self?.selectVehicle(selectState: true,vehicleModel: model, currentTableViewVehicleModels: models, selectIndex: item, mapView: mapView) + + self?.showListDetail(vehicleModel: model) + + self?.showMapCenter(with: model) } - - self?.showListDetail(vehicleModel: model) } + + vc?.showMaxBlock = {[weak self] in + if self?.pannelPanGes.panGesValue.expandLevel != .max { + self?.pannelPanGes.expand(.max) + } + } + return vc } } @@ -383,9 +403,6 @@ extension VehicleMonitoringController : JXCategoryViewDelegate { let vc = containerView.validListDict[key] self?.currentTableView = (vc as? VehicleMonitoringListController)?.vehicleMonitoringListView.tableView } - if self?.pannelPanGes.panGesValue.expandLevel == .min { - self?.pannelPanGes.expand(.min) - } } } @@ -438,6 +455,7 @@ extension VehicleMonitoringController : JXCategoryViewDelegate { if let annotations = vehicleMonitoringView.maMapView.maMapView.annotations, annotations.isEmpty == false { vehicleMonitoringView.maMapView.maMapView.showAnnotations(annotations, animated: true) + modifyMapAnchor() }else{ vehicleMonitoringView.maMapView.maMapView.setCenter(vehicleMonitoringView.maMapView.maMapView.userLocation.coordinate, animated: true) vehicleMonitoringView.maMapView.maMapView.zoomLevel = 18 @@ -634,15 +652,12 @@ extension VehicleMonitoringController { vehicleMonitoringListDetailView.updateData(taskModels: vehicleModel.taskList ?? []) - /// 收回pannelView - if isListDetailViewShowed == false { - previousStateOfPannelView = pannelPanGes.panGesValue.expandLevel - } - if previousStateOfPannelView == .min { - }else{ + /// 当为max时收回pannelView + if pannelPanGes.panGesValue.expandLevel == .max { + previousStateOfPannelView = .max pannelPanGes.expand(.default) } - + /// 改变约束 vehicleMonitoringListDetailView.snp.updateConstraints({ make in make.left.equalTo(vehicleMonitoringView.snp.right).offset(-vehicleMonitoringView.width) @@ -651,7 +666,7 @@ extension VehicleMonitoringController { self?.view.layoutIfNeeded() } - isListDetailViewShowed = true + isListDetailShowed = true } func hideListDetail() { @@ -662,15 +677,35 @@ extension VehicleMonitoringController { self?.view.layoutIfNeeded() } - if previousStateOfPannelView == .min { - pannelPanGes.expand(.min) - }else if previousStateOfPannelView == .default{ - pannelPanGes.expand(.default) - }else if previousStateOfPannelView == .max { + if previousStateOfPannelView == .max { pannelPanGes.expand(.max) + previousStateOfPannelView = .min } - isListDetailViewShowed = false + isListDetailShowed = false + } + + func showMapCenter(with vehicleModel: VehicleMonitorListDataModel.ItemModel) { + /// 将镜头设置为选中的item,需要修改锚点 + if let lat = vehicleModel.lat,let lon = vehicleModel.lon { + vehicleMonitoringView.maMapView.maMapView.setCenter(CLLocationCoordinate2D(latitude: Double(lat) ?? 0, longitude: Double(lon) ?? 0), animated: true) + + modifyMapAnchor() + } + } + + func modifyMapAnchor() { + let mapHeight = vehicleMonitoringView.maMapView.height + var deltaH = 0.0 + if pannelPanGes.panGesValue.expandLevel == .max { + deltaH = mapHeight - pannelPanGes.panGesValue.maxDisplayHeight + }else if pannelPanGes.panGesValue.expandLevel == .default { + deltaH = mapHeight - pannelPanGes.panGesValue.defaultDisplayHeight + }else{ + deltaH = mapHeight - pannelPanGes.panGesValue.minDisplayHeight + } + let scale = (deltaH/2) / (mapHeight/2) + vehicleMonitoringView.maMapView.maMapView.screenAnchor = CGPoint(x: 0.5, y: 0.5 * scale) } func resetSelectedOfData() { @@ -702,8 +737,8 @@ open class VehicleMonitoringController : ZDViewController { private var selectedTableView : DDTableView? /// 用于选中 private var selectedModel : VehicleMonitorListDataModel.ItemModel? /// 用于选中 - private var previousStateOfPannelView : DDUIPanGestureRecognizer.ExpandLevel = .min /// 用于记录显示详情前,pannelview的弹出状态,返回时保持这个状态 - private var isListDetailViewShowed : Bool = false /// 当选中一个model后,直接在地图中继续选择另外的model,从详情返回就无法记录最初的pannel高度了,所以选中后就不需要记录expandlevel + private var previousStateOfPannelView : DDUIPanGestureRecognizer.ExpandLevel = .min /// 用于记录显示详情前,pannelview的弹出状态为max时,返回时保持这个状态 + private var isListDetailShowed : Bool = false /// 用于判断同一个详情是否被重复点击 private var shouldShowSmallAnnotation : Bool? = false /// 用于标记是否需要显示最小的annotation private var isShowSmallAnnotation : Bool? = false /// 用于标记是否已经显示最小的annotation @@ -750,6 +785,9 @@ open class VehicleMonitoringController : ZDViewController { vehicleMonitoringView.vehicleMonitoringPannelView.categoryView.delegate = self vehicleMonitoringView.vehicleMonitoringPannelView.categoryView.listContainer = categoryContainerView pannelPanGes.panGesValue.from = .bottom + pannelPanGes.expandLevelChangedHandler = {[weak self] old, new in + self?.modifyMapAnchor() + } vehicleMonitoringView.vehicleMonitoringPannelView.addGestureRecognizer(pannelPanGes) messageView.titleLabel.text = "消息" @@ -1150,7 +1188,7 @@ class VehicleMonitoringListDetailView : DDView, JXCategoryListContainerViewDeleg categoryContainerView?.addSubview(pageNumImageView) pageNumLabel.textAlignment = .center - categoryContainerView?.addSubview(pageNumLabel) + pageNumImageView.addSubview(pageNumLabel) categoryContainerView?.addSubview(previousButton) categoryContainerView?.addSubview(nextButton) @@ -1314,9 +1352,11 @@ class VMLDContainerView : DDView , JXCategoryListContentViewDelegate { addSubview(line) addSubview(incidentTitleLabel) incidentLabel.numberOfLines = 0 + incidentLabel.textAlignment = .right addSubview(incidentLabel) addSubview(destTitleLabel) destLabel.numberOfLines = 0 + destLabel.textAlignment = .right addSubview(destLabel) orderNumLabel.snp.makeConstraints { make in diff --git a/OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringListController.swift b/OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringListController.swift index e2bbd06..ab5caf3 100644 --- a/OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringListController.swift +++ b/OrderScheduling/VehicleMonitoring/ViewController/VehicleMonitoringListController.swift @@ -46,11 +46,9 @@ extension VehicleMonitoringListController : UITableViewDelegate,UITableViewDataS cell?.nameLabel.text = model.driverName cell?.vehicleLabel.text = model.vehicleName cell?.stateLabel.text = model.vehicleTypeStr - if let workingCount = model.workingCount,workingCount > 0 { - cell?.workingCountLabel.isHidden = false + cell?.workingCountLabel.isHidden = !model.shouldShowWorkingCount + if let workingCount = model.workingCount { cell?.workingCountLabel.text = String(workingCount) - }else{ - cell?.workingCountLabel.isHidden = true } switch model.vehicleStatus?.code { @@ -104,6 +102,28 @@ extension VehicleMonitoringListController : UITableViewDelegate,UITableViewDataS selectCellBlock!(model,indexPath.item) } } + + public func scrollViewDidScroll(_ scrollView: UIScrollView) { + let maxContentH = vehicleMonitoringListView.tableView.rect(forSection: 0).height + let tableViewH = vehicleMonitoringListView.tableView.height + + let maxOffSet = 100.0 + if tableViewH >= maxContentH { + if scrollView.contentOffset.y > maxOffSet { + if let showMaxBlock = showMaxBlock { + showMaxBlock() + } + } + }else{ + let deltaH = maxContentH - tableViewH + maxOffSet + if scrollView.contentOffset.y > deltaH { + if let showMaxBlock = showMaxBlock { + showMaxBlock() + } + } + } + + } } open class VehicleMonitoringListController : ZDViewController { @@ -114,6 +134,7 @@ open class VehicleMonitoringListController : ZDViewController { private var isPaiban : Bool? private var isAlarm : Bool? private var emptyView = EmptyView() + public var showMaxBlock: (() -> Void)? public init(models:[VehicleMonitorListDataModel.ItemModel]?,isPaiban:Bool? = false,isAlarm:Bool? = false) { self.isPaiban = isPaiban diff --git a/Podfile b/Podfile index bd1c5e3..1050348 100644 --- a/Podfile +++ b/Podfile @@ -39,7 +39,7 @@ target 'OrderScheduling' do pod 'Bugly' pod 'SwiftyRSA' pod 'DDPersistenceKit_Private' - pod 'DDUIGestureRecognizer', '0.1.5' + pod 'DDUIGestureRecognizer', '0.1.6' post_install do |installer| installer.pods_project.targets.each do |target| diff --git a/Podfile.lock b/Podfile.lock index d676b88..a1a6835 100644 --- a/Podfile.lock +++ b/Podfile.lock @@ -283,9 +283,9 @@ PODS: - DDTimerSwiftKit_Private (0.2.1): - DDLogKit_Private/SwiftLog - DDToastKit_Private (0.1.2) - - DDUIGestureRecognizer (0.1.5): - - DDUIGestureRecognizer/DDUIPanGestureRecognizer (= 0.1.5) - - DDUIGestureRecognizer/DDUIPanGestureRecognizer (0.1.5) + - DDUIGestureRecognizer (0.1.6): + - DDUIGestureRecognizer/DDUIPanGestureRecognizer (= 0.1.6) + - DDUIGestureRecognizer/DDUIPanGestureRecognizer (0.1.6) - DDUtilsSwiftKit_Private (0.1.1): - DDUtilsSwiftKit_Private/ApplicationInfo (= 0.1.1) - DDUtilsSwiftKit_Private/DeviceInfo (= 0.1.1) @@ -352,7 +352,7 @@ DEPENDENCIES: - DDProgressHUDKit_Private - DDTimerSwiftKit_Private - DDToastKit_Private - - DDUIGestureRecognizer (= 0.1.5) + - DDUIGestureRecognizer (= 0.1.6) - DDUtilsSwiftKit_Private - DDWebImageKit_Private - DDZFPlayerKit_Private/ControlView @@ -441,7 +441,7 @@ SPEC CHECKSUMS: DDProgressHUDKit_Private: 1e219062ddeb7801a4bb13b367efa1f3fbf17f1e DDTimerSwiftKit_Private: cce3fe58b1b581fe4cddb3fb84fcde31b4e83541 DDToastKit_Private: b6ae3709d110cadca503a037419f3709d1755256 - DDUIGestureRecognizer: e7b1b6d4d73e2fc2c48dcfb38655881814d094ff + DDUIGestureRecognizer: b7503ff61b471a7e394397a415a297b234929f71 DDUtilsSwiftKit_Private: 03575cb3204cd43f3521049263f4b6cae3e64700 DDWebImageKit_Private: b905111547e44626773b729bae9030403a9a0c76 DDZFPlayerKit_Private: 5f63a8101e35ffd7b2568f551cbf33b8bedc48ba @@ -461,6 +461,6 @@ SPEC CHECKSUMS: SwiftyRSA: 8c6dd1ea7db1b8dc4fb517a202f88bb1354bc2c6 ZLPhotoBrowser: 0563c2bfc7b247b65d023d646012f46cba94101b -PODFILE CHECKSUM: 42053b92ac9e24ed76797463ba14cc31e3771ffc +PODFILE CHECKSUM: 2e0cc301f049eb136c4bc3fa33f6047cd0e03e64 COCOAPODS: 1.11.3 diff --git a/Pods/DDUIGestureRecognizer/DDUIGestureRecognizer/Classes/DDUIPanGestureRecognizer/DDUIPanGestureRecognizer.swift b/Pods/DDUIGestureRecognizer/DDUIGestureRecognizer/Classes/DDUIPanGestureRecognizer/DDUIPanGestureRecognizer.swift index 169c2b5..4b19dcb 100644 --- a/Pods/DDUIGestureRecognizer/DDUIGestureRecognizer/Classes/DDUIPanGestureRecognizer/DDUIPanGestureRecognizer.swift +++ b/Pods/DDUIGestureRecognizer/DDUIGestureRecognizer/Classes/DDUIPanGestureRecognizer/DDUIPanGestureRecognizer.swift @@ -35,6 +35,8 @@ open class DDUIPanGestureRecognizer : UIPanGestureRecognizer { public var panGesValue = PanGesValue.init() + public var expandLevelChangedHandler : ((_ oldExpandLevel: ExpandLevel, _ newExpandLevel: ExpandLevel) -> Void)? + /// 会执行默认方法 /// - Parameter target: target public init() { @@ -137,6 +139,9 @@ open class DDUIPanGestureRecognizer : UIPanGestureRecognizer { /// 记录当前的currentY panGesValue.currentY = currentY + /// 上一次expandLevel + let oldExpandLevel = panGesValue.expandLevel + /// 记录当前的expandLevel if panGesValue.currentY == minY { panGesValue.expandLevel = .max @@ -146,6 +151,16 @@ open class DDUIPanGestureRecognizer : UIPanGestureRecognizer { panGesValue.expandLevel = .default } + /// 新的expandLevel + let newExpandLevel = panGesValue.expandLevel + + /// expandLevel改变时回调 + if oldExpandLevel != newExpandLevel { + if let expandLevelChangedHandler = expandLevelChangedHandler { + expandLevelChangedHandler(oldExpandLevel,newExpandLevel) + } + } + UIView.animate(withDuration: duration, animations: {[weak self] in self?.view?.frame = CGRectMake(viewFrame.origin.x, currentY, viewFrame.size.width, viewFrame.size.height) }) diff --git a/Pods/Manifest.lock b/Pods/Manifest.lock index d676b88..a1a6835 100644 --- a/Pods/Manifest.lock +++ b/Pods/Manifest.lock @@ -283,9 +283,9 @@ PODS: - DDTimerSwiftKit_Private (0.2.1): - DDLogKit_Private/SwiftLog - DDToastKit_Private (0.1.2) - - DDUIGestureRecognizer (0.1.5): - - DDUIGestureRecognizer/DDUIPanGestureRecognizer (= 0.1.5) - - DDUIGestureRecognizer/DDUIPanGestureRecognizer (0.1.5) + - DDUIGestureRecognizer (0.1.6): + - DDUIGestureRecognizer/DDUIPanGestureRecognizer (= 0.1.6) + - DDUIGestureRecognizer/DDUIPanGestureRecognizer (0.1.6) - DDUtilsSwiftKit_Private (0.1.1): - DDUtilsSwiftKit_Private/ApplicationInfo (= 0.1.1) - DDUtilsSwiftKit_Private/DeviceInfo (= 0.1.1) @@ -352,7 +352,7 @@ DEPENDENCIES: - DDProgressHUDKit_Private - DDTimerSwiftKit_Private - DDToastKit_Private - - DDUIGestureRecognizer (= 0.1.5) + - DDUIGestureRecognizer (= 0.1.6) - DDUtilsSwiftKit_Private - DDWebImageKit_Private - DDZFPlayerKit_Private/ControlView @@ -441,7 +441,7 @@ SPEC CHECKSUMS: DDProgressHUDKit_Private: 1e219062ddeb7801a4bb13b367efa1f3fbf17f1e DDTimerSwiftKit_Private: cce3fe58b1b581fe4cddb3fb84fcde31b4e83541 DDToastKit_Private: b6ae3709d110cadca503a037419f3709d1755256 - DDUIGestureRecognizer: e7b1b6d4d73e2fc2c48dcfb38655881814d094ff + DDUIGestureRecognizer: b7503ff61b471a7e394397a415a297b234929f71 DDUtilsSwiftKit_Private: 03575cb3204cd43f3521049263f4b6cae3e64700 DDWebImageKit_Private: b905111547e44626773b729bae9030403a9a0c76 DDZFPlayerKit_Private: 5f63a8101e35ffd7b2568f551cbf33b8bedc48ba @@ -461,6 +461,6 @@ SPEC CHECKSUMS: SwiftyRSA: 8c6dd1ea7db1b8dc4fb517a202f88bb1354bc2c6 ZLPhotoBrowser: 0563c2bfc7b247b65d023d646012f46cba94101b -PODFILE CHECKSUM: 42053b92ac9e24ed76797463ba14cc31e3771ffc +PODFILE CHECKSUM: 2e0cc301f049eb136c4bc3fa33f6047cd0e03e64 COCOAPODS: 1.11.3 diff --git a/fastlane/report.xml b/fastlane/report.xml index 35d4602..47fbec4 100644 --- a/fastlane/report.xml +++ b/fastlane/report.xml @@ -5,17 +5,17 @@ - + - + - +