diff --git a/foudations/mogo-utils/src/main/java/com/mogo/utils/sqlite/SQLBaseDao.java b/foudations/mogo-utils/src/main/java/com/mogo/utils/sqlite/SQLBaseDao.java index 6d36051aee..762f31c1b9 100644 --- a/foudations/mogo-utils/src/main/java/com/mogo/utils/sqlite/SQLBaseDao.java +++ b/foudations/mogo-utils/src/main/java/com/mogo/utils/sqlite/SQLBaseDao.java @@ -254,6 +254,13 @@ public class SQLBaseDao implements SQLIDao { field.set(item, cursor.getLong(columnIndex)); } else if (fieldType == (Double.class)) { field.set(item, cursor.getDouble(columnIndex)); + } else if (fieldType == (Boolean.class)) { + int value = cursor.getInt(columnIndex); + if (value == 0) { + field.set(item, false); + } else { + field.set(item, true); + } } else if (fieldType == (byte[].class)) { field.set(item, cursor.getBlob(columnIndex)); } else { @@ -326,6 +333,8 @@ public class SQLBaseDao implements SQLIDao { sqlCreateTable.append(columnName).append(" BIGINT,"); } else if (fieldType == (Double.class)) { sqlCreateTable.append(columnName).append(" DOUBLE,"); + } else if (fieldType == (Boolean.class)) { + sqlCreateTable.append(columnName).append(" INTEGER,"); } else if (fieldType == (byte[].class)) { sqlCreateTable.append(columnName).append(" BLOB,"); } else { @@ -366,6 +375,12 @@ public class SQLBaseDao implements SQLIDao { contentValues.put(columnName, (Long) valueObject); } else if (fieldType == (Double.class)) { contentValues.put(columnName, (Double) valueObject); + } else if (fieldType == (Boolean.class)) { + if (((boolean) valueObject)) { + contentValues.put(columnName, 1); + } else { + contentValues.put(columnName, 0); + } } else if (fieldType == (byte[].class)) { contentValues.put(columnName, (byte[]) valueObject); } else { @@ -390,8 +405,19 @@ public class SQLBaseDao implements SQLIDao { Set> fieldIterator = cacheField.entrySet(); for (Map.Entry stringFieldEntry : fieldIterator) { if (stringFieldEntry.getValue().get(entity) != null) { - contentValues.put(stringFieldEntry.getKey(), - stringFieldEntry.getValue().get(entity).toString()); + // 针对Boolean类型进行处理 + if (stringFieldEntry.getValue().get(entity) instanceof Boolean) { + if ((boolean) stringFieldEntry.getValue().get(entity)) { + contentValues.put(stringFieldEntry.getKey(), "1"); + } else { + contentValues.put(stringFieldEntry.getKey(), "0"); + } + } + // 其它数据类型处理 + else { + contentValues.put(stringFieldEntry.getKey(), + stringFieldEntry.getValue().get(entity).toString()); + } } } } diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/V2XHistoryScenarioData.java b/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/V2XHistoryScenarioData.java index 046ca12db3..87093e57b9 100644 --- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/V2XHistoryScenarioData.java +++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/V2XHistoryScenarioData.java @@ -4,8 +4,6 @@ import com.mogo.utils.sqlite.annotation.DbDatabase; import com.mogo.utils.sqlite.annotation.DbField; import com.mogo.utils.sqlite.annotation.DbTable; -import java.util.Objects; - /** * V2X 道路历史事件 * @@ -33,6 +31,12 @@ public class V2XHistoryScenarioData { @DbField(fieldName = "eventJsonData") public String eventJsonData; + /** + * 事件是否被处理过了,true-处理过了。false-未处理过 + */ + @DbField(fieldName = "isDispose") + public Boolean isDispose; + public Integer getScenarioType() { return scenarioType; } @@ -56,4 +60,12 @@ public class V2XHistoryScenarioData { public void setTriggerTime(Long triggerTime) { this.triggerTime = triggerTime; } + + public Boolean isDispose() { + return isDispose; + } + + public void setDispose(Boolean dispose) { + isDispose = dispose; + } } diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XScenarioHistoryIllegalParkVH.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XScenarioHistoryIllegalParkVH.java index 00c081c16d..ae1cb8aba7 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XScenarioHistoryIllegalParkVH.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XScenarioHistoryIllegalParkVH.java @@ -1,30 +1,125 @@ package com.mogo.module.v2x.adapter.holder; import android.view.LayoutInflater; +import android.view.View; import android.view.ViewGroup; +import android.widget.TextView; import androidx.annotation.NonNull; +import com.mogo.module.common.entity.MarkerExploreWay; import com.mogo.module.common.entity.V2XHistoryScenarioData; import com.mogo.module.v2x.R; +import com.mogo.module.v2x.V2XConst; +import com.mogo.module.v2x.utils.RoadConditionUtils; +import com.mogo.module.v2x.utils.V2XSQLiteUtils; +import com.mogo.module.v2x.view.HeartLikeView; +import com.mogo.module.v2x.view.HeartUnLikeView; +import com.mogo.utils.logger.Logger; +import com.mogo.utils.network.utils.GsonUtil; /** * 出行面板违章停车 + * * @author donghongyu */ public class V2XScenarioHistoryIllegalParkVH extends V2XBaseViewHolder { + private TextView mTvAddress; + private TextView mTvIllegalNum; + + private TextView mTagEventType; + private TextView mTagEventEvaluate; + + private HeartLikeView mLlIllegalParkingLike; + private HeartUnLikeView mLlIllegalParkingUnLike; + + private MarkerExploreWay mExploreWay; + + private V2XHistoryScenarioData mOldScenarioData; + public V2XScenarioHistoryIllegalParkVH(@NonNull ViewGroup viewGroup) { super(LayoutInflater.from(viewGroup.getContext()) .inflate(R.layout.item_v2x_scennario_history, viewGroup, false)); + mTvAddress = (TextView) itemView.findViewById(R.id.tvAddress); + mTvIllegalNum = (TextView) itemView.findViewById(R.id.tvIllegalNum); + + mTagEventType = (TextView) itemView.findViewById(R.id.tagEventType); + mTagEventEvaluate = (TextView) itemView.findViewById(R.id.tagEventEvaluate); + + mLlIllegalParkingLike = (HeartLikeView) itemView.findViewById(R.id.llIllegalParkingLike); + mLlIllegalParkingUnLike = (HeartUnLikeView) itemView.findViewById(R.id.llIllegalParkingUnLike); } @Override public void initView(V2XHistoryScenarioData viewData) { + mOldScenarioData = viewData; + mExploreWay = GsonUtil.objectFromJson(viewData.getEventJsonData(), MarkerExploreWay.class); + mTvAddress.setText(mExploreWay.getAddr()); + try { + mTvIllegalNum.setText("违章人数:" + (int) mExploreWay.getItems().get(0).getIllegalCount()); + } catch (Exception e) { + e.printStackTrace(); + } + + if (!viewData.isDispose()) { + hideControlButton(View.VISIBLE); + } else { + hideControlButton(View.GONE); + } + + mLlIllegalParkingLike.setOnClickCallListener(v -> { + Logger.d(V2XConst.MODULE_NAME, "反馈有用"); + roadReportTrue(); + }); + + mLlIllegalParkingUnLike.setOnClickCallListener(v -> { + Logger.d(V2XConst.MODULE_NAME, "反馈无用"); + roadReportErr(); + }); + } + + void hideControlButton(int gone) { + mTagEventEvaluate.setVisibility(gone); + mLlIllegalParkingLike.setVisibility(gone); + mLlIllegalParkingUnLike.setVisibility(gone); } @Override public void delayedCloseWindow() { + hideControlButton(View.GONE); + // 进行数据库存储 + V2XHistoryScenarioData v2XHistoryScenarioData = new V2XHistoryScenarioData(); + v2XHistoryScenarioData.setScenarioType(mOldScenarioData.getScenarioType()); + v2XHistoryScenarioData.setTriggerTime(mOldScenarioData.getTriggerTime()); + v2XHistoryScenarioData.setEventJsonData(mOldScenarioData.getEventJsonData()); + v2XHistoryScenarioData.setDispose(true); + V2XSQLiteUtils.updateScenarioHistoryData(mOldScenarioData, v2XHistoryScenarioData); + } + /** + * 反馈路况正确 + */ + private void roadReportTrue() { + delayedCloseWindow(); + if (mExploreWay != null) { + RoadConditionUtils.sendShareReceiverInfo( + mExploreWay.getPoiType(), + mExploreWay.getInfoId(), + 2); + } + } + + /** + * 反馈路况错误 + */ + private void roadReportErr() { + delayedCloseWindow(); + if (mExploreWay != null) { + RoadConditionUtils.sendShareReceiverInfo( + mExploreWay.getPoiType(), + mExploreWay.getInfoId(), + 3); + } } } diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XScenarioHistoryRoadEventVH.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XScenarioHistoryRoadEventVH.java index 5fefb12852..15dd16e0d2 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XScenarioHistoryRoadEventVH.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XScenarioHistoryRoadEventVH.java @@ -1,12 +1,25 @@ package com.mogo.module.v2x.adapter.holder; import android.view.LayoutInflater; +import android.view.View; import android.view.ViewGroup; +import android.widget.ImageView; +import android.widget.TextView; import androidx.annotation.NonNull; +import com.mogo.module.common.entity.MarkerExploreWay; import com.mogo.module.common.entity.V2XHistoryScenarioData; import com.mogo.module.v2x.R; +import com.mogo.module.v2x.V2XConst; +import com.mogo.module.v2x.utils.EventTypeUtils; +import com.mogo.module.v2x.utils.RoadConditionUtils; +import com.mogo.module.v2x.utils.TimeUtils; +import com.mogo.module.v2x.utils.V2XSQLiteUtils; +import com.mogo.module.v2x.view.HeartLikeView; +import com.mogo.module.v2x.view.HeartUnLikeView; +import com.mogo.utils.logger.Logger; +import com.mogo.utils.network.utils.GsonUtil; /** * 出行面板道路事件面板 @@ -14,18 +27,105 @@ import com.mogo.module.v2x.R; * @author donghongyu */ public class V2XScenarioHistoryRoadEventVH extends V2XBaseViewHolder { + private TextView mTvAddress; + private TextView mTvIllegalNum; + private ImageView mIvIconP; + private TextView mTagEventType; + private TextView mTagEventEvaluate; + + private HeartLikeView mLlIllegalParkingLike; + private HeartUnLikeView mLlIllegalParkingUnLike; + + private MarkerExploreWay mExploreWay; + private V2XHistoryScenarioData mOldScenarioData; + public V2XScenarioHistoryRoadEventVH(@NonNull ViewGroup viewGroup) { super(LayoutInflater.from(viewGroup.getContext()) .inflate(R.layout.item_v2x_scennario_history, viewGroup, false)); + mTvAddress = (TextView) itemView.findViewById(R.id.tvAddress); + mTvIllegalNum = (TextView) itemView.findViewById(R.id.tvIllegalNum); + mIvIconP = (ImageView) itemView.findViewById(R.id.ivIconP); + mTagEventType = (TextView) itemView.findViewById(R.id.tagEventType); + mTagEventEvaluate = (TextView) itemView.findViewById(R.id.tagEventEvaluate); + + mLlIllegalParkingLike = (HeartLikeView) itemView.findViewById(R.id.llIllegalParkingLike); + mLlIllegalParkingUnLike = (HeartUnLikeView) itemView.findViewById(R.id.llIllegalParkingUnLike); } @Override public void initView(V2XHistoryScenarioData viewData) { + mOldScenarioData = viewData; + mExploreWay = GsonUtil.objectFromJson(viewData.getEventJsonData(), MarkerExploreWay.class); + mIvIconP.setVisibility(View.GONE); + mTvAddress.setText(mExploreWay.getAddr()); + mTagEventType.setText(EventTypeUtils.getPoiTypeStr(mExploreWay.getPoiType())); + + try { + mTvIllegalNum.setText(mExploreWay.getUserInfo().getUserName() + " 的分享 时间:" + + TimeUtils.millis2String(mExploreWay.getGenerateTime(), "MM月dd日 HH:mm")); + } catch (Exception e) { + e.printStackTrace(); + } + + if (!viewData.isDispose()) { + hideControlButton(View.VISIBLE); + } else { + hideControlButton(View.GONE); + } + + mLlIllegalParkingLike.setOnClickCallListener(v -> { + Logger.d(V2XConst.MODULE_NAME, "反馈有用"); + roadReportTrue(); + }); + + mLlIllegalParkingUnLike.setOnClickCallListener(v -> { + Logger.d(V2XConst.MODULE_NAME, "反馈无用"); + roadReportErr(); + }); + } + + void hideControlButton(int gone) { + mTagEventEvaluate.setVisibility(gone); + mLlIllegalParkingLike.setVisibility(gone); + mLlIllegalParkingUnLike.setVisibility(gone); } @Override public void delayedCloseWindow() { + hideControlButton(View.GONE); + // 进行数据库存储 + V2XHistoryScenarioData v2XHistoryScenarioData = new V2XHistoryScenarioData(); + v2XHistoryScenarioData.setScenarioType(mOldScenarioData.getScenarioType()); + v2XHistoryScenarioData.setTriggerTime(mOldScenarioData.getTriggerTime()); + v2XHistoryScenarioData.setEventJsonData(mOldScenarioData.getEventJsonData()); + v2XHistoryScenarioData.setDispose(true); + V2XSQLiteUtils.updateScenarioHistoryData(mOldScenarioData,v2XHistoryScenarioData); + } + /** + * 反馈路况正确 + */ + private void roadReportTrue() { + delayedCloseWindow(); + if (mExploreWay != null) { + RoadConditionUtils.sendShareReceiverInfo( + mExploreWay.getPoiType(), + mExploreWay.getInfoId(), + 2); + } + } + + /** + * 反馈路况错误 + */ + private void roadReportErr() { + delayedCloseWindow(); + if (mExploreWay != null) { + RoadConditionUtils.sendShareReceiverInfo( + mExploreWay.getPoiType(), + mExploreWay.getInfoId(), + 3); + } } } diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/impl/AbsV2XScenario.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/impl/AbsV2XScenario.java index 11bf1e6c79..d73d7906e7 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/impl/AbsV2XScenario.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/impl/AbsV2XScenario.java @@ -7,6 +7,8 @@ import androidx.annotation.Nullable; import com.mogo.commons.voice.AIAssist; import com.mogo.commons.voice.IMogoVoiceCmdCallBack; import com.mogo.commons.voice.VoicePreemptType; +import com.mogo.module.common.entity.MarkerExploreWay; +import com.mogo.module.common.entity.V2XHistoryScenarioData; import com.mogo.module.common.entity.V2XMessageEntity; import com.mogo.module.v2x.V2XConst; import com.mogo.module.v2x.V2XServiceManager; @@ -15,8 +17,11 @@ import com.mogo.module.v2x.scenario.IV2XScenario; import com.mogo.module.v2x.scenario.view.IV2XButton; import com.mogo.module.v2x.scenario.view.IV2XMarker; import com.mogo.module.v2x.scenario.view.IV2XWindow; +import com.mogo.module.v2x.utils.TimeUtils; +import com.mogo.module.v2x.utils.V2XSQLiteUtils; import com.mogo.module.v2x.utils.V2XUtils; import com.mogo.utils.logger.Logger; +import com.mogo.utils.network.utils.GsonUtil; /** * author : donghongyu @@ -94,4 +99,23 @@ public abstract class AbsV2XScenario implements IV2XScenario { return mV2XMessageEntity.equals(v2XMessageEntity); } + + /** + * 存储本地数据 + * + * @param markerExploreWay 要存储的场景 + */ + public void saveLocalStory(int scenarioType ,MarkerExploreWay markerExploreWay) { + try { + // 进行数据库存储 + V2XHistoryScenarioData v2XHistoryScenarioData = new V2XHistoryScenarioData(); + v2XHistoryScenarioData.setScenarioType(scenarioType); + v2XHistoryScenarioData.setTriggerTime(TimeUtils.getNowMills()); + v2XHistoryScenarioData.setEventJsonData(GsonUtil.jsonFromObject(markerExploreWay)); + v2XHistoryScenarioData.setDispose(false); + V2XSQLiteUtils.getScenarioHistoryDao().insert(v2XHistoryScenarioData); + } catch (Exception e) { + e.printStackTrace(); + } + } } diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/impl/V2XScenarioManager.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/impl/V2XScenarioManager.java index 91aecb9035..bae00b50ed 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/impl/V2XScenarioManager.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/impl/V2XScenarioManager.java @@ -62,16 +62,6 @@ public class V2XScenarioManager implements IV2XScenarioManager { V2XUtils.runOnUiThread(() -> { // 提取之前存储的场景 if (v2XMessageEntity != null) { - try { - // 进行数据库存储 - V2XHistoryScenarioData v2XHistoryScenarioData = new V2XHistoryScenarioData(); - v2XHistoryScenarioData.setScenarioType(v2XMessageEntity.getType()); - v2XHistoryScenarioData.setTriggerTime(TimeUtils.getNowMills()); - v2XHistoryScenarioData.setEventJsonData(GsonUtil.jsonFromObject(v2XMessageEntity.getContent())); - V2XSQLiteUtils.getScenarioHistoryDao().insert(v2XHistoryScenarioData); - } catch (Exception e) { - e.printStackTrace(); - } // 广播给应用内部其它模块 Intent intent = new Intent(V2XConst.BROADCAST_SCENE_ACTION); @@ -88,6 +78,7 @@ public class V2XScenarioManager implements IV2XScenarioManager { break; case V2XMessageEntity.V2XTypeEnum.ALERT_SEEK_WARNING: mV2XScenario = V2XSeekHelpScenario.getInstance(); + saveLocalStory(v2XMessageEntity); break; case V2XMessageEntity.V2XTypeEnum.ALERT_FATIGUE_DRIVING: mV2XScenario = V2XFatigueDrivingScenario.getInstance(); @@ -123,4 +114,23 @@ public class V2XScenarioManager implements IV2XScenarioManager { }); } } + + /** + * 存储本地数据 + * + * @param v2XMessageEntity 要存储的场景 + */ + void saveLocalStory(V2XMessageEntity v2XMessageEntity) { + try { + // 进行数据库存储 + V2XHistoryScenarioData v2XHistoryScenarioData = new V2XHistoryScenarioData(); + v2XHistoryScenarioData.setScenarioType(v2XMessageEntity.getType()); + v2XHistoryScenarioData.setTriggerTime(TimeUtils.getNowMills()); + v2XHistoryScenarioData.setDispose(false); + v2XHistoryScenarioData.setEventJsonData(GsonUtil.jsonFromObject(v2XMessageEntity.getContent())); + V2XSQLiteUtils.getScenarioHistoryDao().insert(v2XHistoryScenarioData); + } catch (Exception e) { + e.printStackTrace(); + } + } } diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/park/V2XIllegalParkScenario.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/park/V2XIllegalParkScenario.java index 2c8a11ddfc..2132f366c0 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/park/V2XIllegalParkScenario.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/park/V2XIllegalParkScenario.java @@ -16,6 +16,7 @@ import com.mogo.module.v2x.utils.TrackUtils; import java.util.ArrayList; import java.util.List; + /** * author : donghongyu * e-mail : 1358506549@qq.com @@ -83,6 +84,8 @@ public class V2XIllegalParkScenario extends AbsV2XScenario imp @Override public void show() { - if (getV2XMessageEntity() != null && getV2XMessageEntity().getContent() != null) { - // 设置TTS - getV2XMessageEntity().getContent().getTts(false); - // 广播给ADAS - ADASUtils.broadcastToADAS( - V2XServiceManager.getContext(), - getV2XMessageEntity().getContent()); - if (V2XServiceManager.getMoGoStatusManager().isMainPageLaunched()) { - showWindow(); - } + try { + if (getV2XMessageEntity() != null && getV2XMessageEntity().getContent() != null) { + // 设置TTS + getV2XMessageEntity().getContent().getTts(false); + // 广播给ADAS + ADASUtils.broadcastToADAS( + V2XServiceManager.getContext(), + getV2XMessageEntity().getContent()); - // 地图主动推送/触发消息 埋点 - String poiType = getV2XMessageEntity().getContent().getPoiType(); - String lat = String.valueOf(getV2XMessageEntity().getContent().getLocation().getLat()); - String lon = String.valueOf(getV2XMessageEntity().getContent().getLocation().getLon()); - String infoId = getV2XMessageEntity().getContent().getNoveltyInfo().getInfoId(); - String style = V2XServiceManager.getMoGoStatusManager().isMainPageOnResume() ? "1" : "2"; - Map properties = new HashMap<>(); - properties.put("dbid", infoId); - properties.put("type", poiType); - properties.put("lng", lon); - properties.put("lat", lat); - properties.put("style", style); - V2XServiceManager.getMogoAnalytics().track(V2XConst.V2X_ROAD_SHOW, properties); + saveLocalStory(V2XMessageEntity.V2XTypeEnum.ALERT_ROAD_WARNING, + getV2XMessageEntity().getContent().getNoveltyInfo()); + + if (V2XServiceManager.getMoGoStatusManager().isMainPageLaunched()) { + showWindow(); + } + + // 地图主动推送/触发消息 埋点 + String poiType = getV2XMessageEntity().getContent().getPoiType(); + String lat = String.valueOf(getV2XMessageEntity().getContent().getLocation().getLat()); + String lon = String.valueOf(getV2XMessageEntity().getContent().getLocation().getLon()); + String infoId = getV2XMessageEntity().getContent().getNoveltyInfo().getInfoId(); + String style = V2XServiceManager.getMoGoStatusManager().isMainPageOnResume() ? "1" : "2"; + Map properties = new HashMap<>(); + properties.put("dbid", infoId); + properties.put("type", poiType); + properties.put("lng", lon); + properties.put("lat", lat); + properties.put("style", style); + V2XServiceManager.getMogoAnalytics().track(V2XConst.V2X_ROAD_SHOW, properties); + } + } catch (Exception e) { + e.printStackTrace(); } } @@ -169,7 +177,7 @@ public class V2XRoadEventScenario extends AbsV2XScenario imp if (getV2XMarker() != null) { // 重置告警信息 V2XServiceManager.getV2XStatusManager().setAlarmInfo(getV2XMessageEntity().getContent()); - getV2XMarker() .drawPOI(getV2XMessageEntity().getContent()); + getV2XMarker().drawPOI(getV2XMessageEntity().getContent()); } } diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/utils/V2XSQLiteUtils.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/utils/V2XSQLiteUtils.java index 537764b210..e1eb9f6112 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/utils/V2XSQLiteUtils.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/utils/V2XSQLiteUtils.java @@ -73,4 +73,15 @@ public class V2XSQLiteUtils { return getScenarioHistoryDao().query(new V2XHistoryScenarioData(), "triggerTime", true); } + /** + * 修改指定的数据 + */ + public static void updateScenarioHistoryData(V2XHistoryScenarioData oldScenarioData, V2XHistoryScenarioData newScenarioData) { + try { + int result = getScenarioHistoryDao().update(oldScenarioData, newScenarioData); + Logger.d(V2XConst.MODULE_NAME, "修改数据成功:" + result); + } catch (Exception e) { + e.printStackTrace(); + } + } } diff --git a/modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_event_type_blue.xml b/modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_event_type_blue.xml index 7965420ae3..d04f7b325b 100644 --- a/modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_event_type_blue.xml +++ b/modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_event_type_blue.xml @@ -4,5 +4,5 @@ android:angle="180" android:endColor="#ff5cc1ff" android:startColor="#ff256bff"/> - + \ No newline at end of file diff --git a/modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_event_type_gray.xml b/modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_event_type_gray.xml index dee5978166..f77de0dd88 100644 --- a/modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_event_type_gray.xml +++ b/modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_event_type_gray.xml @@ -4,5 +4,5 @@ android:angle="180" android:endColor="#8384A9" android:startColor="#676982" /> - + \ No newline at end of file diff --git a/modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_event_type_orange.xml b/modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_event_type_orange.xml index cb8b072c1e..68e4fa978f 100644 --- a/modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_event_type_orange.xml +++ b/modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_event_type_orange.xml @@ -4,5 +4,5 @@ android:angle="180" android:endColor="#FFA757" android:startColor="#D48721" /> - + \ No newline at end of file diff --git a/modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_event_type_read.xml b/modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_event_type_read.xml index b0b57b6703..43b446e4c6 100644 --- a/modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_event_type_read.xml +++ b/modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_event_type_read.xml @@ -4,5 +4,5 @@ android:angle="180" android:endColor="#FF4944" android:startColor="#C23632" /> - + \ No newline at end of file diff --git a/modules/mogo-module-v2x/src/main/res/layout/item_v2x_scennario_history.xml b/modules/mogo-module-v2x/src/main/res/layout/item_v2x_scennario_history.xml index a1b298f389..bccdea1990 100644 --- a/modules/mogo-module-v2x/src/main/res/layout/item_v2x_scennario_history.xml +++ b/modules/mogo-module-v2x/src/main/res/layout/item_v2x_scennario_history.xml @@ -73,6 +73,7 @@ android:id="@+id/tvIllegalNum" android:layout_width="0dp" android:layout_height="wrap_content" + android:layout_marginTop="@dimen/dp_10" android:layout_marginBottom="@dimen/dp_24" android:alpha="0.6" android:gravity="center_vertical" diff --git a/modules/mogo-module-v2x/src/main/res/layout/item_v2x_scennario_history_other_help.xml b/modules/mogo-module-v2x/src/main/res/layout/item_v2x_scennario_history_other_help.xml index b93b7f57cf..827dbace7b 100644 --- a/modules/mogo-module-v2x/src/main/res/layout/item_v2x_scennario_history_other_help.xml +++ b/modules/mogo-module-v2x/src/main/res/layout/item_v2x_scennario_history_other_help.xml @@ -21,7 +21,7 @@ android:paddingTop="@dimen/dp_3" android:paddingRight="@dimen/dp_10" android:paddingBottom="@dimen/dp_3" - android:text="违章停车" + android:text="求助信息" android:textColor="#ffffff" android:textSize="@dimen/dp_28" app:layout_constraintTop_toTopOf="parent" />