fctom1215
2021-04-28 2dd6fa41c2391ae53569260e671402a900a7a143
routeline放在包名下,在设置里进行手动更新线路
4个文件已修改
49 ■■■■■ 已修改文件
app/src/main/java/safeluck/drive/evaluation/DB/Constant.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/DB/route/RouteInitWorker.java 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/fragment/SetArgumentsFragment.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/res/layout/layout_base_datas.xml 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/DB/Constant.java
@@ -27,4 +27,5 @@
    public static final int BEGIN_ITEM = 1;//该项考试开始进入场地
    public static final int EXAM_STATUS_MAP_ID = -1;
    public static final String CRITERIA_JSON = "criteria.json";
    public static final String ROUTELINE_JSON = "routeline.json";
}
app/src/main/java/safeluck/drive/evaluation/DB/route/RouteInitWorker.java
@@ -1,6 +1,7 @@
package safeluck.drive.evaluation.DB.route;
import android.content.Context;
import android.os.Environment;
import android.util.Log;
import androidx.annotation.NonNull;
@@ -11,6 +12,8 @@
import com.google.gson.reflect.TypeToken;
import com.google.gson.stream.JsonReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
@@ -18,6 +21,7 @@
import java.util.List;
import okhttp3.Route;
import safeluck.drive.evaluation.DB.Constant;
import safeluck.drive.evaluation.DB.Student;
import safeluck.drive.evaluation.DB.WorkRoomDataBase;
import safeluck.drive.evaluation.bean.RouteCollect;
@@ -39,9 +43,21 @@
    public Result doWork() {
        Log.i(TAG, "doWork: "+Thread.currentThread().getId());
        try {
            InputStream inputStream = getApplicationContext().getAssets().open("routeline.json");
            File file = new File(Environment.getExternalStorageDirectory()+File.separator+getApplicationContext().getPackageName()+
                    File.separator+ Constant.ROUTELINE_JSON);
            if (!file.exists()){
                return Result.failure();
            }
            InputStream inputStream = null;
            try {
                inputStream =new FileInputStream(file);
            } catch (IOException e) {
                e.printStackTrace();
            }
            InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
            JsonReader jsonReader = new JsonReader(inputStreamReader);
            Gson gson = new Gson();
            Type type = new TypeToken<List<RouteCollect>>(){}.getType();
@@ -71,7 +87,7 @@
                        routeCross.setActive(bean.getActive());
                        routeCross.setIdx(bean.getIdx());
                        routeCross.setRoad(bean.getRoad());
                        routeCross.setRouteline_id(i+1);
                        routeCross.setRouteline_id(route.getId());
                        WorkRoomDataBase.getWorkRoomDataBase(getApplicationContext()).getRouteCrooDao().insertRouteCross(routeCross);
                    }
                }
@@ -79,7 +95,7 @@
            }
        } catch (IOException e) {
        } catch (Exception e) {
            e.printStackTrace();
            return Result.failure();
        }
app/src/main/java/safeluck/drive/evaluation/fragment/SetArgumentsFragment.java
@@ -49,6 +49,7 @@
import safeluck.drive.evaluation.DB.appstatusdb.AppStatusViewModel;
import safeluck.drive.evaluation.DB.criterias.CriteriaUpgradeWorker;
import safeluck.drive.evaluation.DB.lightdb.LightsQuestAnswersUpgradeWorker;
import safeluck.drive.evaluation.DB.route.RouteInitWorker;
import safeluck.drive.evaluation.DB.rtktb.RTKConfig;
import safeluck.drive.evaluation.DB.rtktb.RTKConfigViewModel;
import safeluck.drive.evaluation.MainActivity;
@@ -175,6 +176,7 @@
        view.findViewById(R.id.btn_road_update).setOnClickListener(this);
        view.findViewById(R.id.btn_road_mmpk).setOnClickListener(this);
        view.findViewById(R.id.btn_yard_mmpk).setOnClickListener(this);
        view.findViewById(R.id.btn_routeline_upgrade).setOnClickListener(this);
        btn_mcu_upgrade.setOnClickListener(this);
        btn_map_select.setOnClickListener(this);
        btn_config_signal = view.findViewById(R.id.btn_signal_conf);
@@ -293,6 +295,22 @@
                DataInitKt.getMap(ExamPlatformData.getInstance().getPhone(),"road");
                UserOpStatus.getInstance().resetRoadFileSelectState();
                break;
            case R.id.btn_routeline_upgrade:
                Toast.makeText(_mActivity, "更新采集线路", Toast.LENGTH_SHORT).show();
                OneTimeWorkRequest routeWorkRequest = OneTimeWorkRequest.from(RouteInitWorker.class);
                WorkManager.getInstance(_mActivity).getWorkInfoByIdLiveData(routeWorkRequest.getId()).observe(this, new Observer<WorkInfo>() {
                    @Override
                    public void onChanged(WorkInfo workInfo) {
                        if (workInfo.getState()== WorkInfo.State.FAILED){
                            Toast.makeText(_mActivity, "采集线路文件不存在", Toast.LENGTH_SHORT).show();
                        }else if (workInfo.getState() == WorkInfo.State.SUCCEEDED){
                            Toast.makeText(_mActivity, "采集线路更新成功", Toast.LENGTH_SHORT).show();
                        }
                    }
                });
                WorkManager.getInstance(_mActivity).enqueue(routeWorkRequest);
                break;
            case R.id.btn_judgedata_upgrade:
                Toast.makeText(_mActivity, "更新评判表", Toast.LENGTH_SHORT).show();
                OneTimeWorkRequest oneTimeWorkRequest = OneTimeWorkRequest.from(CriteriaUpgradeWorker.class);
app/src/main/res/layout/layout_base_datas.xml
@@ -282,6 +282,14 @@
                android:textSize="@dimen/network_train_textsize21px"
                android:layout_marginLeft="60dp"
                android:id="@+id/btn_judgedata_upgrade"
                android:background="@drawable/btn_bg_baseset"/>     <Button  android:layout_width="129dp"
                android:layout_height="@dimen/ui_margin_50dp"
                android:text="道路项目更新"
                android:padding="5dp"
                android:textColor="@android:color/white"
                android:textSize="@dimen/network_train_textsize21px"
                android:layout_marginLeft="8dp"
                android:id="@+id/btn_routeline_upgrade"
                android:background="@drawable/btn_bg_baseset"/>
            <Button  android:layout_width="129dp"
                android:layout_height="@dimen/ui_margin_50dp"