app/src/main/java/safeluck/drive/evaluation/DB/Student.java
@@ -48,7 +48,7 @@ public void setBegin_time(long begin_time) { this.begin_time = begin_time; } @ColumnInfo(name = "begin_time") private long begin_time; public Student(long stu_id, @NonNull String name, String ID, int sex) { @@ -58,6 +58,7 @@ this.sex = sex; } public long getStu_id() { return stu_id; } app/src/main/java/safeluck/drive/evaluation/DB/StudentDao.java
@@ -29,4 +29,7 @@ @Insert(onConflict = OnConflictStrategy.REPLACE) void insertAll(List<Student> students); @Query("update student_table set begin_time =:beginTime where stu_id=1001") void updateBeginTime(long beginTime); } app/src/main/java/safeluck/drive/evaluation/DB/StudentInfoUpdateWork.java
@@ -35,7 +35,18 @@ String headUrl = jsonObject.getString("head_url"); String id = jsonObject.getString("ID"); String name = jsonObject.getString("name"); Student student =new Student(1001,name,id,2); int sex = 2;//默认是女生 if (id!=null&&id.length()>=18){ sex = Integer.parseInt(id.substring(id.length()-2,id.length()-1)); Log.i(TAG,"sex="+sex); if ( sex%2==0){ Log.i(TAG,"偶数是女生"); sex =2; }else{ sex = 1; } } Student student =new Student(1001,name,id,sex); student.setHead_url(headUrl); MyLog.i("更新签到人员信息:"+student.toString()); WorkRoomDataBase.getWorkRoomDataBase(getApplicationContext()).getstudentDao().insert(student); app/src/main/java/safeluck/drive/evaluation/DB/WokViewModel.java
@@ -32,5 +32,9 @@ workRepository.insert(student); } public void updateBeginTime(long beginTime){ workRepository.updateBeginTime(beginTime); } } app/src/main/java/safeluck/drive/evaluation/DB/WorkRepository.java
@@ -34,4 +34,13 @@ } }); } public void updateBeginTime(final long beginTime) { WorkRoomDataBase.dataBaseWriteExecutor.execute(new Runnable() { @Override public void run() { studentDao.updateBeginTime(beginTime); } }); } } app/src/main/java/safeluck/drive/evaluation/DB/signalConfigdb/SignalConfigInitWorker.java
@@ -45,6 +45,8 @@ Gson gson = new Gson(); Type type = new TypeToken<List<SingalConfig>>(){}.getType(); List<SingalConfig> mstus=gson.fromJson(jsonReader, type); WorkRoomDataBase.getWorkRoomDataBase(getApplicationContext()).getSignalConfigDao().insertAll(mstus); } catch (IOException e) { app/src/main/java/safeluck/drive/evaluation/bean/ExamPlatformData.java
@@ -209,6 +209,10 @@ return exam_id; } public void setExam_id(int exam_id) { this.exam_id = exam_id; } public void setNewMapPath(String path) { this.mapPath = path; SPUtils.put(app.getAppContext(),SPUtils.MAP_PATH,mapPath); app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java
@@ -93,7 +93,7 @@ private ExamStatusViewModel examStatusViewModel; private static final int ADD_DATA = 1; private TextView tv_speed,tv_total_score,tv_sat_num,tv_name,tv_id,tv_work_platform,tv_network_time, tv_qf; tv_qf,tv_start_time,tv_sex; private double speed=0.0; private ImageView iv_rtk_status,iv_head; @@ -102,6 +102,7 @@ private static final int SPEED_DATA = 2; private FailedProjViewModel failedProjViewModel; String icson;//返回的ic卡信息 json WokViewModel wokViewModel; private List<SimulateNightBean.QuestionBean> tempQs= new ArrayList<>(); private List<Integer> btn_ids = new ArrayList<Integer>(); public static SupportFragment newInstance() { @@ -454,7 +455,7 @@ } }); WokViewModel wokViewModel = ViewModelProviders.of(this).get(WokViewModel.class); wokViewModel = ViewModelProviders.of(this).get(WokViewModel.class); wokViewModel.getStudents().observe(this, new Observer<List<Student>>() { @Override public void onChanged(List<Student> students) { @@ -466,10 +467,13 @@ tv_name.setText(getString(R.string.name)+student.getName()); tv_id.setText(getString(R.string.user_id)+student.getID()); ExamPlatformData.getInstance().setId(student.getID()); tv_sex.setText(getString(R.string.sex)+(student.getSex()==2?"女":"男")); tv_start_time.setText(getString(R.string.begin_time)+Utils.formatTimeYYMMDDHHmmSS(student.getBegin_time())); } } } }); AppStatusViewModel appStatusViewModel = ViewModelProviders.of(this).get(AppStatusViewModel.class); appStatusViewModel.getAppStatus().observe(this, new Observer<AppStatus>() { @@ -519,6 +523,8 @@ houseView = view.findViewById(R.id.hv); tv_name = view.findViewById(R.id.tv_name); tv_id = view.findViewById(R.id.tv_ID); tv_start_time = view.findViewById(R.id.tv_start_time); tv_sex = view.findViewById(R.id.tv_sex); tv_work_platform = view.findViewById(R.id.platform); iv_rtk_status = view.findViewById(R.id.iv_rtk_connect); @@ -578,7 +584,10 @@ currTotalScore = 100; //TODO 发送JKMessage0202 给平台,开始考试 final JKMessage0202 jkMessage0202 = new JKMessage0202(); jkMessage0202.timeBCD = new Date(); Date date = new Date(); wokViewModel.updateBeginTime(date.getTime()); jkMessage0202.timeBCD = date; ExamPlatformData.getInstance().setExam_id(Utils.parseUnsignedInt(String.valueOf(date.getTime()/1000),10)); jkMessage0202.ID = ExamPlatformData.getInstance().getID(); jkMessage0202.exam_id = ExamPlatformData.getInstance().getExam_id(); app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java
@@ -113,9 +113,10 @@ private ExamStatusViewModel examStatusViewModel; private static final int ADD_DATA = 1; private TextView tv_speed,tv_total_score,tv_sat_num,tv_name,tv_id,tv_work_platform,tv_network_time ,tv_qf; ,tv_qf,tv_start_time,tv_sex; private double speed=0.0; private ImageView iv_rtk_status,iv_head; WokViewModel wokViewModel; private int currTotalScore = 100; private List<ScoreBean> mArrayList = new ArrayList<>(); @@ -473,7 +474,7 @@ } }); WokViewModel wokViewModel = ViewModelProviders.of(this).get(WokViewModel.class); wokViewModel = ViewModelProviders.of(this).get(WokViewModel.class); wokViewModel.getStudents().observe(this, new Observer<List<Student>>() { @Override public void onChanged(List<Student> students) { @@ -485,6 +486,9 @@ tv_name.setText(getString(R.string.name)+student.getName()); tv_id.setText(getString(R.string.user_id)+student.getID()); ExamPlatformData.getInstance().setId(student.getID()); tv_sex.setText(getString(R.string.sex)+(student.getSex()==2?"女":"男")); tv_start_time.setText(getString(R.string.begin_time)+Utils.formatTimeYYMMDDHHmmSS(student.getBegin_time())); } } } @@ -538,6 +542,8 @@ houseView = view.findViewById(R.id.hv); tv_name = view.findViewById(R.id.tv_name); tv_id = view.findViewById(R.id.tv_ID); tv_start_time = view.findViewById(R.id.tv_start_time); tv_sex = view.findViewById(R.id.tv_sex); tv_work_platform = view.findViewById(R.id.platform); iv_rtk_status = view.findViewById(R.id.iv_rtk_connect); @@ -601,11 +607,11 @@ //TODO 发送JKMessage0202 给平台,开始考试 final JKMessage0202 jkMessage0202 = new JKMessage0202(); jkMessage0202.timeBCD = new Date(); Date date = new Date(); wokViewModel.updateBeginTime(date.getTime()); jkMessage0202.timeBCD = date; ExamPlatformData.getInstance().setExam_id(Utils.parseUnsignedInt(String.valueOf(date.getTime()/1000),10)); jkMessage0202.ID = ExamPlatformData.getInstance().getID(); jkMessage0202.exam_id = ExamPlatformData.getInstance().getExam_id(); if (myDialogFragment == null){ myDialogFragment = new MyDialogFragment(); } app/src/main/java/safeluck/drive/evaluation/util/Utils.java
@@ -12,6 +12,7 @@ import java.math.BigDecimal; import java.security.SecureRandom; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Random; @@ -399,4 +400,10 @@ BigDecimal b= new BigDecimal(d); return b.setScale(reserve, BigDecimal.ROUND_HALF_UP).doubleValue(); } public static String formatTimeYYMMDDHHmmSS(long begin_time) { SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); return simpleDateFormat.format(begin_time); } }