| | |
| | | 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; |
| | |
| | | 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; |
| | |
| | | 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; |
| | |
| | | // OneTimeWorkRequest examStatausOutWorker = OneTimeWorkRequest.from(ExamStatusOutWorker.class); |
| | | sendMapInfo(); |
| | | sendVechileInfo(); |
| | | sendRouteExam(); |
| | | DataInitKt.MCUUpgrade(getApplicationContext()); |
| | | DataInitKt.sendExamLights(getApplicationContext()); |
| | | DataInitKt.sendRtkConfig(getApplicationContext()); |
| | |
| | | |
| | | |
| | | }); |
| | | } |
| | | |
| | | 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() { |
| | |
| | | OneTimeWorkRequest examStatausOutWorker1 = new OneTimeWorkRequest.Builder(ExamStatusOutWorker.class) |
| | | .setInputData(data).build(); |
| | | WorkManager.getInstance(getApplicationContext()).enqueue(examStatausOutWorker1); |
| | | sendRouteExam(); |
| | | sendJudgeArgs(); |
| | | break; |
| | | } |
| | | } catch (JSONException e) { |