diff --git a/OCH/mogo-och-bus/src/jinlvvan/java/com/mogo/och/bus/model/OrderModel.java b/OCH/mogo-och-bus/src/jinlvvan/java/com/mogo/och/bus/model/OrderModel.java index 98e2f413aa..1017f2b3dc 100644 --- a/OCH/mogo-och-bus/src/jinlvvan/java/com/mogo/och/bus/model/OrderModel.java +++ b/OCH/mogo-och-bus/src/jinlvvan/java/com/mogo/och/bus/model/OrderModel.java @@ -8,6 +8,7 @@ import static com.mogo.och.bus.constant.BusConst.STATION_STATUS_STOPPED; import android.content.Context; import android.os.Handler; import android.os.Message; +import android.text.TextUtils; import androidx.annotation.NonNull; import androidx.annotation.Nullable; @@ -620,6 +621,18 @@ public class OrderModel { */ private void startAutopilot(boolean isRestart, int leaveIndex) { + //根据开关和后台是否发布轨迹启动自驾 + if (FunctionBuildConfig.isPassStartAutopilotCommand && (TextUtils.isEmpty(busRoutesResult.csvFileUrl) + || TextUtils.isEmpty(busRoutesResult.csvFileUrlDPQP))){ + ToastUtils.showLong("无发布轨迹, 请发布后重试"); + CallerLogger.INSTANCE.e(M_BUS + TAG, "isPassStartAutopilotCommand = " + + FunctionBuildConfig.isPassStartAutopilotCommand); + return; + } + + CallerLogger.INSTANCE.e(M_BUS + TAG, "isPassStartAutopilotCommand = " + + FunctionBuildConfig.isPassStartAutopilotCommand); + if (!FunctionBuildConfig.isDemoMode && !OCHAdasAbilityManager.getInstance().getAutopilotAbilityStatus()) { ToastUtils.showLong(OCHAdasAbilityManager.getInstance().getAutopilotUnAbilityReason() + ", 请稍候重试"); diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/TaxiModel.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/TaxiModel.java index f2fe9e088c..0d5c1aa63c 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/TaxiModel.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/TaxiModel.java @@ -3,6 +3,7 @@ package com.mogo.och.taxi.model; import android.content.Context; import android.content.Intent; import android.net.ConnectivityManager; +import android.text.TextUtils; import androidx.annotation.NonNull; import androidx.annotation.Nullable; @@ -898,12 +899,25 @@ public class TaxiModel { clientPkFileName = "sn" ) public void startAutoPilot() { + if (!checkCurrentOCHOrder()) { CallerLogger.INSTANCE.e(M_TAXI + TAG, "no order or order is empty."); ToastUtils.showShort("当前订单不存在或异常!"); return; } + //根据开关和后台是否发布轨迹启动自驾 + if (FunctionBuildConfig.isPassStartAutopilotCommand && (TextUtils.isEmpty(mCurrentOCHOrder.csvFileUrl) + || TextUtils.isEmpty(mCurrentOCHOrder.csvFileUrlDPQP))){ + ToastUtils.showLong("无发布轨迹, 请发布后重试"); + CallerLogger.INSTANCE.e(M_TAXI + TAG, "isPassStartAutopilotCommand = " + + FunctionBuildConfig.isPassStartAutopilotCommand); + return; + } + + CallerLogger.INSTANCE.e(M_TAXI + TAG, "isPassStartAutopilotCommand = " + + FunctionBuildConfig.isPassStartAutopilotCommand); + if (!FunctionBuildConfig.isDemoMode && !OCHAdasAbilityManager.getInstance().getAutopilotAbilityStatus()){ ToastUtils.showLong(OCHAdasAbilityManager.getInstance().getAutopilotUnAbilityReason() + ", 请稍候重试"); diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt index 17d70cd126..a2fe6907a8 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt @@ -1010,6 +1010,19 @@ internal class DebugSettingView @JvmOverloads constructor( tbReportWarning.visibility = GONE } + + //是否开启无轨迹发送自驾命令 + tbStartAutopilotCommand.isChecked = FunctionBuildConfig.isPassStartAutopilotCommand + tbStartAutopilotCommand.setOnCheckedChangeListener { _, isChecked -> + FunctionBuildConfig.isPassStartAutopilotCommand = isChecked + } + + if (!AppIdentityModeUtils.isTaxiDriver(FunctionBuildConfig.appIdentityMode) + && !AppIdentityModeUtils.isBusDriver(FunctionBuildConfig.appIdentityMode)){ + tbStartAutopilotCommand.visibility = GONE + } + + //切换环境 tvCurEnv.text = "当前环境:${CallerDevaToolsManager.getEnvCityName()}${CallerDevaToolsManager.getEnvNetMode()}" btChangeEnv.onClick { diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_debug_setting.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_debug_setting.xml index 8ab4712eae..81b044daa6 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_debug_setting.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_debug_setting.xml @@ -1346,6 +1346,19 @@ android:textSize="@dimen/dp_24" app:layout_constraintTop_toBottomOf="@id/btnConnectServerIp" /> + +