From 16a0eb74e8ea9d943b4eb48f3ede2cd6dfcc8cb2 Mon Sep 17 00:00:00 2001 From: yangyakun Date: Tue, 14 Feb 2023 14:01:15 +0800 Subject: [PATCH] =?UTF-8?q?[m1]=20[1.0.2]=20[=E8=BD=A6=E9=80=9F=E5=92=8C?= =?UTF-8?q?=E5=BC=80=E5=85=B3=E9=97=A8]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BusPassengerFunctionDevicePresenter.kt | 38 +++++++++++++++++-- 1 file changed, 35 insertions(+), 3 deletions(-) diff --git a/OCH/mogo-och-bus-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionDevicePresenter.kt b/OCH/mogo-och-bus-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionDevicePresenter.kt index 6bb3556ce7..7b28e3fd3c 100644 --- a/OCH/mogo-och-bus-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionDevicePresenter.kt +++ b/OCH/mogo-och-bus-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionDevicePresenter.kt @@ -1,16 +1,16 @@ package com.mogo.och.bus.passenger.presenter import androidx.lifecycle.LifecycleOwner +import com.mogo.eagle.core.data.map.MogoLocation import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.mogo.och.bus.passenger.callback.IBusPassengerControllerStatusCallback +import com.mogo.och.bus.passenger.model.BusPassengerModel import com.mogo.och.bus.passenger.ui.BusPassengerFunctionDeviceFragment import com.mogo.och.common.module.manager.OCHM1LightAirconditionDoorStatusManager import com.zhidao.support.adas.high.AdasManager -import io.reactivex.Observable -import io.reactivex.android.schedulers.AndroidSchedulers import io.reactivex.disposables.Disposable -import java.util.concurrent.TimeUnit class BusPassengerFunctionDevicePresenter(view: BusPassengerFunctionDeviceFragment?) : BusBasePassengerFunctionDevicePresenter(view), @@ -18,6 +18,7 @@ class BusPassengerFunctionDevicePresenter(view: BusPassengerFunctionDeviceFragme private var subscribe: Disposable? = null private var subscribeDoorStatus: Disposable? = null + private var gnssSpeed =0f companion object { private const val TAG = "BusPassengerFunctionDevicePresenter" @@ -26,6 +27,19 @@ class BusPassengerFunctionDevicePresenter(view: BusPassengerFunctionDeviceFragme override fun onCreate(owner: LifecycleOwner) { super.onCreate(owner) OCHM1LightAirconditionDoorStatusManager.addListener(TAG, this) + BusPassengerModel.setControllerStatusCallback(TAG,object : + IBusPassengerControllerStatusCallback{ + override fun onVRModeChanged(isVRMode: Boolean) { + + } + + override fun onCarLocationChanged(location: MogoLocation?) { + location?.let { + gnssSpeed = it.gnssSpeed + } + } + + }) } override fun onDestroy(owner: LifecycleOwner) { @@ -44,6 +58,11 @@ class BusPassengerFunctionDevicePresenter(view: BusPassengerFunctionDeviceFragme } fun openDoor() { + val canOpenOrCloseDoor = canOpenOrCloseDoor() + if(!canOpenOrCloseDoor.isNullOrEmpty()){ + ToastUtils.showShort(canOpenOrCloseDoor) + return + } disposeSubscribe(subscribe) subscribe = createSubscribe(1000) { AdasManager.getInstance().sendRoboBusJinlvM1FrontDoorCmd(0) @@ -58,6 +77,11 @@ class BusPassengerFunctionDevicePresenter(view: BusPassengerFunctionDeviceFragme } fun closeDoor() { + val canOpenOrCloseDoor = canOpenOrCloseDoor() + if(!canOpenOrCloseDoor.isNullOrBlank()){ + ToastUtils.showShort(canOpenOrCloseDoor) + return + } disposeSubscribe(subscribe) subscribe = createSubscribe(1000) { AdasManager.getInstance().sendRoboBusJinlvM1FrontDoorCmd(0) @@ -71,6 +95,14 @@ class BusPassengerFunctionDevicePresenter(view: BusPassengerFunctionDeviceFragme } } + private fun canOpenOrCloseDoor():String?{ + if(gnssSpeed==0f){ + return null + }else{ + return "车辆正在运行、请稍后再试" + } + } + // 靠边停车 fun startStopSide() { when (CallerAutoPilotStatusListenerManager.getAutoPilotStatusInfo().state) {