fctom1215
2020-03-10 29cd07271e0e37ce1e4b5c0d7c56f98da208190f
Merge remote-tracking branch 'origin/master'
8个文件已修改
60 ■■■■ 已修改文件
app/src/main/java/safeluck/drive/evaluation/DB/rtktb/RTKConfigUpdateWorker.kt 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/MainActivity.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/app.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/bean/ExamPlatformData.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/fragment/BaseDatasFragment.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/im/IMSEventListener.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/res/values/strings.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/DB/rtktb/RTKConfigUpdateWorker.kt
@@ -25,8 +25,15 @@
            jsonObject = JSONObject(data)
            sn = jsonObject.getString(Constant.RTK_CONFIG_SN)
            Log.i(TAG,"sn="+sn)
            imei = sn
            phone = sn
            imei = sn.substring(1)
            Log.i(TAG,"imei="+imei)
            /**
             * SN与电话号码的关系(以AYKJ-4为例):
            0311200200000011,前4位是设备编码,接下来4位是年月,后面8位是流水号;
            电话号码前2位固定13,第三位取SN的第4位,第4-7位取SN的年月,第8-11位取SN流水号的后4位;即13120020011
             */
            phone = "13"+sn.subSequence(3,8)+sn.substring(sn.length-4,sn.length)
            Log.i(TAG,"phone="+phone)
        }
        var rtkConfigDao = WorkRoomDataBase.getWorkRoomDataBase(applicationContext).rtkConfigDao.also {
            it.update(sn, imei, phone)
app/src/main/java/safeluck/drive/evaluation/MainActivity.java
@@ -198,6 +198,7 @@
                MyLog.i(TAG, "RTKConfig Changed: " + (rtkConfig != null ? rtkConfig.toString() : "null"));
                mRTKConfig = rtkConfig;
                ExamPlatformData.getInstance().setPhone(rtkConfig.getPhone());
                synchronized (MainActivity.this){
                    if (onlySendOnceRTKConfig){
                        MyLog.i(TAG,"进入 synchronized (MainActivity.this)");
@@ -337,18 +338,22 @@
    @Override
    public void onConnected() {
        ExamPlatformData.getInstance().setExamplatformStatus(ExamPlatformData.TCP_CONNECTED);
        MyLog.i(TAG,"TCP连接成功");
        MyLog.i("TCP连接成功");
        //TODO 判断SPUtils 是否保存有des密码;如果没有则进行注册JKMessage0100,如果有密码则进行鉴权JKMessage0101
        String hexPwd = (String) SPUtils.get(this,SPUtils.DES_HEX_PWD,"");
        MessageProcessor.getInstance().addBeatHeart(10);
        if (TextUtils.isEmpty(hexPwd)){
            JKMessage0100 jkRegisterMessage = new JKMessage0100();
            jkRegisterMessage.proviceid = 23;
            jkRegisterMessage.cityid = 1;
            jkRegisterMessage.imei = "460123874561";
            jkRegisterMessage.model = "123";
            jkRegisterMessage.sn = "0314200100000004";
            if (mRTKConfig!=null){
                jkRegisterMessage.phone = ExamPlatformData.getInstance().getPhone();
                jkRegisterMessage.proviceid = mRTKConfig.getProvince();
                jkRegisterMessage.cityid = mRTKConfig.getCity();
                jkRegisterMessage.imei = mRTKConfig.getImei();
                jkRegisterMessage.model = mRTKConfig.getModel();
                jkRegisterMessage.sn = mRTKConfig.getSn();
            }
            Log.i(TAG, "onClick: msg len "+jkRegisterMessage.getMessageLen()+" "+       jkRegisterMessage.props.value);
            byte[] str = jkRegisterMessage.toBytes();
@@ -356,6 +361,7 @@
            Log.i(TAG, "onClick: "+ BytesUtils.bytesToHexString(str)+" ============");
        }else{
            JKMessage0101 jkMessage0101 = new JKMessage0101();
            jkMessage0101.phone = ExamPlatformData.getInstance().getPhone();
            jkMessage0101.des =hexPwd;
            jkMessage0101.timestamp = (int) System.currentTimeMillis();
            MessageProcessor.getInstance().sendMessage(jkMessage0101);
app/src/main/java/safeluck/drive/evaluation/app.java
@@ -313,6 +313,7 @@
                    CEventCenter.dispatchEvent(Constant.BIND_RTK_SPEED_TOPIC,cmd,0,speed);
                    utc = utc.replace(".","");
                    JKMessage0206 jkMessage0206 = new JKMessage0206();
                    jkMessage0206.phone = ExamPlatformData.getInstance().getPhone();
                    jkMessage0206.alert = 0;
                    jkMessage0206.status = 0;
                    jkMessage0206.jd = longitude;
app/src/main/java/safeluck/drive/evaluation/bean/ExamPlatformData.java
@@ -27,6 +27,8 @@
    private int exam_id =12345;//考试唯一ID
    private String mPhone = "";//考试平台消息用到的phone
    public static final int TCP_DISCONNECT = 1;
    public static final int TCP_CONNECTED = 2;///2-未连接(tcp连接不上)
    public static final int DEV_NOT_REGISTERED = 3;
@@ -210,4 +212,11 @@
    }
    public void setPhone(String phone) {
        this.mPhone = phone;
    }
    public String getPhone() {
        return mPhone;
    }
}
app/src/main/java/safeluck/drive/evaluation/fragment/BaseDatasFragment.java
@@ -104,14 +104,14 @@
                                    if (mRtkConfig != null){
                                        datas.add("省ID:"+mRtkConfig.getProvince());
                                        datas.add("市ID:"+mRtkConfig.getCity());
                                        datas.add("电话:"+mRtkConfig.getSn());
                                        datas.add("电话:"+mRtkConfig.getPhone());
                                        datas.add("RTK平台地址:"+mRtkConfig.getIp()+":"+mRtkConfig.getPort());
                                        datas.add("考试平台地址:"+ExamPlatformData.getInstance().getPlatformIP()+":"+ExamPlatformData.getInstance().getPlatformPort());
                                    }
                                    if (appStatus != null){
                                        datas.add("RTK平台状态:"+appStatus.getRtk_connect_status());
                                        datas.add("考试平台状态:"+appStatus.getRtk_connect_status());
                                        datas.add("RTK平台状态:"+(appStatus.getRtk_connect_status()==1?(appStatus.getRtk_login_code()==0?"已登录":"未登录"):"未连接"));
                                        datas.add("考试平台状态:"+ExamPlatformData.getInstance().getExamplatformStatusStr(ExamPlatformData.getInstance().getExamplatformStatus()));
                                    }
                                    gpsInfoAdapter.addAll(datas);
                                }
app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java
@@ -119,6 +119,7 @@
                    String icStr = jsSpeed.getString("serialno");
                    if (result == 0) {
                        JKMessage0201 jkMessage0201 = new JKMessage0201();
                        jkMessage0201.phone = ExamPlatformData.getInstance().getPhone();
                        jkMessage0201.currentExam = 0;
                        jkMessage0201.id = icStr;
                        MessageProcessor.getInstance().sendMessage(jkMessage0201);
@@ -156,6 +157,7 @@
                        item_conents.add(f.getItem_content());
                        Collections.reverse(mArrayList);
                        mScoreAdapter.addDatas(mArrayList);
                        MyLog.i("item_score="+item_id);
                    }
                    //TODO 发送JKMessage0203 给平台,这儿有点复杂,看怎么处理
                    sendJKMessage0203(failedProj_selects);
@@ -242,7 +244,7 @@
    private List<Integer> sns =new ArrayList<>();
    private void sendJKMessage0203(List<FailedProj_select> failedProj_selects) {
        JKMessage0203 jkMessage0203 = new JKMessage0203();
        jkMessage0203.phone = "0314200100000004";
        jkMessage0203.phone =  ExamPlatformData.getInstance().getPhone();
        jkMessage0203.ID = ExamPlatformData.getInstance().getID();
        jkMessage0203.exam_id = ExamPlatformData.getInstance().getExam_id();
@@ -401,7 +403,7 @@
                sns.clear();
                //TODO 发送JKMessage0202 给平台,开始考试
                JKMessage0202 jkMessage0202 = new JKMessage0202();
                jkMessage0202.phone = "0314200100000004";
                jkMessage0202.phone = ExamPlatformData.getInstance().getPhone();
                jkMessage0202.timeBCD = new Date();
                jkMessage0202.curr_exam = 0;
                jkMessage0202.ID = ExamPlatformData.getInstance().getID();
@@ -460,7 +462,7 @@
        sendExamJson(0);
        //TODO 发送JKMessage0204给平台 结束考试
        JKMessage0204 jkMessage0204 = new JKMessage0204();
        jkMessage0204.phone = "0314200100000004";
        jkMessage0204.phone = ExamPlatformData.getInstance().getPhone();
        jkMessage0204.timeBCD = new Date();
        jkMessage0204.score = 10;
        jkMessage0204.stop = JKMessage0204.SUCC_STOP;
app/src/main/java/safeluck/drive/evaluation/im/IMSEventListener.java
@@ -8,6 +8,7 @@
import com.anyun.im_lib.listener.OnEventListener;
import safeluck.drive.evaluation.app;
import safeluck.drive.evaluation.bean.ExamPlatformData;
import safeluck.drive.evaluation.platformMessage.JKMessage0002;
import safeluck.drive.evaluation.platformMessage.utils.MessageEscaper;
@@ -93,6 +94,8 @@
    @Override
    public byte[] getHearbeatMsg() {
        JKMessage0002 jkMessage0002 = new JKMessage0002();
        jkMessage0002.phone = ExamPlatformData.getInstance().getPhone();
        return messageEscaper.escape(jkMessage0002.toBytes());
    }
}
app/src/main/res/values/strings.xml
@@ -51,4 +51,8 @@
    <string name="add_subtract">加减档</string>
    <string name="by_crossing">通过路口</string>
    <string name="lane_change">变更车道</string>
    <array name="simulate_light_tips">
        <item>下面将进行模拟夜间行驶场景灯光使用的考试,请按语音指令在5秒内做出相应的灯光操作</item>
        <item>模拟夜间考试完成请关闭所有灯光,请起步继续完成考试</item>
    </array>
</resources>