From 43e3df53484d02fb50ab073fa23a31a95b9dbc2f Mon Sep 17 00:00:00 2001
From: endian11 <Dana_Lee1016@126.com>
Date: 星期四, 29 十月 2020 11:23:49 +0800
Subject: [PATCH] app重启以及服务重启重新发送考试/训练线路
---
app/src/main/java/safeluck/drive/evaluation/app.java | 70 +++++++++++++++++++++++++++++++++++
1 files changed, 70 insertions(+), 0 deletions(-)
diff --git a/app/src/main/java/safeluck/drive/evaluation/app.java b/app/src/main/java/safeluck/drive/evaluation/app.java
index 50fa403..426546e 100644
--- a/app/src/main/java/safeluck/drive/evaluation/app.java
+++ b/app/src/main/java/safeluck/drive/evaluation/app.java
@@ -23,6 +23,7 @@
import com.anyun.basecommonlib.MyLog;
import com.anyun.exam.lib.crash.CrashHandler;
import com.facebook.stetho.Stetho;
+import com.google.gson.Gson;
import com.google.gson.JsonArray;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
@@ -34,6 +35,7 @@
import java.io.BufferedReader;
import java.io.File;
import java.io.InputStreamReader;
+import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.concurrent.Executors;
@@ -48,8 +50,12 @@
import safeluck.drive.evaluation.DB.failitems.FailedProj;
import safeluck.drive.evaluation.DB.failitems.LuKaoFailedProj;
import safeluck.drive.evaluation.DB.gps.GpsInfoWorker;
+import safeluck.drive.evaluation.DB.route.RouteCross;
+import safeluck.drive.evaluation.DB.route.RouteTriggerLine;
import safeluck.drive.evaluation.DB.rtktb.RTKConfigUpdateWorker;
import safeluck.drive.evaluation.bean.ExamPlatformData;
+import safeluck.drive.evaluation.bean.RemoteRouteCollect;
+import safeluck.drive.evaluation.bean.RouteCollect;
import safeluck.drive.evaluation.cEventCenter.CEventCenter;
import safeluck.drive.evaluation.im.MessageProcessor;
import safeluck.drive.evaluation.platformMessage.AttachInfo;
@@ -119,6 +125,7 @@
// OneTimeWorkRequest examStatausOutWorker = OneTimeWorkRequest.from(ExamStatusOutWorker.class);
sendMapInfo();
sendVechileInfo();
+ sendRouteExam();
DataInitKt.MCUUpgrade(getApplicationContext());
DataInitKt.sendExamLights(getApplicationContext());
DataInitKt.sendRtkConfig(getApplicationContext());
@@ -130,6 +137,67 @@
});
+ }
+
+ private void sendRouteExam() {
+ if (CThreadPoolExecutor.isOnMainThread()){
+ Log.i(TAG,"sendRouteExam 杩愯鍦ㄤ富绾匡紝闇�瑕佸湪瀛愮嚎绋嬪彂閫佺嚎璺�");
+ CThreadPoolExecutor.runInBackground(()->{
+ opDBAndSendRoute();
+ });
+ }else{
+ Log.i(TAG,"sendRouteExam 杩愯瀛愮嚎绋�");
+ opDBAndSendRoute();
+ }
+ }
+
+ private void opDBAndSendRoute() {
+ List<RouteCollect.CrossingActiveBean> crossingActiveBeans = new ArrayList<>();
+ List<RouteCollect.TriggerLineBean> triggerLineBeans = new ArrayList<>();
+ List<Double> xy = new ArrayList<>();
+ RemoteRouteCollect remoteRouteCollect = new RemoteRouteCollect();
+ RouteCollect routeCollect = new RouteCollect();
+ List<RouteCollect> routeCollects = new ArrayList<>();
+ String routeName = WorkRoomDataBase.getWorkRoomDataBase(getApplicationContext()).getRouteBeanDao().getCurrRouteName(ExamPlatformData.getInstance().getExamRoute());
+ routeCollect.setName(routeName);
+ List<RouteTriggerLine> routeTriggerLines = WorkRoomDataBase.getWorkRoomDataBase(getApplicationContext()).getRouteTriggerLineDao().getAllRouteTriggerLine(ExamPlatformData.getInstance().getExamRoute());
+ List<RouteCross> routeCrosses = WorkRoomDataBase.getWorkRoomDataBase(getApplicationContext().getApplicationContext()).getRouteCrooDao().getAllRouteCross(ExamPlatformData.getInstance().getExamRoute());
+ for (RouteTriggerLine line:routeTriggerLines){
+ RouteCollect.TriggerLineBean triggerLineBean = new RouteCollect.TriggerLineBean();
+ int road = line.getRoad();
+ int type = line.getType();
+
+ double x = line.getX();
+ double y = line.getY();
+ xy.clear();
+ xy.add(x);
+ xy.add(y);
+ triggerLineBean.setRoad(road);
+ triggerLineBean.setType(type);
+ triggerLineBean.setX_y(xy);
+ triggerLineBeans.add(triggerLineBean);
+
+
+ }
+ routeCollect.setTrigger_line(triggerLineBeans);
+
+ for (RouteCross routeCross:routeCrosses){
+ int idx = routeCross.getIdx();
+ int road = routeCross.getRoad();
+ int active = routeCross.getActive();
+ RouteCollect.CrossingActiveBean crossingActiveBean = new RouteCollect.CrossingActiveBean();
+ crossingActiveBean.setActive(active);
+ crossingActiveBean.setIdx(idx);
+ crossingActiveBean.setRoad(road);
+ crossingActiveBeans.add(crossingActiveBean);
+ }
+ routeCollect.setCrossing_active(crossingActiveBeans);
+ routeCollects.add(routeCollect);
+
+ remoteRouteCollect.setScheme(routeCollects);
+ String str = new Gson().toJson(remoteRouteCollect);
+ Log.i(TAG,"json====="+str);
+ AYSdk.getInstance().sendCmd(0x8017,str);
}
private void sendJudgeArgs() {
@@ -340,6 +408,8 @@
OneTimeWorkRequest examStatausOutWorker1 = new OneTimeWorkRequest.Builder(ExamStatusOutWorker.class)
.setInputData(data).build();
WorkManager.getInstance(getApplicationContext()).enqueue(examStatausOutWorker1);
+ sendRouteExam();
+ sendJudgeArgs();
break;
}
} catch (JSONException e) {
--
Gitblit v1.8.0