From a953c5eb89e84d75a6359a2a2f6678b0d90f7efd Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Wed, 22 Jul 2020 10:04:25 +0800 Subject: [PATCH] opt: UI-837 --- .../service/marker/MapMarkerManager.java | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) 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 d762476e0c..0ecbff9324 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 @@ -398,7 +398,9 @@ public class MapMarkerManager implements IMogoMarkerClickListener, for ( Object entity : newList ) { String sn = getPrimaryKeyFromEntity( entity ); if ( allMap.containsKey( sn ) ) { - existMap.put( sn, allMap.get( sn ) ); + if ( !isNewVehicleType( entity, allMap.get( sn ) ) ) { + existMap.put( sn, allMap.get( sn ) ); + } } } for ( String sn : allMap.keySet() ) { @@ -413,6 +415,21 @@ public class MapMarkerManager implements IMogoMarkerClickListener, return existMap; } + private boolean isNewVehicleType( Object object, IMogoMarker marker ) { + if ( object instanceof MarkerOnlineCar + && marker != null + && marker.getObject() instanceof MarkerShowEntity + && ( ( MarkerShowEntity ) marker.getObject() ).getBindObj() instanceof MarkerOnlineCar ) { + try { + return ( ( MarkerOnlineCar ) object ).getCarInfo().getVehicleType() + != ( ( MarkerOnlineCar ) ( ( MarkerShowEntity ) marker.getObject() ).getBindObj() ).getCarInfo().getVehicleType(); + } catch ( Exception e ) { + + } + } + return false; + } + private String getPrimaryKeyFromEntity( Object entity ) { if ( entity instanceof MarkerExploreWay ) { String id = ( ( MarkerExploreWay ) entity ).getInfoId();