From 81758ae33a5d55bc0c345d2ad05c36595679aade Mon Sep 17 00:00:00 2001 From: yangyakun Date: Wed, 20 Nov 2024 16:54:46 +0800 Subject: [PATCH] =?UTF-8?q?[6.8.0]=20[fea]=20[2d=E5=9C=B0=E5=9B=BE?= =?UTF-8?q?=E8=B7=AF=E7=BA=BF=E5=B1=95=E7=A4=BA=E4=BC=98=E5=8C=96]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manager/autopilot/line/LineManager.kt | 14 +++--- .../com/mogo/och/weaknet/model/LineModel.kt | 47 ++++++++++++++++++ .../com/mogo/och/weaknet/model/OrderModel.kt | 2 + .../repository/line/impl/NormalRepository.kt | 1 + .../repository/line/impl/WeaknetRepository.kt | 1 + .../res/drawable-nodpi/bus_station_end.png | Bin 0 -> 5212 bytes .../drawable-nodpi/bus_station_notarrive.png | Bin 0 -> 3121 bytes .../res/drawable-nodpi/bus_station_pass.png | Bin 0 -> 2539 bytes .../res/drawable-nodpi/bus_station_start.png | Bin 0 -> 4332 bytes 9 files changed, 59 insertions(+), 6 deletions(-) create mode 100644 OCH/shuttle/driver_weaknet/src/main/res/drawable-nodpi/bus_station_end.png create mode 100644 OCH/shuttle/driver_weaknet/src/main/res/drawable-nodpi/bus_station_notarrive.png create mode 100644 OCH/shuttle/driver_weaknet/src/main/res/drawable-nodpi/bus_station_pass.png create mode 100644 OCH/shuttle/driver_weaknet/src/main/res/drawable-nodpi/bus_station_start.png diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilot/line/LineManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilot/line/LineManager.kt index 95330857d3..536c385f53 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilot/line/LineManager.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilot/line/LineManager.kt @@ -15,6 +15,7 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListener import com.mogo.eagle.core.function.call.datacenter.CallerDataCenterBizListener import com.mogo.eagle.core.function.call.map.CallerMapGlobalTrajectoryDrawManager import com.mogo.eagle.core.function.call.och.CallerEagleBaseFunctionCall4OchManager +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.e import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS @@ -79,13 +80,14 @@ object LineManager : CallerBase() { private var autopilotId: String by Delegates.observable("") { _, oldValue, newValue -> if (oldValue != newValue) { CallerEagleBaseFunctionCall4OchManager.setOchAutopilotOrderId(newValue) - val (start, end) = getStations() - if(start!=null&&end!=null){ - CallerDataCenterBizListener.invokeOchInfo(OchInfo(0, mutableListOf(start.toMogoLocation(),end.toMogoLocation()))) - }else{ - CallerDataCenterBizListener.invokeOchInfo(OchInfo(0, mutableListOf())) + if(!AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)&&!AppIdentityModeUtils.isShuttle(FunctionBuildConfig.appIdentityMode)){ + val (start, end) = getStations() + if(start!=null&&end!=null){ + CallerDataCenterBizListener.invokeOchInfo(OchInfo(0, mutableListOf(start.toMogoLocation(),end.toMogoLocation()))) + }else{ + CallerDataCenterBizListener.invokeOchInfo(OchInfo(0, mutableListOf())) + } } - } } diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/model/LineModel.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/model/LineModel.kt index 635b965e5b..15c40c8764 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/model/LineModel.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/model/LineModel.kt @@ -5,7 +5,11 @@ import android.content.Context import com.mogo.commons.AbsMogoApplication import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.config.FunctionBuildConfig +import com.mogo.eagle.core.data.map.SiteMarkerBean +import com.mogo.eagle.core.data.och.OchInfo +import com.mogo.eagle.core.data.v2x.Point import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager +import com.mogo.eagle.core.function.call.datacenter.CallerDataCenterBizListener import com.mogo.eagle.core.network.utils.digest.DigestUtils import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d @@ -327,6 +331,7 @@ object LineModel { currentTask = null LineManager.setLineInfo(null) LineManager.setStartAndEndStation(null, null) + LineModel.callEyeMap(true) stationList = mutableListOf() startStationIndex = 0 mBusLinesCallbackMap.forEach { @@ -360,6 +365,7 @@ object LineModel { currentTask = null LineManager.setLineInfo(null) LineManager.setStartAndEndStation(null, null) + LineModel.callEyeMap(true) stationList = mutableListOf() startStationIndex = 0 mBusLinesCallbackMap.forEach { @@ -404,4 +410,45 @@ object LineModel { } } + fun callEyeMap(isClear:Boolean){ + if(isClear) { + val ochInfo = OchInfo(1, mutableListOf()) + ochInfo.siteMarkerList = mutableListOf() + CallerDataCenterBizListener.invokeOchInfo(ochInfo) + }else{ + val siteList = mutableListOf() + var temp: SiteMarkerBean?=null + stationList?.let { + it.forEachIndexed { index, busStationBean -> + if(index==0){ + temp =SiteMarkerBean(Point(busStationBean.gcjLon,busStationBean.gcjLat),R.drawable.bus_station_start,0.5f,0.87f) + }else if(index==it.size-1){ + temp =SiteMarkerBean(Point(busStationBean.gcjLon,busStationBean.gcjLat),R.drawable.bus_station_end,0.5f,0.87f) + }else{ + if(busStationBean.drivingStatus==1){ + temp =SiteMarkerBean(Point(busStationBean.gcjLon,busStationBean.gcjLat),R.drawable.bus_station_pass,0.5f,0.478f) + }else if (busStationBean.drivingStatus==3){ + temp =SiteMarkerBean(Point(busStationBean.gcjLon,busStationBean.gcjLat),R.drawable.bus_station_notarrive,0.5f,0.478f) + }else if (busStationBean.drivingStatus==2){ + if(busStationBean.isLeaving){ + temp =SiteMarkerBean(Point(busStationBean.gcjLon,busStationBean.gcjLat),R.drawable.bus_station_pass,0.5f,0.478f) + }else{ + temp =SiteMarkerBean(Point(busStationBean.gcjLon,busStationBean.gcjLat),R.drawable.bus_station_notarrive,0.5f,0.478f) + } + } + } + temp?.let {temp-> + siteList.add(temp) + } + } + } + val (start, end) = LineManager.getStations() + if(start!=null&&end!=null){ + val ochInfo = OchInfo(1, mutableListOf(start.toMogoLocation(),end.toMogoLocation())) + ochInfo.siteMarkerList = siteList + CallerDataCenterBizListener.invokeOchInfo(ochInfo) + } + } + } + } diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/model/OrderModel.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/model/OrderModel.kt index b78c7fff71..865c646471 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/model/OrderModel.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/model/OrderModel.kt @@ -416,6 +416,7 @@ object OrderModel { if(LineModel.startStationIndex +1< it.size){ val endStation = it[LineModel.startStationIndex +1] LineManager.setStartAndEndStation(startStation,endStation) + LineModel.callEyeMap(false) } } LineModel.arrivedStationSuccess() @@ -431,6 +432,7 @@ object OrderModel { if(LineModel.startStationIndex +1< it.size){ val endStation = it[LineModel.startStationIndex +1] LineManager.setStartAndEndStation(startStation,endStation) + LineModel.callEyeMap(false) } } LineModel.arrivedStationSuccess() diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/line/impl/NormalRepository.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/line/impl/NormalRepository.kt index e1120f92e6..79a4836648 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/line/impl/NormalRepository.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/line/impl/NormalRepository.kt @@ -124,6 +124,7 @@ class NormalRepository: ILineRepository { if (LineModel.startStationIndex < stationlist.size-1) { val endStation = stationlist[LineModel.startStationIndex + 1] LineManager.setStartAndEndStation(startStation,endStation) + LineModel.callEyeMap(false) } } return@flatMap Observable.just(true) diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/line/impl/WeaknetRepository.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/line/impl/WeaknetRepository.kt index 933ecf7b70..71c7fc1141 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/line/impl/WeaknetRepository.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/line/impl/WeaknetRepository.kt @@ -100,6 +100,7 @@ class WeaknetRepository : ILineRepository { if (LineModel.startStationIndex < stationlist.size-1) { val endStation = stationlist[LineModel.startStationIndex + 1] LineManager.setStartAndEndStation(startStation,endStation) + LineModel.callEyeMap(false) } } diff --git a/OCH/shuttle/driver_weaknet/src/main/res/drawable-nodpi/bus_station_end.png b/OCH/shuttle/driver_weaknet/src/main/res/drawable-nodpi/bus_station_end.png new file mode 100644 index 0000000000000000000000000000000000000000..45071228a2caa046d62f249eaa230dc5524ffbd5 GIT binary patch literal 5212 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 LNkvXXu0mjf5=GVs literal 0 HcmV?d00001 diff --git a/OCH/shuttle/driver_weaknet/src/main/res/drawable-nodpi/bus_station_pass.png b/OCH/shuttle/driver_weaknet/src/main/res/drawable-nodpi/bus_station_pass.png new file mode 100644 index 0000000000000000000000000000000000000000..a411050a6e96ca131028cf804c2f9678972de3a3 GIT binary patch literal 2539 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 aC;kUIEOtlAu5|?f0000