平台考试考试协议增加教练员身份证和学员身份证字段;优化场考和路考发送开始考试部分代码
4个文件已修改
147 ■■■■■ 已修改文件
app/src/main/java/safeluck/drive/evaluation/bean/ExamPlatformData.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java 63 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/platformMessage/JKMessage0202.java 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/bean/ExamPlatformData.java
@@ -140,6 +140,7 @@
    private int rtkPort = 12125;
    private String rtkIP = "47.93.80.84";
    public final int MAX_SCORE_DUCT = 20;
    private String coachID;//教练员身份证号码
    public static ExamPlatformData getInstance() {
        return ourInstance;
@@ -207,7 +208,10 @@
    }
    /**
     * 获取学员ID(身份证)
     * @return
     */
    public String getID() {
        return id;
    }
@@ -388,4 +392,19 @@
        return roadmapPath;
    }
    /**
     * 设置保存教练员身份证号
     * @param id
     */
    public void setCoachID(String id) {
        this.coachID = id;
    }
    /**
     * 获取
     * @return 教练员身份证
     */
    public String getCoachID() {
        return coachID;
    }
}
app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java
@@ -484,6 +484,8 @@
                        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()));
                    }else if (!TextUtils.isEmpty(student.getName())&&student.getStu_id()==ExamPlatformData.COACH_ID){
                        ExamPlatformData.getInstance().setCoachID(student.getID());
                    }
                }
            }
@@ -594,8 +596,6 @@
                clearArrayListResetTotalScore();
                //TODO 发送JKMessage0202 给平台,开始考试
                final JKMessage0202 jkMessage0202 = new JKMessage0202();
                if (myDialogFragment == null){
                    myDialogFragment = new MyDialogFragment();
@@ -604,44 +604,12 @@
                myDialogFragment.setCallback(new MyDialogFragment.Callback() {
                    @Override
                    public void changKao() {
                        exam_type = 2;
                        ExamPlatformData.getInstance().setTrainingMode(ExamPlatformData.EXAMING_MODE);
                        ExamPlatformData.getInstance().setExamType(exam_type);
                        examStatusViewModel.updateStartExam(exam_type);
                        sendExamJson(1,exam_type);
                        ExamPlatformData.getInstance().getTTS().speak("开始考试");
                        Date date = new Date();
                        wokViewModel.updateBeginTime(date.getTime());
                        jkMessage0202.timeBCD = date;
                        ExamPlatformData.getInstance().setExam_id(Utils.parseUnsignedInt(String.valueOf(date.getTime()/1000),10));
                        jkMessage0202.exam_id = ExamPlatformData.getInstance().getExam_id();
                        jkMessage0202.curr_exam = 0;
                        jkMessage0202.mode = ExamPlatformData.getInstance().getTrainingMode()==ExamPlatformData.TRAINING_MODE?1:0;
                        MessageProcessor.getInstance().sendMessage(jkMessage0202);
                        sendJK0202(2);
                    }
                    @Override
                    public void luKao() {
                        ExamPlatformData.getInstance().setTrainingMode(ExamPlatformData.EXAMING_MODE);
                        exam_type = 3;
                        ExamPlatformData.getInstance().setExamType(exam_type);
                        examStatusViewModel.updateStartExam(exam_type);
                        sendExamJson(1,exam_type);
                        ExamPlatformData.getInstance().getTTS().speak("开始考试");
                        Date date = new Date();
                        wokViewModel.updateBeginTime(date.getTime());
                        jkMessage0202.timeBCD = date;
                        ExamPlatformData.getInstance().setExam_id(Utils.parseUnsignedInt(String.valueOf(date.getTime()/1000),10));
                        jkMessage0202.exam_id = ExamPlatformData.getInstance().getExam_id();
                        jkMessage0202.curr_exam = 1;
                        jkMessage0202.mode = ExamPlatformData.getInstance().getTrainingMode()==ExamPlatformData.TRAINING_MODE?1:0;
                        MessageProcessor.getInstance().sendMessage(jkMessage0202);
                        sendJK0202(3);
                    }
                });
@@ -685,6 +653,29 @@
        }
    }
    private void sendJK0202(int type) {
        final JKMessage0202 jkMessage0202 = new JKMessage0202();
        exam_type = type;
        ExamPlatformData.getInstance().setTrainingMode(ExamPlatformData.EXAMING_MODE);
        ExamPlatformData.getInstance().setExamType(exam_type);
        examStatusViewModel.updateStartExam(exam_type);
        sendExamJson(1,exam_type);
        ExamPlatformData.getInstance().getTTS().speak("开始考试");
        Date date = new Date();
        wokViewModel.updateBeginTime(date.getTime());
        jkMessage0202.timeBCD = date;
        ExamPlatformData.getInstance().setExam_id(Utils.parseUnsignedInt(String.valueOf(date.getTime()/1000),10));
        jkMessage0202.stu_id = ExamPlatformData.getInstance().getID();
        jkMessage0202.coach_id = ExamPlatformData.getInstance().getCoachID();
        jkMessage0202.exam_id = ExamPlatformData.getInstance().getExam_id();
        jkMessage0202.curr_exam = (type-2);//  跟移动站服务定义的场考是2  ,平台是0 ;  移动站路考是3 ,平台是1
        jkMessage0202.mode = ExamPlatformData.getInstance().getTrainingMode()==ExamPlatformData.TRAINING_MODE?1:0;
        MessageProcessor.getInstance().sendMessage(jkMessage0202);
    }
    private void sendExamJson(int i,int type) {
        try {
app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java
@@ -474,6 +474,8 @@
                        tv_sex.setText(getString(R.string.sex)+(student.getSex()==2?"女":"男"));
                        tv_start_time.setText(getString(R.string.begin_time)+Utils.formatTimeYYMMDDHHmmSS(student.getBegin_time()));
                    }else if (!TextUtils.isEmpty(student.getName())&&student.getStu_id()==ExamPlatformData.COACH_ID){
                        ExamPlatformData.getInstance().setCoachID(student.getID());
                    }
                }
            }
