From ec6ee7d45cc14c16214ca956d596e01f624b593f Mon Sep 17 00:00:00 2001 From: yangyakun Date: Fri, 25 Oct 2024 18:04:09 +0800 Subject: [PATCH 1/2] =?UTF-8?q?[6.7.2]=20[fea]=20[=E5=AE=9E=E6=97=B6?= =?UTF-8?q?=E7=B3=BB=E7=BB=9F=20=E5=AE=8C=E6=88=90=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E9=9C=80=E8=A6=81=E7=BD=91=E7=BB=9C]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/module/wigets/CommonSlideView.kt | 12 +++++++ .../weaknet/callback/IBusLinesCallback.java | 1 + .../com/mogo/och/weaknet/model/LineModel.kt | 33 +++++++++++++++++++ .../com/mogo/och/weaknet/model/OrderModel.kt | 11 ++----- .../ui/taskrunning/TaskRunningModel.kt | 8 +++++ .../weaknet/ui/taskrunning/TaskRunningView.kt | 4 +++ 6 files changed, 60 insertions(+), 9 deletions(-) diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/CommonSlideView.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/CommonSlideView.kt index 1b4ea64f73..521f030e85 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/CommonSlideView.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/CommonSlideView.kt @@ -140,6 +140,18 @@ class CommonSlideView @JvmOverloads constructor( } } + fun reset(){ + lottie_bg.setAnimation("slide.json") + lottie_bg.playAnimation() + draggableButton.setTextColor(context.getColor(R.color.white)) + ObjectAnimator.ofFloat( + draggableButton, "translationX", draggableButton.translationX, + 0f + ).apply { + duration = 100 + }.start() + } + override fun onDetachedFromWindow() { super.onDetachedFromWindow() diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/callback/IBusLinesCallback.java b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/callback/IBusLinesCallback.java index 90d9fad5ba..95f67a63b7 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/callback/IBusLinesCallback.java +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/callback/IBusLinesCallback.java @@ -27,4 +27,5 @@ public interface IBusLinesCallback { default void onArriveStationSuccess(){} default void onCompleteTask(){} + default void onCompleteTaskFail(){} } 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 7de6227584..1249a0010d 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 @@ -23,6 +23,7 @@ import com.mogo.och.data.bean.BusStationBean import com.mogo.och.shuttle.weaknet.R import com.mogo.och.weaknet.bean.response.CarExecutableTaskResponse import com.mogo.och.weaknet.callback.IBusLinesCallback +import com.mogo.och.weaknet.model.OrderModel.isGoingToNextStation import com.mogo.och.weaknet.repository.db.bean.LineDataBean import com.mogo.och.weaknet.repository.db.bean.TaskDataBean import com.mogo.och.weaknet.repository.db.bean.TaskSiteDataBean @@ -30,6 +31,7 @@ import com.mogo.och.weaknet.repository.db.repository.EventDb import com.mogo.och.weaknet.repository.RepositoryManager import com.mogo.och.weaknet.repository.exception.DataException import com.mogo.och.weaknet.repository.net.shuttlesaas.ShuttleSaasServiceManager +import com.mogo.och.weaknet.util.ShuttleVoiceManager import io.reactivex.Observer import io.reactivex.android.schedulers.AndroidSchedulers import io.reactivex.disposables.Disposable @@ -293,6 +295,30 @@ object LineModel { if (e is DataException) { } + if (RepositoryManager.supportDb()) { + isGoingToNextStation = false + + ThirdDeviceData.endTask() + ThirdDeviceData.sendTaskDetailsToClients() + ShuttleVoiceManager.endOrderBus() + // 取消自驾 + CallerAutoPilotControlManager.cancelAutoPilot() + currentTask = null + LineManager.setLineInfo(null) + LineManager.setStartAndEndStation(null,null) + stationList = mutableListOf() + startStationIndex = 0 + mBusLinesCallbackMap.forEach { + it.value.onCompleteTask() + } + val changeInfo = "taskId:${currentTask?.taskId}--lineInfo:${LineManager.lineInfos}" + OchChainLogManager.writeChainLog("结束任务", changeInfo) + }else{ + ToastUtils.showShort("结束任务失败请稍后再试") + mBusLinesCallbackMap.forEach { + it.value.onCompleteTaskFail() + } + } } override fun onComplete() { @@ -302,6 +328,13 @@ object LineModel { override fun onNext(data: Boolean) { d(TAG, "endTask onNext ${data}") if (data) { + isGoingToNextStation = false + + ThirdDeviceData.endTask() + ThirdDeviceData.sendTaskDetailsToClients() + ShuttleVoiceManager.endOrderBus() + // 取消自驾 + CallerAutoPilotControlManager.cancelAutoPilot() currentTask = null LineManager.setLineInfo(null) LineManager.setStartAndEndStation(null,null) 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 3fc675e3c2..9a33172bf0 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 @@ -164,16 +164,9 @@ object OrderModel { fun completeTask() { OCHThreadPoolManager.getsInstance().execute { d(M_BUS + TAG, "结束当前路线abortTask") - - isGoingToNextStation = false - - ThirdDeviceData.endTask() - LineModel.endTask() - ThirdDeviceData.sendTaskDetailsToClients() removeTipRunnables() - ShuttleVoiceManager.endOrderBus() - // 取消自驾 - CallerAutoPilotControlManager.cancelAutoPilot() + LineModel.endTask() + } } diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/ui/taskrunning/TaskRunningModel.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/ui/taskrunning/TaskRunningModel.kt index ae05e450a8..326d03b3c8 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/ui/taskrunning/TaskRunningModel.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/ui/taskrunning/TaskRunningModel.kt @@ -33,6 +33,7 @@ class TaskRunningModel : ViewModel(), IBusLinesCallback { interface SwtichLineViewCallback{ fun showRunningTaskInfo() fun hideLoadingAndshowRunningTaskInfo() + fun completeTaskFail() } override fun onLeaveStaionSuccess() { @@ -63,6 +64,13 @@ class TaskRunningModel : ViewModel(), IBusLinesCallback { } + override fun onCompleteTaskFail() { + super.onCompleteTaskFail() + BizLoopManager.runInMainThread{ + viewCallback?.completeTaskFail() + } + } + fun completeTask() { OrderModel.completeTask() } diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/ui/taskrunning/TaskRunningView.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/ui/taskrunning/TaskRunningView.kt index 5fc6e6ec79..e33d87b05f 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/ui/taskrunning/TaskRunningView.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/ui/taskrunning/TaskRunningView.kt @@ -131,6 +131,10 @@ class TaskRunningView: ConstraintLayout, TaskRunningModel.SwtichLineViewCallback showRunningTaskInfo() } + override fun completeTaskFail() { + aciv_task_leave_station_slide_bg.reset() + } + fun showLeaveStationView(){ aciv_task_leave_station_slide_bg.visibility = VISIBLE actv_arriver_station.visibility = GONE From f280f1bda02b4e538c0a7d678bc03967c3dba1d5 Mon Sep 17 00:00:00 2001 From: yangyakun Date: Fri, 25 Oct 2024 18:30:46 +0800 Subject: [PATCH 2/2] =?UTF-8?q?[6.7.2]=20[fea]=20[=E7=BA=BF=E7=A8=8B?= =?UTF-8?q?=E6=A3=80=E6=B5=8B]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/mogo/och/weaknet/model/EventModel.kt | 4 +++- .../com/mogo/och/weaknet/repository/RepositoryManager.kt | 8 +++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/model/EventModel.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/model/EventModel.kt index a7e85831a0..a45184cb22 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/model/EventModel.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/model/EventModel.kt @@ -48,7 +48,9 @@ object EventModel : EventDb.EventCallback { } private fun checkDbData() { - SiteDb.checkData() + BizLoopManager.runInIoThread{ + SiteDb.checkData() + } } diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/RepositoryManager.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/RepositoryManager.kt index ab9f6ca1c4..eed1c6c2ba 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/RepositoryManager.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/RepositoryManager.kt @@ -3,6 +3,7 @@ package com.mogo.och.weaknet.repository import com.mogo.commons.env.ProjectUtils import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.och.common.module.network.OchCommonServiceCallback import com.mogo.och.weaknet.bean.response.CarExecutableTaskResponse import com.mogo.och.weaknet.repository.db.bean.LineDataBean @@ -16,21 +17,25 @@ import io.reactivex.Observable object RepositoryManager { - + private val TAG = "RepositoryManager" private var repository: IRepository?=null get() { if(field==null){ if(ProjectUtils.isSaas()){ if(AppIdentityModeUtils.isShuttle(FunctionBuildConfig.appIdentityMode)) { repository = ShuttleSaasRepository() + CallerLogger.d(TAG,"saas shuttle 支持db") }else if(AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)) { repository = BusSaasRepository() + CallerLogger.d(TAG,"saas bus 不支持db") } }else { if(AppIdentityModeUtils.isShuttle(FunctionBuildConfig.appIdentityMode)) { repository = ShuttleRepository() + CallerLogger.d(TAG,"非saas shuttle 不支持db") }else if(AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)) { repository = BusRepository() + CallerLogger.d(TAG,"非saas bus 不支持db") } } } @@ -38,6 +43,7 @@ object RepositoryManager { } fun release(){ + CallerLogger.d(TAG,"重置 repository") repository = null }