diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/V2XRecommendRouteEntity.java b/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/V2XRecommendRouteEntity.java deleted file mode 100644 index b31673bcb2..0000000000 --- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/V2XRecommendRouteEntity.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.mogo.module.common.entity; - -import java.util.List; - -/** - * created by wujifei on 2020/12/24 15:33 - * describe:基于目的地预判的道路事件 - */ -public class V2XRecommendRouteEntity { - private List toPoint; //目的地坐标 - private String formatAddress; //目的地地址 - private String tts; //播报内容 - - public List getToPoint() { - return toPoint; - } - - public void setToPoint(List toPoint) { - this.toPoint = toPoint; - } - - public String getFormatAddress() { - return formatAddress; - } - - public void setFormatAddress(String formatAddress) { - this.formatAddress = formatAddress; - } - - public String getTts() { - tts = "主人,我发现前往" + formatAddress + "沿途有拥堵,推荐你导航最优路线,现在开启导航吗?"; - return tts; - } -} diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/V2XRecommendRouteEntity.kt b/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/V2XRecommendRouteEntity.kt new file mode 100644 index 0000000000..10c8191fb7 --- /dev/null +++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/V2XRecommendRouteEntity.kt @@ -0,0 +1,17 @@ +package com.mogo.module.common.entity + +/** + * created by wujifei on 2020/12/24 15:33 + * describe:基于目的地预判的道路事件 + */ +data class V2XRecommendRouteEntity( + var toPoint: List,//目的地坐标 + var formatAddress: String//目的地地址 +) { + var tts: String? = null //播报内容 + get() { + field = "主人,我发现前往" + formatAddress + "沿途有拥堵,推荐你导航最优路线,现在开启导航吗?" + return field + } + private set +} \ No newline at end of file diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XRecommendRouteVH.kt b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XRecommendRouteVH.kt index 8cac03b737..924d0b0ea0 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XRecommendRouteVH.kt +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XRecommendRouteVH.kt @@ -62,12 +62,12 @@ class V2XRecommendRouteVH(viewGroup: ViewGroup, v2XWindow: IV2XWindow<*>) : V2XB override fun initView(viewData: V2XEventShowEntity?) { viewData?.let { val markerLocation = MarkerLocation() - markerLocation.lon = it.getV2XRecommendRouteEntity().getToPoint().get(0) - markerLocation.lat = it.getV2XRecommendRouteEntity().getToPoint().get(1) + markerLocation.lon = it.getV2XRecommendRouteEntity().toPoint.get(0) + markerLocation.lat = it.getV2XRecommendRouteEntity().toPoint.get(1) mNoveltyInfo = MarkerExploreWay() mNoveltyInfo?.setLocation(markerLocation) - mTvAddress!!.text = "前往 ${it.getV2XRecommendRouteEntity().getFormatAddress()}" - AIAssist.getInstance(V2XUtils.getApp()).speakTTSVoice(it.getV2XRecommendRouteEntity().getTts(), VoicePreemptType.PREEMPT_TYPE_IMMEADIATELY, null) + mTvAddress!!.text = "前往 ${it.getV2XRecommendRouteEntity().formatAddress}" + AIAssist.getInstance(V2XUtils.getApp()).speakTTSVoice(it.getV2XRecommendRouteEntity().tts, VoicePreemptType.PREEMPT_TYPE_IMMEADIATELY, null) } } diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/network/V2XRefreshModel.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/network/V2XRefreshModel.java index c782d288a3..ee2d1489e7 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/network/V2XRefreshModel.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/network/V2XRefreshModel.java @@ -19,6 +19,7 @@ import com.mogo.map.search.geo.MogoGeocodeResult; import com.mogo.map.search.geo.MogoRegeocodeResult; import com.mogo.module.common.entity.MarkerResponse; import com.mogo.module.common.entity.V2XMessageEntity; +import com.mogo.module.common.entity.V2XPoiTypeEnum; import com.mogo.module.common.entity.V2XRecommendRouteEntity; import com.mogo.module.service.ServiceConst; import com.mogo.module.service.network.RefreshBody; @@ -714,22 +715,30 @@ public class V2XRefreshModel { } private void sendBroadcast(V2XRoadDataRes v2XRoadDataRes) { + boolean isSendRecommendRoute = false; if (v2XRoadDataRes.getResult().getPoiData() != null && v2XRoadDataRes.getResult().getPoiData().size() > 0) { - V2XRecommendRouteEntity v2XRecommendRouteEntity = new V2XRecommendRouteEntity(); - v2XRecommendRouteEntity.setToPoint(v2XRoadDataRes.getResult().getTopPoint()); - v2XRecommendRouteEntity.setFormatAddress(v2XRoadDataRes.getResult().getFormatAddress()); + for (V2XRoadDataRes.ResultDTO.PoiDataDTO poiDataDTO : v2XRoadDataRes.getResult().getPoiData()) { + if (!V2XPoiTypeEnum.FOURS_LIVING.equals(poiDataDTO.getPoiType())) { + isSendRecommendRoute = true; + break; + } + } + } + if (isSendRecommendRoute) { V2XMessageEntity v2xMessageEntity = new V2XMessageEntity<>(); // 控制类型 v2xMessageEntity.setType(V2XMessageEntity.V2XTypeEnum.ALERT_RECOMMEND_ROUTE); // 设置数据 - v2xMessageEntity.setContent(v2XRecommendRouteEntity); + v2xMessageEntity.setContent(new V2XRecommendRouteEntity(v2XRoadDataRes.getResult().getTopPoint(), v2XRoadDataRes.getResult().getFormatAddress())); // 控制展示状态 v2xMessageEntity.setShowState(true); Intent intent = new Intent(V2XConst.BROADCAST_SCENE_HANDLER_ACTION); intent.putExtra(V2XConst.BROADCAST_SCENE_EXTRA_KEY, v2xMessageEntity); LocalBroadcastManager.getInstance(V2XUtils.getApp()).sendBroadcast(intent); - } else if (v2XRoadDataRes.getResult().getIllegalParkingData() != null && v2XRoadDataRes.getResult().getIllegalParkingData().size() > 0) { + } + + if (!isSendRecommendRoute && v2XRoadDataRes.getResult().getIllegalParkingData() != null && v2XRoadDataRes.getResult().getIllegalParkingData().size() > 0) { // TODO: 2020/12/30 } } diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/test/V2XTestConsoleWindow.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/test/V2XTestConsoleWindow.java index f474f567a5..61e5a72ac6 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/test/V2XTestConsoleWindow.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/test/V2XTestConsoleWindow.java @@ -57,7 +57,7 @@ public class V2XTestConsoleWindow extends ConstraintLayout { private Button mBtnTriggerCallUserInfo; private Button mBtnTriggerEventUgc; private Button mBtnTriggerTrafficSearch; - private Button mBtnTriggerPrejectedRoadEvent; + private Button mBtnTriggerRecommendRouteEvent; private Button nBtnTriggerVR; private Button btnTriggerRearVIPCarTip, @@ -118,7 +118,7 @@ public class V2XTestConsoleWindow extends ConstraintLayout { mBtnTriggerEventUgc = findViewById(R.id.btnTriggerEventUgc); mBtnTriggerCallUserInfo = findViewById(R.id.btnTriggerCallUserInfo); mBtnTriggerTrafficSearch = findViewById(R.id.btnTriggerTrafficSearch); - mBtnTriggerPrejectedRoadEvent = findViewById(R.id.btnTriggerPrejectedRoadEvent); + mBtnTriggerRecommendRouteEvent = findViewById(R.id.btnTriggerRecommendRouteEvent); nBtnTriggerVR = findViewById(R.id.btnTriggerVR); switch (showType) { @@ -279,7 +279,7 @@ public class V2XTestConsoleWindow extends ConstraintLayout { mBtnTriggerTrafficSearch.setOnClickListener(v -> V2XServiceManager.getIMogoTrafficUploadProvider().verifyCurrentTrafficStatus()); - mBtnTriggerPrejectedRoadEvent.setOnClickListener(view -> { + mBtnTriggerRecommendRouteEvent.setOnClickListener(view -> { V2XServiceManager.getV2XRefreshModel().queryRoadData("ZD802C1938L10797"); }); diff --git a/modules/mogo-module-v2x/src/main/res/layout/window_test_console.xml b/modules/mogo-module-v2x/src/main/res/layout/window_test_console.xml index 6936631ec6..71209e7cca 100644 --- a/modules/mogo-module-v2x/src/main/res/layout/window_test_console.xml +++ b/modules/mogo-module-v2x/src/main/res/layout/window_test_console.xml @@ -211,7 +211,7 @@ app:layout_constraintStart_toStartOf="parent" />