lizhanwei
2021-04-28 ab72f8ee3179da36dde53eb16f55a3ef98d9ac26
修改线路
6个文件已修改
113 ■■■■ 已修改文件
app/src/main/assets/routeline.json 69 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/DB/WorkRoomDataBase.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/DB/route/RouteBeanDao.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/DB/route/RouteInitWorker.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/bean/ExamPlatformData.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/fragment/ArcGisMapFragment.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/assets/routeline.json
@@ -1,50 +1,81 @@
[
  {
    "name":"线路一",
    "name":"宝丰线路一",
    "crossing_active":[
      {
        "road":2,
        "idx":0,
        "active":2
      },
      {
        "road":3,
        "idx":1,
        "active":1
      },
      {
        "road":2,
        "idx":1,
        "road":4,
        "idx":2,
        "active":8
      },
      {
        "road":5,
        "idx":3,
        "active":1
      },
      {
        "road":6,
        "idx":4,
        "active":4
      }
    ],
    "trigger_line":[
      {
        "x_y":[
          333.365,
          696.3354
          415833.6027,
          3747129.1491
        ],
        "road":6,
        "type":5
      },
      {
        "x_y":[
          415756.9158,
          3747276.4095
        ],
        "road":2,
        "type":3
      },
      {
        "x_y":[
          415440.6167,
          3747377.5759
        ],
        "road":3,
        "type":2
      },
      {
        "x_y":[
          333.365,
          696.3354
          415104.431,
          3747470.8096
        ],
        "road":4,
        "type":1
      },
      {
        "x_y":[
          415535.7815,
          3747331.2173
        ],
        "road":5,
        "type":4
      },
      {
        "x_y":[
          333.365,
          696.3354
          415365.1585,
          3747386.3017
        ],
        "road":3,
        "type":3
      },
      {
        "x_y":[
          333.365,
          696.3354
        ],
        "road":6,
        "type":1
        "road":4,
        "type":6
      }
    ]
  }
app/src/main/java/safeluck/drive/evaluation/DB/WorkRoomDataBase.java
@@ -111,7 +111,7 @@
                                    OneTimeWorkRequest appStatusInitWork = OneTimeWorkRequest.from(AppStatusInitWork.class);
                                    OneTimeWorkRequest examStatusInitWorker = OneTimeWorkRequest.from(ExamStatusInitWorker.class);
                                    OneTimeWorkRequest signalConigInitWorker = OneTimeWorkRequest.from(SignalConfigInitWorker.class);
                                    OneTimeWorkRequest routeInitWorker = OneTimeWorkRequest.from(RouteInitWorker.class);
                                    Log.i(TAG, "onCreate: 创建数据库后建立数据表插入数据");
//                                    WorkManager.getInstance(mContext).enqueue(oneTimeWorkRequest);
//                                    WorkManager.getInstance(mContext).enqueue(oneTimeWorkRequest1);
@@ -126,7 +126,7 @@
//单路径执行,可以实现更加复杂的多路径执行方式
                                    WorkContinuation chain1= WorkManager.getInstance(mContext).beginWith(Arrays.asList(oneTimeWorkRequest,criteriaInitWorkRequest,lightAllQuestInitWorker))
                                            .then(lightAllAnswerInitWorker).then(oneTimeWorkRequest3);
                                    WorkContinuation chain2 = WorkManager.getInstance(mContext).beginWith(Arrays.asList(RTKConfigWorkRequest,appStatusInitWork,signalConigInitWorker,routeInitWorker))
                                    WorkContinuation chain2 = WorkManager.getInstance(mContext).beginWith(Arrays.asList(RTKConfigWorkRequest,appStatusInitWork,signalConigInitWorker/*,routeInitWorker*/))
                                            .then(oneTimeWorkRequest2).then(examStatusInitWorker);
                                    WorkContinuation chain3 = WorkContinuation.combine(Arrays.asList(chain1,chain2));
@@ -137,6 +137,8 @@
                                public void onOpen(@NonNull SupportSQLiteDatabase db) {
                                    super.onOpen(db);
                                    Log.i(TAG, "onOpen: ");
                                    OneTimeWorkRequest routeInitWorker = OneTimeWorkRequest.from(RouteInitWorker.class);
                                    WorkManager.getInstance(mContext).enqueue(routeInitWorker);
                                }
                            })
                            .build();
