From 503755609bb4bfa4a3f39aa4ed41645d5d6aa769 Mon Sep 17 00:00:00 2001 From: donghongyu Date: Mon, 10 Oct 2022 11:42:14 +0800 Subject: [PATCH 1/7] =?UTF-8?q?[Change]=20A=E3=80=81=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E6=9C=80=E5=90=8E=E4=B8=80=E6=AC=A1=E5=90=AF=E5=8A=A8=E8=87=AA?= =?UTF-8?q?=E5=8A=A8=E9=A9=BE=E9=A9=B6=E5=8F=82=E6=95=B0=E8=AE=B0=E5=BD=95?= =?UTF-8?q?=EF=BC=8C=E6=B3=A8=E6=84=8F=EF=BC=8C=E5=AE=9E=E6=97=B6=E5=9B=9E?= =?UTF-8?q?=E8=B0=83=E5=92=8C=E4=B8=BB=E5=8A=A8=E6=9F=A5=E8=AF=A2=E5=87=BA?= =?UTF-8?q?=E6=9D=A5=E5=AF=B9=E5=8F=AF=E8=83=BD=E4=B8=BAnull=E5=8D=B3?= =?UTF-8?q?=E6=B2=A1=E6=9C=89=E8=A1=8C=E7=A8=8B=E4=BF=A1=E6=81=AF=EF=BC=8C?= =?UTF-8?q?=E9=9C=80=E8=A6=81=E5=81=9A=E5=A5=BD=E5=AE=B9=E9=94=99=EF=BC=8C?= =?UTF-8?q?=E4=BD=BF=E7=94=A8=E6=96=B9=E6=B3=95=EF=BC=9A=201=E3=80=81?= =?UTF-8?q?=E5=AE=9E=E6=97=B6=E7=9B=91=E5=90=AC=EF=BC=9A=E5=AE=9E=E7=8E=B0?= =?UTF-8?q?=E7=9B=91=E5=90=AC=E6=8E=A5=E5=8F=A3=EF=BC=8CIMoGoAutopilotStat?= =?UTF-8?q?usListener::onAutopilotStatusResponse(autoPilotStatusInfo:=20Au?= =?UTF-8?q?topilotStatusInfo)=EF=BC=8C=E6=B3=A8=E5=86=8C=E5=8F=98=E5=8C=96?= =?UTF-8?q?=E7=9B=91=E5=90=ACCallerAutoPilotStatusListenerManager.INSTANCE?= =?UTF-8?q?.addListener(TAG,=20this);=202=E3=80=81=E5=8D=95=E6=AC=A1?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=EF=BC=9A=20CallerAutoPilotStatusListenerMana?= =?UTF-8?q?ger.INSTANCE.getAutoPilotStatusInfo().getAutopilotControlParame?= =?UTF-8?q?ters()=203=E3=80=81TODO=20@=E6=96=87=E5=90=9B=E9=9C=80=E8=A6=81?= =?UTF-8?q?=E5=9C=A8Taxi=E8=A1=8C=E7=A8=8B=E7=BB=93=E6=9D=9F=E5=92=8CBus?= =?UTF-8?q?=E8=B7=91=E5=AE=8C=E6=9C=80=E5=90=8E=E4=B8=80=E7=AB=99=E5=90=8E?= =?UTF-8?q?=E5=AF=B9=E6=95=B0=E6=8D=AE=E8=BF=9B=E8=A1=8C=E6=B8=85=E7=A9=BA?= =?UTF-8?q?=E6=93=8D=E4=BD=9C=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: donghongyu --- .../core/data/autopilot/AutopilotStatusInfo.kt | 7 ++++++- .../call/autopilot/CallerAutoPilotManager.kt | 4 ++++ .../CallerAutoPilotStatusListenerManager.kt | 17 +++++++++++++---- .../core/function/call/autopilot/REEADME.md | 6 ++++++ 4 files changed, 29 insertions(+), 5 deletions(-) create mode 100644 core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/REEADME.md diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/autopilot/AutopilotStatusInfo.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/autopilot/AutopilotStatusInfo.kt index 4cdacb92d6..f0dd46a78b 100644 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/autopilot/AutopilotStatusInfo.kt +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/autopilot/AutopilotStatusInfo.kt @@ -85,12 +85,17 @@ open class AutopilotStatusInfo : Serializable, Cloneable { // 默认未连接 var ipcConnStatus = 0x01 + /** + * 记录最后一次启动自动驾驶需要的参数,结束自动驾驶后设置为null + */ + var autopilotControlParameters: AutopilotControlParameters? = null + override fun toString(): String { return "connectIP=$connectIP, connectPort=$connectPort, " + "connectStatus=$connectStatus, connectDescribe=$connectStatusDescribe, version=$version, dockVersion=$dockVersion," + " locationStatus=$locationStatus), locationLat=$locationLat, locationLon=$locationLon," + " satelliteTime=$satelliteTime, speed=$speed, state=$state, reason=$reason, camera=$camera," + - " radar=$radar, rtk=$rtk, pilotmode=$pilotmode, ipcConnStatus=$ipcConnStatus" + " radar=$radar, rtk=$rtk, pilotmode=$pilotmode, ipcConnStatus=$ipcConnStatus, autopilotControlParameters=$autopilotControlParameters" } public override fun clone(): AutopilotStatusInfo { diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotManager.kt index 56bb110906..a941d04ea8 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotManager.kt @@ -67,6 +67,8 @@ object CallerAutoPilotManager { return } providerApi?.startAutoPilot(controlParameters) + // 更新记录在全局的控制参数 + CallerAutoPilotStatusListenerManager.updateAutopilotControlParameters(controlParameters) } /** @@ -94,6 +96,8 @@ object CallerAutoPilotManager { // 司机屏才能取消自动驾驶 if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) { providerApi?.cancelAutoPilot() + // 更新记录在全局的控制参数 + CallerAutoPilotStatusListenerManager.updateAutopilotControlParameters(null) } } diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotStatusListenerManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotStatusListenerManager.kt index 5f0625073a..061c1347ca 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotStatusListenerManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotStatusListenerManager.kt @@ -2,6 +2,7 @@ package com.mogo.eagle.core.function.call.autopilot import android.util.* import androidx.annotation.Nullable +import com.mogo.eagle.core.data.autopilot.AutopilotControlParameters import com.mogo.eagle.core.data.autopilot.AutopilotStatusInfo import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener import com.mogo.eagle.core.function.call.base.CallerBase @@ -24,7 +25,7 @@ object CallerAutoPilotStatusListenerManager : CallerBase() { // 存储所有注册了监听的对象,invokeXXXX进行遍历回调,将信息同步 private val M_AUTOPILOT_STATUS_LISTENERS: ConcurrentHashMap = - ConcurrentHashMap() + ConcurrentHashMap() @Volatile private var autoPilotMessageCode: String = "" @@ -93,8 +94,8 @@ object CallerAutoPilotStatusListenerManager : CallerBase() { * @param listener 监听回调 */ fun addListener( - @Nullable tag: String, - @Nullable listener: IMoGoAutopilotStatusListener + @Nullable tag: String, + @Nullable listener: IMoGoAutopilotStatusListener ) { if (M_AUTOPILOT_STATUS_LISTENERS.containsKey(tag)) { return @@ -201,10 +202,18 @@ object CallerAutoPilotStatusListenerManager : CallerBase() { */ fun invokeAutopilotStatusRespByQuery(statusInfo: SystemStatusInfo.StatusInfo?) { statusInfo?.also { - M_AUTOPILOT_STATUS_LISTENERS.forEach{ itx -> + M_AUTOPILOT_STATUS_LISTENERS.forEach { itx -> val listener = itx.value listener.onAutopilotStatusRespByQuery(it) } } } + + /** + * 更新自动驾驶控制参数,结束自动驾驶时候需要更新为null,且更新时候同时触发onAutopilotStatusResponse回调 + */ + fun updateAutopilotControlParameters(autopilotControlParameters: AutopilotControlParameters? = null) { + mAutopilotStatusInfo.autopilotControlParameters = autopilotControlParameters + invokeAutoPilotStatus(mAutopilotStatusInfo) + } } \ No newline at end of file diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/REEADME.md b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/REEADME.md new file mode 100644 index 0000000000..6d3fa01f95 --- /dev/null +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/REEADME.md @@ -0,0 +1,6 @@ +#### CallerAutoPilotStatusListenerManager 管理自动驾驶中的状态及参数信息 + +AutopilotStatusInfo: +连接信息 +实时经纬度、速度、车辆硬件状态 +最后一次启动自动驾驶时候的启动参数 AutopilotControlParameters From f7b2fdd01463193dfa7ba67e6171a3bbfb7289b6 Mon Sep 17 00:00:00 2001 From: lixiaopeng Date: Mon, 10 Oct 2022 15:17:34 +0800 Subject: [PATCH 2/7] =?UTF-8?q?=E7=BB=9F=E4=B8=80=E5=9F=9F=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mogo/eagle/core/function/BindHostConst.kt | 26 +++++++++++++++++++ .../appupgrade/network/UpgradeApiService.java | 2 +- .../network/UpgradeAppNetWorkManager.java | 13 +++------- .../module/common/constants/HostConst.java | 3 --- 4 files changed, 30 insertions(+), 14 deletions(-) create mode 100644 core/function-impl/mogo-core-function-bindingcar/src/main/java/com/mogo/eagle/core/function/BindHostConst.kt diff --git a/core/function-impl/mogo-core-function-bindingcar/src/main/java/com/mogo/eagle/core/function/BindHostConst.kt b/core/function-impl/mogo-core-function-bindingcar/src/main/java/com/mogo/eagle/core/function/BindHostConst.kt new file mode 100644 index 0000000000..04bf67be17 --- /dev/null +++ b/core/function-impl/mogo-core-function-bindingcar/src/main/java/com/mogo/eagle/core/function/BindHostConst.kt @@ -0,0 +1,26 @@ +package com.mogo.eagle.core.function + +import com.mogo.commons.debug.DebugConfig + +/** + * cmdb 域名 + */ +class BindHostConst { + + companion object { + private const val UPGRADE_APP_HOST_DEV = "https://eagle-qa.zhidaozhixing.com/" + private const val UPGRADE_APP_HOST = "http://eagle-mis.zhidaozhixing.com/" + + @JvmStatic + fun getBaseUrl(): String { + return when (DebugConfig.getNetMode()) { + DebugConfig.NET_MODE_DEV -> UPGRADE_APP_HOST_DEV + DebugConfig.NET_MODE_QA -> UPGRADE_APP_HOST_DEV + DebugConfig.NET_MODE_DEMO -> UPGRADE_APP_HOST + DebugConfig.NET_MODE_RELEASE -> UPGRADE_APP_HOST + else -> UPGRADE_APP_HOST + } + } + } + +} \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-bindingcar/src/main/java/com/mogo/eagle/core/function/appupgrade/network/UpgradeApiService.java b/core/function-impl/mogo-core-function-bindingcar/src/main/java/com/mogo/eagle/core/function/appupgrade/network/UpgradeApiService.java index b18c08508d..bfed267d94 100644 --- a/core/function-impl/mogo-core-function-bindingcar/src/main/java/com/mogo/eagle/core/function/appupgrade/network/UpgradeApiService.java +++ b/core/function-impl/mogo-core-function-bindingcar/src/main/java/com/mogo/eagle/core/function/appupgrade/network/UpgradeApiService.java @@ -21,7 +21,7 @@ public interface UpgradeApiService { * @return {@link UpgradeAppInfo} */ @Headers("Content-Type:application/json;charset=UTF-8") - @POST("/eagleEye-mis/config/versionInfo") + @POST("eagleEye-mis/config/versionInfo") // Observable getUpgradeInfo(@Query("resources") String res, @Body RequestBody requestBody); Observable getUpgradeInfo(@Body RequestBody requestBody); diff --git a/core/function-impl/mogo-core-function-bindingcar/src/main/java/com/mogo/eagle/core/function/appupgrade/network/UpgradeAppNetWorkManager.java b/core/function-impl/mogo-core-function-bindingcar/src/main/java/com/mogo/eagle/core/function/appupgrade/network/UpgradeAppNetWorkManager.java index 2f58262dfe..fd4ec34bb6 100644 --- a/core/function-impl/mogo-core-function-bindingcar/src/main/java/com/mogo/eagle/core/function/appupgrade/network/UpgradeAppNetWorkManager.java +++ b/core/function-impl/mogo-core-function-bindingcar/src/main/java/com/mogo/eagle/core/function/appupgrade/network/UpgradeAppNetWorkManager.java @@ -4,20 +4,13 @@ import android.content.Context; import android.util.Log; import com.mogo.cloud.passport.MoGoAiCloudClientConfig; -import com.mogo.commons.constants.SharedPrefsConstants; -import com.mogo.eagle.core.data.bindingcar.BindingcarInfo; -import com.mogo.eagle.core.data.bindingcar.ModifyBindingcarInfo; import com.mogo.eagle.core.data.bindingcar.UpgradeAppInfo; -import com.mogo.eagle.core.function.api.bindingcar.BindingcarCallBack; +import com.mogo.eagle.core.function.BindHostConst; import com.mogo.eagle.core.function.call.hmi.CallerHmiManager; import com.mogo.eagle.core.network.MoGoRetrofitFactory; import com.mogo.eagle.core.network.utils.GsonUtil; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; -import com.mogo.eagle.core.utilcode.mogo.toast.TipToast; import com.mogo.eagle.core.utilcode.util.AppUtils; -import com.mogo.eagle.core.utilcode.util.GsonUtils; -import com.mogo.module.common.constants.HostConst; import io.reactivex.Observer; import io.reactivex.android.schedulers.AndroidSchedulers; @@ -39,7 +32,7 @@ public class UpgradeAppNetWorkManager { private UpgradeAppNetWorkManager() { - mUpgradeApiService = MoGoRetrofitFactory.getInstance(HostConst.UPGRADE_APP_HOST) + mUpgradeApiService = MoGoRetrofitFactory.getInstance(BindHostConst.getBaseUrl()) .create(UpgradeApiService.class); } @@ -64,7 +57,7 @@ public class UpgradeAppNetWorkManager { String sn = MoGoAiCloudClientConfig.getInstance().getSn(); int versionCode = AppUtils.getAppVersionCode(); CallerLogger.INSTANCE.d(TAG, "getAppUpgradeInfo mac = " + mac + "---type = " + screenType + "---sn = " + sn + "---versionCode =" + versionCode); - Log.d("Upgrade", "mac = " + mac + "---type = " + screenType + "---sn = " + sn + "---versionCode =" + versionCode); + Log.d(TAG, "mac = " + mac + "---type = " + screenType + "---sn = " + sn + "---versionCode =" + versionCode); UpgradeAppRequest request = new UpgradeAppRequest(sn, mac, screenType); RequestBody requestBody = RequestBody.create(MediaType.get("application/json;charset=UTF-8"), GsonUtil.jsonFromObject(request)); mUpgradeApiService.getUpgradeInfo(requestBody) diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/constants/HostConst.java b/modules/mogo-module-common/src/main/java/com/mogo/module/common/constants/HostConst.java index 1a9fad34fd..df45519ece 100644 --- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/constants/HostConst.java +++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/constants/HostConst.java @@ -22,7 +22,4 @@ public class HostConst { public static final String BINDING_SN_HOST = "https://mygateway.zhidaozhixing.com/cmdbapi/"; //中台提供的接口服务 public static final String BINDING_SN_HOST_TEST = "https://mygateway.zhidaozhixing.com/cmdbapitest/"; //中台提供的接口服务测试 -// public static final String UPGRADE_APP_HOST = "http://10.0.200.12:32423?/"; - public static final String UPGRADE_APP_HOST = "https://eagle-qa.zhidaozhixing.com/"; - } From 39b37149cd92f36171a8d7ea7d8fcee585813758 Mon Sep 17 00:00:00 2001 From: lixiaopeng Date: Mon, 10 Oct 2022 15:33:07 +0800 Subject: [PATCH 3/7] =?UTF-8?q?=E5=BC=80=E5=90=AF=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E9=A9=BE=E9=A9=B6=E4=BC=A0=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../eagle/core/function/main/MainLauncherActivity.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainLauncherActivity.java b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainLauncherActivity.java index 57a75e5d82..f2bf122979 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainLauncherActivity.java +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainLauncherActivity.java @@ -26,6 +26,7 @@ import com.mogo.eagle.core.data.config.FunctionBuildConfig; import com.mogo.eagle.core.function.api.base.IMoGoFunctionProvider; import com.mogo.eagle.core.function.api.setting.IMoGoSkinModeChangeListener; import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotManager; +import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager; import com.mogo.eagle.core.function.call.setting.CallerSkinModeListenerManager; import com.mogo.eagle.core.function.hmi.R; import com.mogo.eagle.core.function.main.moujie.BluetoothMonitorReceiver; @@ -218,7 +219,9 @@ public class MainLauncherActivity extends MainActivity implements IMogoIntentLis if (currentTime - oldTime > 6) { SharedPrefsMgr.getInstance(getContext()).putLong("old_time_up", System.currentTimeMillis() / 1000); // ToastUtils.showShort("长按 ↑↑↑ 开启自动驾驶"); - CallerAutoPilotManager.INSTANCE.setControlAutopilotCarAuto(true); +// CallerAutoPilotManager.INSTANCE.setControlAutopilotCarAuto(true); + CallerAutoPilotManager.INSTANCE.startAutoPilot(CallerAutoPilotStatusListenerManager.INSTANCE.getAutoPilotStatusInfo().getAutopilotControlParameters()); + } return true; @@ -337,7 +340,8 @@ public class MainLauncherActivity extends MainActivity implements IMogoIntentLis } else if (event.getAction() == KeyEvent.ACTION_UP) { if (numberE == 1) { // ToastUtils.showShort("方块 单击E 开启自动驾驶 "); - CallerAutoPilotManager.INSTANCE.setControlAutopilotCarAuto(true); +// CallerAutoPilotManager.INSTANCE.setControlAutopilotCarAuto(true); + CallerAutoPilotManager.INSTANCE.startAutoPilot(CallerAutoPilotStatusListenerManager.INSTANCE.getAutoPilotStatusInfo().getAutopilotControlParameters()); } numberE = 0; isLongPressE = false; From 820a3517e30fd88b11ca66df2559230f885c3047 Mon Sep 17 00:00:00 2001 From: chenfufeng Date: Mon, 10 Oct 2022 17:27:00 +0800 Subject: [PATCH 4/7] =?UTF-8?q?[Fix]=E9=A1=BB=E5=85=88=E8=BF=9E=E6=8E=A5?= =?UTF-8?q?=E5=B7=A5=E6=8E=A7=E6=9C=BA=E5=86=8D=E8=AE=BE=E7=BD=AE=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E7=9B=91=E5=90=AC=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../autopilot/MoGoAutopilotProvider.kt | 36 +++++++++++-------- 1 file changed, 21 insertions(+), 15 deletions(-) diff --git a/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/MoGoAutopilotProvider.kt b/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/MoGoAutopilotProvider.kt index 86b6f769f0..a7268ec13e 100644 --- a/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/MoGoAutopilotProvider.kt +++ b/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/MoGoAutopilotProvider.kt @@ -37,6 +37,7 @@ import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_ import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.util.ThreadUtils import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.mogo.eagle.core.utilcode.util.UiThreadHandler import com.mogo.telematic.MogoProtocolMsg import com.mogo.telematic.MogoProtocolMsg.NORMAL_DATA import com.mogo.telematic.MogoProtocolMsg.SYNC_MODE_STATUS @@ -53,7 +54,6 @@ import com.zhidao.support.adas.high.common.CupidLogUtils import com.zhidao.support.adas.high.common.MogoReport import com.zhjt.service.chain.ChainLog import com.zhjt.service.chain.TracingConstants -import com.zhjt.service_biz.BizConfig import io.netty.channel.Channel import mogo.telematics.pad.MessagePad import java.util.* @@ -73,6 +73,7 @@ class MoGoAutopilotProvider : private var mContext: Context? = null private lateinit var msgHandler: IMsgHandler private var timer: Timer? = null + @Volatile private var isInit = false @@ -107,6 +108,9 @@ class MoGoAutopilotProvider : .build() AdasManager.getInstance().create(options, MoGoAdasMsgConnectStatusListenerImpl()) + //////////////////////////////////注意先后顺序,AdasManager.getInstance().create后才可以设置监听///////////////////////////////////////////// + // 监听ADAS-SDK获取到的工控机数据 + AdasManager.getInstance().setOnAdasListener(MoGoAdasListenerImpl()) NSDNettyManager.getInstance().startNSDNettyServerWithSN(context, object : NettyServerListener { override fun onMessageResponseServer(msg: MogoProtocolMsg?, channel: Channel?) { @@ -153,16 +157,19 @@ class MoGoAutopilotProvider : override fun connectDevice(isSupportMulti: Boolean) { if (!isInit) { isInit = true - if (isSupportMulti) { - // 直连工控机 - directConnect() - } else { - val options = AdasOptions - .Builder() - .setClient(true) - .build() - AdasManager.getInstance().create(options, MoGoAdasMsgConnectStatusListenerImpl()) - listenDeviceData() + UiThreadHandler.post { + if (isSupportMulti) { + // 直连工控机 + directConnect() + } else { + val options = AdasOptions + .Builder() + .setClient(true) + .build() + AdasManager.getInstance() + .create(options, MoGoAdasMsgConnectStatusListenerImpl()) + listenDeviceData() + } } } } @@ -189,10 +196,6 @@ class MoGoAutopilotProvider : } }) } - //////////////////////////////////注意先后顺序,AdasManager.getInstance().create后才可以设置监听///////////////////////////////////////////// - - // 监听ADAS-SDK获取到的工控机数据(乘客也需注册) - AdasManager.getInstance().setOnAdasListener(MoGoAdasListenerImpl()) CallerAutopilotCarConfigListenerManager.addListener(TAG, this) CallerLogger.i("$M_ADAS_IMPL$TAG", "initServer……") // 同步数据给工控机的服务 @@ -209,6 +212,9 @@ class MoGoAutopilotProvider : .setClient(false)// 乘客端直连工控机改为false .build() AdasManager.getInstance().create(options, MoGoAdasMsgConnectStatusListenerImpl()) + //////////////////////////////////注意先后顺序,AdasManager.getInstance().create后才可以设置监听///////////////////////////////////////////// + // 监听ADAS-SDK获取到的工控机数据 + AdasManager.getInstance().setOnAdasListener(MoGoAdasListenerImpl()) } /** From 7212e2de5644123ce9a5e9d1bebd9057ac041f47 Mon Sep 17 00:00:00 2001 From: zhongchao Date: Mon, 10 Oct 2022 11:11:30 +0800 Subject: [PATCH 5/7] add log to test --- .../com/mogo/eagle/core/function/map/identify/TrackManager.java | 2 ++ libraries/mogo-map/src/main/java/com/mogo/map/AMapWrapper.java | 2 ++ 2 files changed, 4 insertions(+) diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/map/identify/TrackManager.java b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/map/identify/TrackManager.java index c5b5a301f3..1faa4b9c61 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/map/identify/TrackManager.java +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/map/identify/TrackManager.java @@ -3,6 +3,7 @@ package com.mogo.eagle.core.function.map.identify; import android.annotation.SuppressLint; import android.os.Build; import android.text.TextUtils; +import android.util.Log; import androidx.annotation.RequiresApi; @@ -109,6 +110,7 @@ public class TrackManager { if (data.getColor() != null && !data.getColor().isEmpty()) { cache = cache.toBuilder().setColor(data.getColor()).build(); } + Log.i("EmArrow1009","感知物重新赋值, cache type : " +cache.getType() + " , data type :" + data.getType()); data = cache; } } diff --git a/libraries/mogo-map/src/main/java/com/mogo/map/AMapWrapper.java b/libraries/mogo-map/src/main/java/com/mogo/map/AMapWrapper.java index b727c2b217..f4c4d97c8e 100644 --- a/libraries/mogo-map/src/main/java/com/mogo/map/AMapWrapper.java +++ b/libraries/mogo-map/src/main/java/com/mogo/map/AMapWrapper.java @@ -3,6 +3,7 @@ package com.mogo.map; import android.annotation.SuppressLint; import android.content.Context; import android.graphics.Point; +import android.util.Log; import android.util.Pair; import com.mogo.eagle.core.data.config.FunctionBuildConfig; @@ -116,6 +117,7 @@ public class AMapWrapper implements IMogoMap { optionsArrayList.forEach((s, trackedObject) -> { MarkerSimpleData markerOptions = ObjectUtils.fromTrafficData(trackedObject); if (markerOptions != null) { + Log.i("EmArrow1009","markerOpt : " + markerOptions.toString()); markerOptionsArrayList.add(markerOptions); } }); From 36e1ce01dbb83c4db842da990279a412deaef549 Mon Sep 17 00:00:00 2001 From: zhongchao Date: Mon, 10 Oct 2022 18:02:08 +0800 Subject: [PATCH 6/7] remove unuse log --- .../mogo/eagle/core/function/map/identify/TrackManager.java | 5 ----- .../mogo-map/src/main/java/com/mogo/map/AMapViewWrapper.java | 5 ----- .../mogo-map/src/main/java/com/mogo/map/AMapWrapper.java | 2 -- 3 files changed, 12 deletions(-) diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/map/identify/TrackManager.java b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/map/identify/TrackManager.java index 1faa4b9c61..9f78e3575f 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/map/identify/TrackManager.java +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/map/identify/TrackManager.java @@ -2,8 +2,6 @@ package com.mogo.eagle.core.function.map.identify; import android.annotation.SuppressLint; import android.os.Build; -import android.text.TextUtils; -import android.util.Log; import androidx.annotation.RequiresApi; @@ -11,8 +9,6 @@ import com.google.common.collect.BiMap; import com.google.common.collect.HashBiMap; import com.mogo.commons.AbsMogoApplication; import com.mogo.eagle.core.data.traffic.TrafficData; -import com.mogo.eagle.core.data.traffic.TrafficDataKt; -import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager; import com.mogo.eagle.core.utilcode.geometry.S2CellId; import com.mogo.eagle.core.utilcode.geometry.S2LatLng; import com.mogo.map.MogoMarkerManager; @@ -110,7 +106,6 @@ public class TrackManager { if (data.getColor() != null && !data.getColor().isEmpty()) { cache = cache.toBuilder().setColor(data.getColor()).build(); } - Log.i("EmArrow1009","感知物重新赋值, cache type : " +cache.getType() + " , data type :" + data.getType()); data = cache; } } diff --git a/libraries/mogo-map/src/main/java/com/mogo/map/AMapViewWrapper.java b/libraries/mogo-map/src/main/java/com/mogo/map/AMapViewWrapper.java index 7da3018902..e94abde8ee 100644 --- a/libraries/mogo-map/src/main/java/com/mogo/map/AMapViewWrapper.java +++ b/libraries/mogo-map/src/main/java/com/mogo/map/AMapViewWrapper.java @@ -366,22 +366,17 @@ public class AMapViewWrapper implements IMogoMapView, @Override public void changeMapVisualAngle(VisualAngleMode angelMode, MogoLatLng mogoLatLng) { - Log.d("XXXX", "--- 2 -----"); MapAutoViewHelper mapAutoViewHelper = mMapView.getMapAutoViewHelper(); if (mapAutoViewHelper != null) { - Log.d("XXXX", "--- 3 -----"); mVisualAngleMode = angelMode; if (angelMode == MODE_CLOSE_SIGHT) { - Log.d("XXXX", "--- 4 -----"); if (mogoLatLng == null) { - Log.d("XXXX", "--- 5 -----"); CallerLogger.INSTANCE.e(M_MAP + TAG, "切换地图近景需要传入要移动的经纬度数据"); return; } // 近景传入经纬度为点击地图上静态marker经纬度数据,为GPS坐标点。 mapAutoViewHelper.setNearViewAnglePosition(new LonLatPoint(mogoLatLng.lon, mogoLatLng.lat), true); } else { - Log.d("XXXX", "--- 6 -----"); mapAutoViewHelper.setMapViewVisualAngle(angelMode.getCode()); } } diff --git a/libraries/mogo-map/src/main/java/com/mogo/map/AMapWrapper.java b/libraries/mogo-map/src/main/java/com/mogo/map/AMapWrapper.java index f4c4d97c8e..b727c2b217 100644 --- a/libraries/mogo-map/src/main/java/com/mogo/map/AMapWrapper.java +++ b/libraries/mogo-map/src/main/java/com/mogo/map/AMapWrapper.java @@ -3,7 +3,6 @@ package com.mogo.map; import android.annotation.SuppressLint; import android.content.Context; import android.graphics.Point; -import android.util.Log; import android.util.Pair; import com.mogo.eagle.core.data.config.FunctionBuildConfig; @@ -117,7 +116,6 @@ public class AMapWrapper implements IMogoMap { optionsArrayList.forEach((s, trackedObject) -> { MarkerSimpleData markerOptions = ObjectUtils.fromTrafficData(trackedObject); if (markerOptions != null) { - Log.i("EmArrow1009","markerOpt : " + markerOptions.toString()); markerOptionsArrayList.add(markerOptions); } }); From bc2a3cd756e53c25f3c5b8db1bca35b3b81880bc Mon Sep 17 00:00:00 2001 From: wangmingjun Date: Mon, 10 Oct 2022 18:18:54 +0800 Subject: [PATCH 7/7] =?UTF-8?q?[2.11.0]=20taxi/bus=E5=8F=B8=E6=9C=BA?= =?UTF-8?q?=E7=AB=AF=20=E5=B0=86=E4=B8=9A=E5=8A=A1=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E4=BF=A1=E6=81=AF=E4=BF=9D=E5=AD=98=EF=BC=8C=E9=B9=B0=E7=9C=BC?= =?UTF-8?q?=E5=8F=AF=E5=8F=96=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/mogo/och/bus/model/BusOrderModel.java | 83 +++++++++--- .../com/mogo/och/taxi/model/TaxiModel.java | 128 ++++++++++-------- 2 files changed, 132 insertions(+), 79 deletions(-) diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/model/BusOrderModel.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/model/BusOrderModel.java index df6a0d1ea0..ed7e86d8f7 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/model/BusOrderModel.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/model/BusOrderModel.java @@ -372,6 +372,7 @@ public class BusOrderModel { if (refreshBusStationsCallback != null){ refreshBusStationsCallback.updateEmptyUi(); } + clearAutopilotControlParameters(); return; } CallerLogger.INSTANCE.d(M_BUS + TAG, "获取到小巴路线数据: " + data ); @@ -429,11 +430,13 @@ public class BusOrderModel { refreshBusStationsCallback.updateBusTaskStatus(busRoutesResult.getName(),lineTime, stationList,arrivingOrArrivedStationIndex,true); } + clearAutopilotControlParameters(); }else { if (refreshBusStationsCallback != null){ refreshBusStationsCallback.updateBusTaskStatus(busRoutesResult.getName(),lineTime, stationList,arrivingOrArrivedStationIndex,false); } + updateAutopilotControlParameters(); } } @@ -490,6 +493,7 @@ public class BusOrderModel { private void startAutopilot(boolean isRestart) { if (backgroundCurrentStationIndex +1 > stationList.size() - 1 || !isGoingToNextStation){ + CallerLogger.INSTANCE.e(M_BUS + TAG, "mismatch condition."); return; } @@ -498,30 +502,16 @@ public class BusOrderModel { BusStationBean currentStation = stationList.get( backgroundCurrentStationIndex); BusStationBean nextStation = stationList.get( backgroundCurrentStationIndex + 1); - AutopilotControlParameters parameters = new AutopilotControlParameters(); - parameters.isSpeakVoice = !isRestart; - parameters.routeID = busRoutesResult.getLineId(); - parameters.routeName = busRoutesResult.getName(); - parameters.startName = PinYinUtil.getPinYinHeadChar(currentStation.getName()); - parameters.endName = PinYinUtil.getPinYinHeadChar(nextStation.getName()); - parameters.startLatLon = new AutopilotControlParameters - .AutoPilotLonLat( currentStation.getLat(), currentStation.getLon() ); - parameters.endLatLon = new AutopilotControlParameters - .AutoPilotLonLat( nextStation.getLat(), nextStation.getLon() ); - parameters.vehicleType = VEHICLE_TYPE; - if (parameters.autoPilotLine == null) { - parameters.autoPilotLine = new AutopilotControlParameters.AutoPilotLine( - busRoutesResult.getLineId(), - busRoutesResult.csvFileUrl, busRoutesResult.csvFileMd5, - busRoutesResult.txtFileUrl, busRoutesResult.txtFileMd5, - busRoutesResult.contrailSaveTime, busRoutesResult.carModel, - busRoutesResult.csvFileUrlDPQP, busRoutesResult.csvFileMd5DPQP, - busRoutesResult.txtFileUrlDPQP, busRoutesResult.txtFileMd5DPQP, - busRoutesResult.contrailSaveTimeDPQP); + AutopilotControlParameters parameters = initAutopilotControlParameters(); + if (null == parameters) { + CallerLogger.INSTANCE.e(M_BUS + TAG, "AutopilotControlParameters is empty."); + return; } + + CallerAutoPilotManager.INSTANCE.startAutoPilot(parameters); + CallerLogger.INSTANCE.d( M_BUS + TAG, "开启自动驾驶====" + GsonUtil.jsonFromObject(parameters) +" startLatLon="+currentStation.getName()+",endLatLon="+nextStation.getName()); - CallerAutoPilotManager.INSTANCE.startAutoPilot(parameters); if (mControllerStatusCallback != null) { mControllerStatusCallback.startOpenAutopilot(); @@ -905,4 +895,55 @@ public class BusOrderModel { public int getCurrentStationIndex() { return backgroundCurrentStationIndex; } + + /** + * 将业务订单信息保存,鹰眼可取用 + */ + private void updateAutopilotControlParameters() { + + AutopilotControlParameters parameters = initAutopilotControlParameters(); + if (null == parameters){ + CallerLogger.INSTANCE.e(M_BUS + TAG, "AutopilotControlParameters is empty."); + return; + } + CallerLogger.INSTANCE.d(M_BUS + TAG, "AutopilotControlParameters is update."); + CallerAutoPilotStatusListenerManager.INSTANCE.updateAutopilotControlParameters(parameters); + } + + private void clearAutopilotControlParameters(){ + CallerLogger.INSTANCE.d(M_BUS + TAG, "AutopilotControlParameters is clear."); + CallerAutoPilotStatusListenerManager.INSTANCE.updateAutopilotControlParameters(null); + } + + private AutopilotControlParameters initAutopilotControlParameters() { + if (backgroundCurrentStationIndex +1 > stationList.size() - 1 || !isGoingToNextStation){ + CallerLogger.INSTANCE.e(M_BUS + TAG, "mismatch condition."); + return null; + } + + BusStationBean currentStation = stationList.get( backgroundCurrentStationIndex); + BusStationBean nextStation = stationList.get( backgroundCurrentStationIndex + 1); + + AutopilotControlParameters parameters = new AutopilotControlParameters(); + parameters.routeID = busRoutesResult.getLineId(); + parameters.routeName = busRoutesResult.getName(); + parameters.startName = PinYinUtil.getPinYinHeadChar(currentStation.getName()); + parameters.endName = PinYinUtil.getPinYinHeadChar(nextStation.getName()); + parameters.startLatLon = new AutopilotControlParameters + .AutoPilotLonLat( currentStation.getLat(), currentStation.getLon() ); + parameters.endLatLon = new AutopilotControlParameters + .AutoPilotLonLat( nextStation.getLat(), nextStation.getLon() ); + parameters.vehicleType = VEHICLE_TYPE; + if (parameters.autoPilotLine == null) { + parameters.autoPilotLine = new AutopilotControlParameters.AutoPilotLine( + busRoutesResult.getLineId(), + busRoutesResult.csvFileUrl, busRoutesResult.csvFileMd5, + busRoutesResult.txtFileUrl, busRoutesResult.txtFileMd5, + busRoutesResult.contrailSaveTime, busRoutesResult.carModel, + busRoutesResult.csvFileUrlDPQP, busRoutesResult.csvFileMd5DPQP, + busRoutesResult.txtFileUrlDPQP, busRoutesResult.txtFileMd5DPQP, + busRoutesResult.contrailSaveTimeDPQP); + } + return parameters; + } } 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 b651855d3f..755dc34a0d 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 @@ -18,7 +18,6 @@ import com.amap.api.maps.model.LatLng; import com.elegant.network.utils.GsonUtil; import com.mogo.aicloud.services.socket.MogoAiCloudSocketManager; import com.mogo.cloud.commons.utils.CoordinateUtils; -import com.mogo.commons.debug.DebugConfig; import com.mogo.eagle.core.data.BaseData; import com.mogo.eagle.core.data.autopilot.AutopilotControlParameters; import com.mogo.eagle.core.data.autopilot.AutopilotStatusInfo; @@ -29,6 +28,7 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotManager; import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager; import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotPlanningListenerManager; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; +import com.mogo.eagle.core.utilcode.mogo.logger.Logger; import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; import com.mogo.eagle.core.utilcode.util.NetworkUtils; import com.mogo.eagle.core.utilcode.util.ToastUtils; @@ -318,6 +318,8 @@ public class TaxiModel { //1.1.2. 当本地有currentOrder: //orderId不一致时:通过currentOrder.orderId查询订单状态,并通知ui更新 //orderId一致且orderStatus不一致时:则更新currentOrder,并通知ui更新 + Logger.d(TAG,"AutopilotControl-mCurrentOCHOrder = "+mCurrentOCHOrder.orderStatus + + ", orderStatus = " +data.data.servicing.get(0).orderStatus); if (!mCurrentOCHOrder.orderNo.equals(data.data.servicing.get(0).orderNo)) { queryCurOrderStatus(); } else if (mCurrentOCHOrder.orderStatus != data.data.servicing.get(0).orderStatus) { @@ -787,24 +789,52 @@ public class TaxiModel { TaxiTrajectoryManager.getInstance().syncTrajectoryInfo(); SharedPrefsMgr.getInstance(mContext).putString(TaxiConst.SP_KEY_OCH_TAXI_ORDER, GsonUtil.jsonFromObject(data)); - if (FunctionBuildConfig.isDemoMode) { - if (mCurrentOCHOrder.orderStatus == TaxiOrderStatusEnum.OnTheWayToEnd.getCode()){ + + if (mCurrentOCHOrder.orderStatus == TaxiOrderStatusEnum.OnTheWayToEnd.getCode()){ + + if (FunctionBuildConfig.isDemoMode) { // 当美化模式(演示模式)开启时: 订单对应自动驾驶开启后,置true FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData = true; CallerAutoPilotManager.INSTANCE.setIgnoreConditionDraw(true); CallerAutoPilotManager.INSTANCE.setIPCDemoMode(true); CallerLogger.INSTANCE.d(M_TAXI + TAG, "美化模式-ignore:置为true(更新本地order信息)"); } - if (mCurrentOCHOrder.orderStatus == TaxiOrderStatusEnum.ArriveAtEnd.getCode()){ + + updateAutopilotControlParameters(); + } + if (mCurrentOCHOrder.orderStatus == TaxiOrderStatusEnum.ArriveAtEnd.getCode()){ + if (FunctionBuildConfig.isDemoMode) { CallerAutoPilotManager.INSTANCE.setIPCDemoMode(false); } + + clearAutopilotControlParameters(); } } + /** + * 将业务订单信息保存,鹰眼可取用 + */ + private void updateAutopilotControlParameters() { + + AutopilotControlParameters parameters = initAutopilotControlParameters(); + if (null == parameters){ + CallerLogger.INSTANCE.e(M_TAXI + TAG, "AutopilotControlParameters is empty."); + return; + } + CallerLogger.INSTANCE.d(M_TAXI + TAG, "AutopilotControlParameters is update."); + CallerAutoPilotStatusListenerManager.INSTANCE.updateAutopilotControlParameters(parameters); + } + + private void clearAutopilotControlParameters(){ + CallerLogger.INSTANCE.d(M_TAXI + TAG, "AutopilotControlParameters is clear."); + CallerAutoPilotStatusListenerManager.INSTANCE.updateAutopilotControlParameters(null); + } + //清除订单信息 public void clearCurrentOCHOrder() { startOrStopCalculateRouteInfo(false); mCurrentOCHOrder = null; + clearAutopilotControlParameters(); TaxiTrajectoryManager.getInstance().syncTrajectoryInfo(); SharedPrefsMgr.getInstance(mContext).remove(TaxiConst.SP_KEY_OCH_TAXI_ORDER); isRestartAutopilot = false; @@ -859,12 +889,38 @@ public class TaxiModel { isRestartAutopilot = true; } + AutopilotControlParameters parameters = initAutopilotControlParameters(); + + if (null == parameters) { + CallerLogger.INSTANCE.e(M_TAXI + TAG, "AutopilotControlParameters is empty."); + return; + } + + CallerAutoPilotManager.INSTANCE.startAutoPilot(parameters); + CallerLogger.INSTANCE.d(M_TAXI + TAG, "start autopilot with parameter: %s", GsonUtil.jsonFromObject(parameters) + + " ,startSiteName=" + mCurrentOCHOrder.startSiteAddr + " ,endSiteName=" + mCurrentOCHOrder.endSiteAddr); + + TaxiAnalyticsManager.getInstance().triggerStartAutopilotEvent(isRestartAutopilot, false, + mCurrentOCHOrder.startSiteAddr, mCurrentOCHOrder.endSiteAddr, mCurrentOCHOrder.orderNo); + + // TODO: 2021/8/20 无工控机环境, 手动调起自动驾驶开启返回结果,有工控机环境要删除 +// OCHTaxiUiController.getInstance().onAutoPilotStatusChanged( IMogoAdasOCHCallback.STATUS_AUTOPILOT_RUNNING, "开启自动驾驶" ); + } + + private AutopilotControlParameters initAutopilotControlParameters() { + + if (!checkCurrentOCHOrder()) { + CallerLogger.INSTANCE.e(M_TAXI + TAG, "no order or order is empty."); + return null; + } + + AutopilotControlParameters parameters = new AutopilotControlParameters(); + double startWgsLon = mCurrentOCHOrder.startSitePoint.get(0); double startWgsLat = mCurrentOCHOrder.startSitePoint.get(1); double endWgsLon = mCurrentOCHOrder.endSitePoint.get(0); double endWgsLat = mCurrentOCHOrder.endSitePoint.get(1); - AutopilotControlParameters parameters = new AutopilotControlParameters(); parameters.vehicleType = mCurrentOCHOrder.businessType; parameters.startName = PinYinUtil.getPinYinHeadChar(mCurrentOCHOrder.startSiteAddr); // 起点名称拼音首字母大写:科学城B区2号门(KXCBQ2HM) parameters.endName = PinYinUtil.getPinYinHeadChar(mCurrentOCHOrder.endSiteAddr); // 终点名称拼音首字母大写:科学城C区三号门(KXCCQSHM) @@ -880,15 +936,7 @@ public class TaxiModel { mCurrentOCHOrder.txtFileUrlDPQP, mCurrentOCHOrder.txtFileMd5DPQP, mCurrentOCHOrder.contrailSaveTimeDPQP); } - CallerAutoPilotManager.INSTANCE.startAutoPilot(parameters); - CallerLogger.INSTANCE.d(M_TAXI + TAG, "start autopilot with parameter: %s", GsonUtil.jsonFromObject(parameters) - + " ,startSiteName=" + mCurrentOCHOrder.startSiteAddr + " ,endSiteName=" + mCurrentOCHOrder.endSiteAddr); - - TaxiAnalyticsManager.getInstance().triggerStartAutopilotEvent(isRestartAutopilot, false, - mCurrentOCHOrder.startSiteAddr, mCurrentOCHOrder.endSiteAddr, mCurrentOCHOrder.orderNo); - - // TODO: 2021/8/20 无工控机环境, 手动调起自动驾驶开启返回结果,有工控机环境要删除 -// OCHTaxiUiController.getInstance().onAutoPilotStatusChanged( IMogoAdasOCHCallback.STATUS_AUTOPILOT_RUNNING, "开启自动驾驶" ); + return parameters; } //结束自动驾驶 @@ -913,18 +961,8 @@ public class TaxiModel { startLon, startLat, location.getLongitude(), location.getLatitude()); -// if (DebugConfig.isDebug() && mCurrentOCHOrder.orderStatus == TaxiOrderStatusEnum.OnTheWayToStart.getCode()) { -// // ToastUtils.showShort("距离上车点:" + Double.valueOf(distance).intValue()); -// } - CallerLogger.INSTANCE.i(M_TAXI + TAG, "judgeStartStation() distance = " + distance); -// if (distance > TaxiConst.ARRIVE_AT_START_STATION_DISTANCE) { -// distance = CoordinateUtils.calculateLineDistance(startLon, startLat, -// CallerAutoPilotStatusListenerManager.INSTANCE.getCurWgs84Lon(), -// CallerAutoPilotStatusListenerManager.INSTANCE.getCurWgs84Lat()); -// } - if (distance <= TaxiConst.ARRIVE_AT_START_STATION_DISTANCE) { arrivedStartPoint(); return; @@ -1011,12 +1049,6 @@ public class TaxiModel { CallerLogger.INSTANCE.i(M_TAXI + TAG, "judgeEndStation() distance = " + distance); -// if (distance > TaxiConst.ARRIVE_AT_START_STATION_DISTANCE) { -// distance = CoordinateUtils.calculateLineDistance(startLon, startLat, -// CallerAutoPilotStatusListenerManager.INSTANCE.getCurWgs84Lon(), -// CallerAutoPilotStatusListenerManager.INSTANCE.getCurWgs84Lat()); -// } - if (distance <= TaxiConst.ARRIVE_AT_START_STATION_DISTANCE) { if (!checkCurrentOCHOrder() || (getCurOrderStatus() == TaxiOrderStatusEnum.ArriveAtEnd)) { @@ -1277,9 +1309,7 @@ public class TaxiModel { private void reportTotalDisAndTime() { float lastSumLength = CoordinateCalculateRouteUtil.calculateRouteSumLength(mRoutePoints); double lastTime = lastSumLength / TaxiConst.TAXI_AVERAGE_SPEED * 3.6; //秒 -// if (mOrderStatusCallback != null) { -// mOrderStatusCallback.onCurrentOrderDistToEndChanged((long) lastSumLength, (long) lastTime); -// } + reportOrderRemain((long) lastSumLength, (long) lastTime); } @@ -1401,9 +1431,7 @@ public class TaxiModel { , new TaxiServiceCallback() { @Override public void onSuccess(TaxiDataBaseRespBean data) { - if (null != data && 0 == data.code){ - updateOrderStatus(TaxiOrderStatusEnum.UserArriveAtStart); - } + } @Override @@ -1425,9 +1453,7 @@ public class TaxiModel { , new TaxiServiceCallback() { @Override public void onSuccess(TaxiDataBaseRespBean data) { - if (null != data && 0 == data.code){ - updateOrderStatus(TaxiOrderStatusEnum.OnTheWayToEnd); - } + } @Override @@ -1447,9 +1473,7 @@ public class TaxiModel { , new TaxiServiceCallback() { @Override public void onSuccess(TaxiDataBaseRespBean data) { - if (null != data && 0 == data.code){ - updateOrderStatus(TaxiOrderStatusEnum.ArriveAtStart); - } + } @Override @@ -1470,9 +1494,7 @@ public class TaxiModel { , new TaxiServiceCallback() { @Override public void onSuccess(TaxiDataBaseRespBean data) { - if (null != data && 0 == data.code){ - updateOrderStatus(TaxiOrderStatusEnum.ArriveAtEnd); - } + } @Override @@ -1493,9 +1515,9 @@ public class TaxiModel { , new TaxiServiceCallback() { @Override public void onSuccess(TaxiDataBaseRespBean data) { - if (null != data && 0 == data.code){ - updateOrderStatus(TaxiOrderStatusEnum.JourneyCompleted); - } +// if (null != data && 0 == data.code){ +// updateOrderStatus(TaxiOrderStatusEnum.JourneyCompleted); +// } } @Override @@ -1504,16 +1526,6 @@ public class TaxiModel { } }); } - //更新当前订单状态 - public void updateOrderStatus(final TaxiOrderStatusEnum orderStatus) { - if (mCurrentOCHOrder == null) { - return; - } - mCurrentOCHOrder.orderStatus = orderStatus.getCode(); - if (mOrderStatusCallback != null) { - mOrderStatusCallback.onCurrentOrderStatusChanged(mCurrentOCHOrder); - } - } // 登出 public void logout() {