diff --git a/.idea/misc.xml b/.idea/misc.xml
index 2dc54c489f..707ee6e613 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -1,6 +1,6 @@
-
+
\ No newline at end of file
diff --git a/gradle.properties b/gradle.properties
index 39d4c3a7f2..7d4fdb99a8 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -66,7 +66,7 @@ MOGO_MODULE_GUIDESHOW_PROVIDER_VERSION=1.0.2-SNAPSHOT
# 在线车辆F
MOGO_MODULE_ONLINECAR_VERSION=1.0.3.1
# v2x
-MOGO_MODULE_V2X_VERSION=1.0.3.6
+MOGO_MODULE_V2X_VERSION=1.0.3.6-SNAPSHOT
# 媒体卡片
MOGO_MODULE_MEDIA_VERSION=1.0.4.3
# 推送
diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java
index 3204a1aeeb..cd223a66ea 100644
--- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java
+++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java
@@ -821,6 +821,10 @@ public class MapMarkerManager implements IMogoMarkerClickListener,
if (mCurrentModuleName.equals(ServiceConst.CARD_TYPE_BUSINESS_OPERATION )
|| mCurrentModuleName.equals(ServiceConst.CARD_TYPE_USER_DATA) ) {
+ if (MarkerServiceHandler.getMogoStatusManager().isSearchUIShow()){
+ return;
+ }
+
mRefreshModel.queryOnLineCarWithRoute(mCarLatLng, false, false, new RefreshCallback() {
@Override
public void onSuccess(Object o) {
@@ -829,11 +833,7 @@ public class MapMarkerManager implements IMogoMarkerClickListener,
if (result == null) {
return;
}
-
- for (int i = 0; i < carMarkers.size(); i++) {
- IMogoMarker marker = carMarkers.get(i);
- marker.destroy();
- }
+ removeCarMarkers();
List onlineCarList = result.getOnlineCar();
dispatchDataToBis(ServiceConst.CARD_TYPE_USER_DATA, onlineCarList == null ? new ArrayList<>() : onlineCarList);
drawOnlineCarMarkers(onlineCarList, ServiceConst.MAX_AMOUNT_SINGLE_CARD);
@@ -845,10 +845,14 @@ public class MapMarkerManager implements IMogoMarkerClickListener,
}
});
}else {
- for (int i = 0; i < carMarkers.size(); i++) {
- IMogoMarker marker = carMarkers.get(i);
- marker.destroy();
- }
+ removeCarMarkers();
+ }
+ }
+
+ private void removeCarMarkers(){
+ for (int i = 0; i < carMarkers.size(); i++) {
+ IMogoMarker marker = carMarkers.get(i);
+ marker.destroy();
}
}
@@ -860,12 +864,13 @@ public class MapMarkerManager implements IMogoMarkerClickListener,
List poisList = markerOnlineCar.getPois();
if (poisList != null && poisList.size() > 0) {
-// Logger.d(TAG, "在线" + poisList.toString());
+// Logger.d(TAG, "坐标------"+markerLocation.getLon()+", "+markerLocation.getLat());
List points = new ArrayList<>();
for (int j = 0; j < poisList.size(); j++) {
MarkerCarPois pois = poisList.get(j);
if (pois != null && pois.getCoordinates() != null && pois.getCoordinates().size() >= 2) {
+// Logger.d(TAG, "坐标点:" + pois.getCoordinates().toString());
double lat = Double.valueOf(pois.getCoordinates().get(1) + "");
double lng = Double.valueOf(pois.getCoordinates().get(0) + "");
points.add(new MogoLatLng(lat, lng));
diff --git a/modules/mogo-module-share/src/main/java/com/mogo/module/share/manager/SeekHelpManager.kt b/modules/mogo-module-share/src/main/java/com/mogo/module/share/manager/SeekHelpManager.kt
index 55cb1abf97..70050fb729 100644
--- a/modules/mogo-module-share/src/main/java/com/mogo/module/share/manager/SeekHelpManager.kt
+++ b/modules/mogo-module-share/src/main/java/com/mogo/module/share/manager/SeekHelpManager.kt
@@ -16,9 +16,11 @@ import com.mogo.module.share.net.ShareApiService
import com.mogo.utils.TipToast
import com.mogo.utils.logger.Logger
import com.mogo.utils.network.RequestOptions
+import com.mogo.utils.storage.SharedPrefsMgr
import com.zhidao.auto.platform.util.DeviceUtil
import io.reactivex.android.schedulers.AndroidSchedulers
import io.reactivex.schedulers.Schedulers
+import java.util.*
/**
* 故障求助管理类,相关故障求助操作的具体实现类
@@ -79,6 +81,7 @@ object SeekHelpManager {
* @param useLocalVoiceNotice 使用自己的语音播报,如果是从语音助手过来的请求,语音助手可能会走自己的播报,默认是使用自己的播报
*/
fun seekHelp(context: Context, seekHelpListener: ISeekHelpListener, useLocalVoiceNotice: Boolean = true) {
+ Logger.d(TAG, "seekHelp: $isSeeking")
if(!isSeeking) {
isSeeking = true
if (this.context == null) {
@@ -92,12 +95,16 @@ object SeekHelpManager {
isSeekHelp -> {
// 正在求助中,进行异常提示
toast("已发布故障求助,请耐心等待")
+ isSeeking = false
aiAssist?.speakTTSVoice("已发布故障求助,请耐心等待")
+ seekHelpSuccess()
}
getSeekAmountByLimitTime() >= SEEK_RECORD_LIMIT_AMOUNT -> {
// 超过限制时间内的限制次数,进行异常提示
toast("已在求助状态,请勿连续发布哦")
aiAssist?.speakTTSVoice("已在求助状态,请勿连续发布哦")
+ isSeeking = false
+ seekHelpSuccess()
}
else -> {
// 没有异常情况,开始故障求助
@@ -132,10 +139,10 @@ object SeekHelpManager {
*/
private fun getSeekAmountByLimitTime(): Int {
val current = SystemClock.elapsedRealtime()
- val recordIterator = seekRecordList.iterator()
- while (recordIterator.hasNext()) {
- if ((current - recordIterator.next().recordTime) >= SEEK_RECORD_LIMIT_TIME) {
- recordIterator.remove()
+ val iterator = seekRecordList.iterator()
+ while (iterator.hasNext()) {
+ if ((current - iterator.next().recordTime) >= SEEK_RECORD_LIMIT_TIME) {
+ iterator.remove()
}
}
return seekRecordList.size
@@ -155,13 +162,12 @@ object SeekHelpManager {
super.onSuccess(o)
// 接口请求成功,内部同步v2x状态,通知adas,改变自车图标
ShareControl.getInstance(context).mogoServiceApis.statusManagerApi.setSeekHelping("ShareDialog", true)
+ SharedPrefsMgr.getInstance(context!!).putLong("seek_help_time", System.currentTimeMillis())
isSeekHelp = true
aiAssist?.speakTTSVoice("已发布求助信息,将为你通知其他车主")
toast("已发布求助信息,将为你通知其他车主")
seekRecordList.add(SeekRecord(SystemClock.elapsedRealtime()))
- seekListenerList.forEach {
- it.onSeekHelpSuccess()
- }
+ seekHelpSuccess()
isSeeking = false
}
@@ -184,11 +190,22 @@ object SeekHelpManager {
})
}
+ private fun seekHelpSuccess(){
+ val iterator = seekListenerList.iterator()
+ while (iterator.hasNext()) {
+ iterator.next().onSeekHelpSuccess()
+ }
+ }
+
private fun seekHelpFail() {
isSeekHelp = false
- seekListenerList.forEach {
- it.onSeekHelpFail()
+ val iterator = seekListenerList.iterator()
+ while (iterator.hasNext()) {
+ iterator.next().onSeekHelpFail()
}
+// seekListenerList.forEach {
+// it.onSeekHelpFail()
+// }
toast("求助上报失败,请稍后重试")
aiAssist?.speakTTSVoice("求助上报失败,请稍后重试")
}