From 13c7fc17c0656423832eea705d23867c7ba6697d Mon Sep 17 00:00:00 2001
From: lizhanwei <Dana_Lee1016@126.com>
Date: 星期二, 24 三月 2020 11:18:56 +0800
Subject: [PATCH] 学员表添加对考试开始时间修改的操作;修改考试id根据每次开始考试时间戳来变化
---
app/src/main/java/safeluck/drive/evaluation/DB/StudentInfoUpdateWork.java | 13 ++++++
app/src/main/java/safeluck/drive/evaluation/DB/WorkRepository.java | 9 ++++
app/src/main/java/safeluck/drive/evaluation/bean/ExamPlatformData.java | 4 ++
app/src/main/java/safeluck/drive/evaluation/DB/StudentDao.java | 3 +
app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java | 18 ++++++---
app/src/main/java/safeluck/drive/evaluation/util/Utils.java | 7 +++
app/src/main/java/safeluck/drive/evaluation/DB/signalConfigdb/SignalConfigInitWorker.java | 2 +
app/src/main/java/safeluck/drive/evaluation/DB/Student.java | 3 +
app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java | 15 ++++++-
app/src/main/java/safeluck/drive/evaluation/DB/WokViewModel.java | 4 ++
10 files changed, 67 insertions(+), 11 deletions(-)
diff --git a/app/src/main/java/safeluck/drive/evaluation/DB/Student.java b/app/src/main/java/safeluck/drive/evaluation/DB/Student.java
index 4bb8bc7..5dd1ec2 100644
--- a/app/src/main/java/safeluck/drive/evaluation/DB/Student.java
+++ b/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;
}
diff --git a/app/src/main/java/safeluck/drive/evaluation/DB/StudentDao.java b/app/src/main/java/safeluck/drive/evaluation/DB/StudentDao.java
index 0750bf4..f7ffba8 100644
--- a/app/src/main/java/safeluck/drive/evaluation/DB/StudentDao.java
+++ b/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);
}
diff --git a/app/src/main/java/safeluck/drive/evaluation/DB/StudentInfoUpdateWork.java b/app/src/main/java/safeluck/drive/evaluation/DB/StudentInfoUpdateWork.java
index 3babb18..88ff389 100644
--- a/app/src/main/java/safeluck/drive/evaluation/DB/StudentInfoUpdateWork.java
+++ b/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);
diff --git a/app/src/main/java/safeluck/drive/evaluation/DB/WokViewModel.java b/app/src/main/java/safeluck/drive/evaluation/DB/WokViewModel.java
index c80d4c5..090d41d 100644
--- a/app/src/main/java/safeluck/drive/evaluation/DB/WokViewModel.java
+++ b/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);
+ }
+
}
diff --git a/app/src/main/java/safeluck/drive/evaluation/DB/WorkRepository.java b/app/src/main/java/safeluck/drive/evaluation/DB/WorkRepository.java
index 56d3637..c1a1c14 100644
--- a/app/src/main/java/safeluck/drive/evaluation/DB/WorkRepository.java
+++ b/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);
+ }
+ });
+ }
}
diff --git a/app/src/main/java/safeluck/drive/evaluation/DB/signalConfigdb/SignalConfigInitWorker.java b/app/src/main/java/safeluck/drive/evaluation/DB/signalConfigdb/SignalConfigInitWorker.java
index 7d0b280..6f0e210 100644
--- a/app/src/main/java/safeluck/drive/evaluation/DB/signalConfigdb/SignalConfigInitWorker.java
+++ b/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) {
diff --git a/app/src/main/java/safeluck/drive/evaluation/bean/ExamPlatformData.java b/app/src/main/java/safeluck/drive/evaluation/bean/ExamPlatformData.java
index bd260cf..16bec68 100644
--- a/app/src/main/java/safeluck/drive/evaluation/bean/ExamPlatformData.java
+++ b/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);
diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java
index 5baa955..296b540 100644
--- a/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java
+++ b/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;//杩斿洖鐨刬c鍗′俊鎭� 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 鍙戦�丣KMessage0202 缁欏钩鍙帮紝寮�濮嬭�冭瘯
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();
diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java
index 60f2901..0c2074a 100644
--- a/app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java
+++ b/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 鍙戦�丣KMessage0202 缁欏钩鍙帮紝寮�濮嬭�冭瘯
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();
}
diff --git a/app/src/main/java/safeluck/drive/evaluation/util/Utils.java b/app/src/main/java/safeluck/drive/evaluation/util/Utils.java
index 4641db2..592f817 100644
--- a/app/src/main/java/safeluck/drive/evaluation/util/Utils.java
+++ b/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);
+ }
}
--
Gitblit v1.8.0