app/src/main/java/safeluck/drive/evaluation/DB/route/RouteBeanDao.java
@@ -19,6 +19,8 @@
public interface RouteBeanDao {
    @Query("SELECT * FROM RouteBean")
    LiveData<List<RouteBean>> getAllRoutes();
    @Query("SELECT * FROM RouteBean order by id desc limit 0,1")
    RouteBean getLastRoute();
    @Query("SELECT * FROM RouteBean where currentCollectFlag=1")
    RouteBean getCurrRouteBean();
    @Query("SELECT routeName FROM RouteBean where id=:mId")
app/src/main/java/safeluck/drive/evaluation/DB/route/RouteInitWorker.java
@@ -51,27 +51,32 @@
                RouteBean routeBean = new RouteBean();
                routeBean.setRouteName(mstus.get(i).getName());
                WorkRoomDataBase.getWorkRoomDataBase(getApplicationContext()).getRouteBeanDao().insertRouteBean(routeBean);
                RouteBean route =  WorkRoomDataBase.getWorkRoomDataBase(getApplicationContext()).getRouteBeanDao().getLastRoute();
                RouteCollect routeCollect = mstus.get(i);
                List<RouteCollect.CrossingActiveBean>crossingActiveBeans = routeCollect.getCrossing_active();
                List<RouteCollect.TriggerLineBean> triggerLineBeans = routeCollect.getTrigger_line();
                Log.i(TAG,String.format("triggerLineBeans.size=%d,crossingActiveBeans.size=%d",triggerLineBeans.size(),crossingActiveBeans.size()));
                for (RouteCollect.TriggerLineBean bean:triggerLineBeans){
                    RouteTriggerLine routeTriggerLine = new RouteTriggerLine();
                    routeTriggerLine.setRoad(bean.getRoad());
                    routeTriggerLine.setRouteline_id(i+1);
                    routeTriggerLine.setRouteline_id(route.getId());
                    routeTriggerLine.setType(bean.getType());
                    routeTriggerLine.setX(bean.getX_y().get(0));
                    routeTriggerLine.setY(bean.getX_y().get(1));
                    WorkRoomDataBase.getWorkRoomDataBase(getApplicationContext()).getRouteTriggerLineDao().insertTriggerLine(routeTriggerLine);
                }
                for (RouteCollect.CrossingActiveBean bean:crossingActiveBeans){
                    RouteCross routeCross = new RouteCross();
                    routeCross.setActive(bean.getActive());
                    routeCross.setIdx(bean.getIdx());
                    routeCross.setRoad(bean.getRoad());
                    routeCross.setRouteline_id(i+1);
                    WorkRoomDataBase.getWorkRoomDataBase(getApplicationContext()).getRouteCrooDao().insertRouteCross(routeCross);
                if (crossingActiveBeans != null && crossingActiveBeans.size()>0){
                    for (RouteCollect.CrossingActiveBean bean:crossingActiveBeans){
                        RouteCross routeCross = new RouteCross();
                        routeCross.setActive(bean.getActive());
                        routeCross.setIdx(bean.getIdx());
                        routeCross.setRoad(bean.getRoad());
                        routeCross.setRouteline_id(i+1);
                        WorkRoomDataBase.getWorkRoomDataBase(getApplicationContext()).getRouteCrooDao().insertRouteCross(routeCross);
                    }
                }
            }
        } catch (IOException e) {
app/src/main/java/safeluck/drive/evaluation/bean/ExamPlatformData.java
@@ -652,7 +652,7 @@
    private String yardMmpkPath="";
    public void setRoadMMPKPath(String roadMmpkPath) {
        this.roadMmpkPath = roadMmpkPath;
        SPUtils.put(app.getAppContext(),SPUtils.ROAD_MMPK,yardMmpkPath);
        SPUtils.put(app.getAppContext(),SPUtils.ROAD_MMPK,roadMmpkPath);
    }
    public String getRoadMmpkPath(){
@@ -669,4 +669,16 @@
        this.yardMmpkPath = yardMmpkPath;
        SPUtils.put(app.getAppContext(),SPUtils.YARD_MMPK,yardMmpkPath);
    }
    private int enter_exit = -1;
    /**
     * 用一个viewmodel监听 场地 enter_status 如果变化==1,表示该项目进入开始考试
     * @param enter_status
     */
    public void setYardItemBegin(int enter_status) {
        this.enter_exit = enter_status;
    }
    public int getYardEnterOrExit(){
        return enter_exit;
    }
}
app/src/main/java/safeluck/drive/evaluation/fragment/ArcGisMapFragment.java
@@ -278,6 +278,7 @@
        }else{
            if (ExamPlatformData.getInstance().getExamType()>ExamPlatformData.EXAM_TYPE_ChangKAO){
                url = ExamPlatformData.getInstance().getRoadMmpkPath();
                MyLog.i(TAG,"现在加载lu:"+url);
                boolean isExist = FileUtil.isFileExist(url);
                if (!isExist){
                    Toast.makeText(_mActivity, "请在\"设置\"里选择道路离线地图包", Toast.LENGTH_SHORT).show();