@@ -606,30 +608,12 @@
                    @Override
                    public void changKao() {
                        exam_type = 2;
                        ExamPlatformData.getInstance().setTrainingMode(ExamPlatformData.TRAINING_MODE);//设置为训练模式
                        ExamPlatformData.getInstance().setExamType(exam_type);
                        examStatusViewModel.updateStartExam(exam_type);
                        sendExamJson(1,exam_type);
                        ExamPlatformData.getInstance().getTTS().speak("开始训练");
                        jkMessage0202.curr_exam = 0;
                        jkMessage0202.mode = ExamPlatformData.getInstance().getTrainingMode()==ExamPlatformData.TRAINING_MODE?1:0;
                        MessageProcessor.getInstance().sendMessage(jkMessage0202);
                        sendJK0202(2);
                    }
                    @Override
                    public void luKao() {
                        exam_type = 3;
                        ExamPlatformData.getInstance().setTrainingMode(ExamPlatformData.TRAINING_MODE);
                        ExamPlatformData.getInstance().setExamType(exam_type);
                        examStatusViewModel.updateStartExam(exam_type);
                        sendExamJson(1,exam_type);
                        ExamPlatformData.getInstance().getTTS().speak("开始训练");
                        jkMessage0202.curr_exam = 1;
                        jkMessage0202.mode = ExamPlatformData.getInstance().getTrainingMode()==ExamPlatformData.TRAINING_MODE?1:0;
                        MessageProcessor.getInstance().sendMessage(jkMessage0202);
                        sendJK0202(3);
@@ -676,6 +660,29 @@
        }
    }
    private void sendJK0202(int type) {
        final JKMessage0202 jkMessage0202 = new JKMessage0202();
        exam_type = type;
        ExamPlatformData.getInstance().setTrainingMode(ExamPlatformData.TRAINING_MODE);
        ExamPlatformData.getInstance().setExamType(exam_type);
        examStatusViewModel.updateStartExam(exam_type);
        sendExamJson(1,exam_type);
        ExamPlatformData.getInstance().getTTS().speak("开始训练");
        Date date = new Date();
        wokViewModel.updateBeginTime(date.getTime());
        jkMessage0202.timeBCD = date;
        ExamPlatformData.getInstance().setExam_id(Utils.parseUnsignedInt(String.valueOf(date.getTime()/1000),10));
        jkMessage0202.stu_id = ExamPlatformData.getInstance().getID();
        jkMessage0202.coach_id = ExamPlatformData.getInstance().getCoachID();
        jkMessage0202.exam_id = ExamPlatformData.getInstance().getExam_id();
        jkMessage0202.curr_exam = (type-2);//  跟移动站服务定义的场考是2  ,平台是0 ;  移动站路考是3 ,平台是1
        jkMessage0202.mode = ExamPlatformData.getInstance().getTrainingMode()==ExamPlatformData.TRAINING_MODE?1:0;
        MessageProcessor.getInstance().sendMessage(jkMessage0202);
    }
    private void sendExamJson(int i,int type) {
        try {
app/src/main/java/safeluck/drive/evaluation/platformMessage/JKMessage0202.java
@@ -6,17 +6,25 @@
public class JKMessage0202 extends JK2019MessageBase {
    @Order(1)
    @Length(18)
    @Ascii
    public String coach_id;
    @Order(2)
    @Length(18)
    @Ascii
    public String stu_id;
    @Order(3)
    @BcdDateTime
    public Date timeBCD;
    @Order(2)
    @Order(4)
    @Int32
    public int exam_id;
    @Order(3)
    @Order(5)
    @Int8
    public int curr_exam;
    @Order(3)
    @Order(6)
    @Int8
    public int mode;