| | |
| | | initView(view); |
| | | |
| | | failedProjViewModel = ViewModelProviders.of(this).get(FailedProjViewModel.class); |
| | | |
| | | |
| | | failedProjViewModel.getFailedProjectsForIII(Constant.TEST_STU_ID).observe(this, new Observer<List<FailedProj_select>>() { |
| | | @Override |
| | | public void onChanged(List<FailedProj_select> failedProj_selects) { |
| | | if (ExamPlatformData.getInstance().getExamType()>ExamPlatformData.EXAM_TYPE_ChangKAO){ |
| | | MyLog.i("现在是路考状态,监视路考数据失败项目"); |
| | | if (failedProj_selects != null && failedProj_selects.size()>0){ |
| | | |
| | | item_id = 0; |
| | | currTotalScore = 100; |
| | | mArrayList.clear(); |
| | | item_conents.clear(); |
| | | for (FailedProj_select f : |
| | | failedProj_selects) { |
| | | item_id += f.getScore_deducting(); |
| | | Log.i(TAG, "onChanged: " + f.toString()); |
| | | mArrayList.add(new ScoreBean(f.getScore_deducting(), f.getItem_content(), f.getDeducting_reason())); |
| | | item_conents.add(f.getItem_content()); |
| | | Collections.reverse(mArrayList); |
| | | mScoreAdapter.addDatas(mArrayList); |
| | | MyLog.i("item_score="+item_id); |
| | | } |
| | | MyLog.i("没扣分之前得分:"+currTotalScore); |
| | | currTotalScore -=item_id; |
| | | MyLog.i("路考当前得分:"+currTotalScore); |
| | | if (currTotalScore < Constant.PASSING_SCORE){ |
| | | MyLog.i("路考低于80,不合格"+currTotalScore); |
| | | // ExamPlatformData.getInstance().getTTS().speak("考试不合格"); |
| | | // stopExam(); |
| | | } |
| | | MyLog.i("路考监测到有失败项目加入,通知UI更新颜色"); |
| | | mHandler.obtainMessage(ADD_DATA).sendToTarget(); |
| | | }else{ |
| | | MyLog.i(TAG,"路考失败项目数据表被清空更新UI"); |
| | | item_id = 0; |
| | | mArrayList.clear(); |
| | | item_conents.clear(); |
| | | Collections.reverse(mArrayList); |
| | | mScoreAdapter.addDatas(mArrayList); |
| | | mHandler.obtainMessage(ADD_DATA).sendToTarget(); |
| | | } |
| | | } |
| | | |
| | | } |
| | | }); |
| | | |
| | | |
| | | |
| | | failedProjViewModel.getFailedProjectsForI(Constant.TEST_STU_ID).observe(this, new Observer<List<FailedProj_select>>() { |
| | | @Override |
| | | public void onChanged(List<FailedProj_select> failedProj_selects) { |
| | | if (failedProj_selects != null && failedProj_selects.size()>0){ |
| | | if (ExamPlatformData.getInstance().getExamType()<=ExamPlatformData.EXAM_TYPE_ChangKAO){ |
| | | if (failedProj_selects != null && failedProj_selects.size()>0){ |
| | | |
| | | item_id = 0; |
| | | currTotalScore = 100; |
| | | mArrayList.clear(); |
| | | item_conents.clear(); |
| | | for (FailedProj_select f : |
| | | failedProj_selects) { |
| | | item_id += f.getScore_deducting(); |
| | | Log.i(TAG, "onChanged: " + f.toString()); |
| | | mArrayList.add(new ScoreBean(f.getScore_deducting(), f.getItem_content(), f.getDeducting_reason())); |
| | | item_conents.add(f.getItem_content()); |
| | | Collections.reverse(mArrayList); |
| | | mScoreAdapter.addDatas(mArrayList); |
| | | MyLog.i("item_score="+item_id); |
| | | } |
| | | //TODO 发送JKMessage0203 给平台,这儿有点复杂,看怎么处理 |
| | | item_id = 0; |
| | | currTotalScore = 100; |
| | | mArrayList.clear(); |
| | | item_conents.clear(); |
| | | for (FailedProj_select f : |
| | | failedProj_selects) { |
| | | item_id += f.getScore_deducting(); |
| | | Log.i(TAG, "onChanged: " + f.toString()); |
| | | mArrayList.add(new ScoreBean(f.getScore_deducting(), f.getItem_content(), f.getDeducting_reason())); |
| | | item_conents.add(f.getItem_content()); |
| | | Collections.reverse(mArrayList); |
| | | mScoreAdapter.addDatas(mArrayList); |
| | | MyLog.i("item_score="+item_id); |
| | | } |
| | | //TODO 发送JKMessage0203 给平台,这儿有点复杂,看怎么处理 |
| | | // sendJKMessage0203(failedProj_selects); |
| | | MyLog.i("没扣分之前得分:"+currTotalScore); |
| | | currTotalScore -=item_id; |
| | | MyLog.i("当前得分:"+currTotalScore); |
| | | if (currTotalScore < Constant.PASSING_SCORE){ |
| | | MyLog.i("低于80,不合格"+currTotalScore); |
| | | MyLog.i("没扣分之前得分:"+currTotalScore); |
| | | currTotalScore -=item_id; |
| | | MyLog.i("当前得分:"+currTotalScore); |
| | | if (currTotalScore < Constant.PASSING_SCORE){ |
| | | MyLog.i("低于80,不合格"+currTotalScore); |
| | | // ExamPlatformData.getInstance().getTTS().speak("考试不合格"); |
| | | // stopExam(); |
| | | } |
| | | MyLog.i("监测到有失败项目加入,通知UI更新颜色"); |
| | | mHandler.obtainMessage(ADD_DATA).sendToTarget(); |
| | | }else{ |
| | | MyLog.i(TAG,"失败项目数据表被清空更新UI"); |
| | | item_id = 0; |
| | | mArrayList.clear(); |
| | | item_conents.clear(); |
| | | Collections.reverse(mArrayList); |
| | | mScoreAdapter.addDatas(mArrayList); |
| | | mHandler.obtainMessage(ADD_DATA).sendToTarget(); |
| | | } |
| | | MyLog.i("监测到有失败项目加入,通知UI更新颜色"); |
| | | mHandler.obtainMessage(ADD_DATA).sendToTarget(); |
| | | }else{ |
| | | MyLog.i(TAG,"失败项目数据表被清空更新UI"); |
| | | item_id = 0; |
| | | mArrayList.clear(); |
| | | item_conents.clear(); |
| | | Collections.reverse(mArrayList); |
| | | mScoreAdapter.addDatas(mArrayList); |
| | | mHandler.obtainMessage(ADD_DATA).sendToTarget(); |
| | | } |
| | | |
| | | } |
| | | }); |
| | | |
| | |
| | | return view; |
| | | } |
| | | |
| | | // private void sendJKMessage0203(List<FailedProj_select> failedProj_selects) { |
| | | //// JKMessage0203 jkMessage0203 = new JKMessage0203(); |
| | | //// jkMessage0203.phone = ExamPlatformData.getInstance().getPhone(); |
| | | //// jkMessage0203.ID = ExamPlatformData.getInstance().getID(); |
| | | //// jkMessage0203.exam_id = ExamPlatformData.getInstance().getExam_id(); |
| | | //// |
| | | //// for (int i = 0; i < failedProj_selects.size(); i++) { |
| | | //// if (hasSnEqulas(failedProj_selects.get(i).getSn())){ |
| | | //// MyLog.i("sn相同"+failedProj_selects.get(i).getSn()); |
| | | //// }else{ |
| | | //// ExamPlatformData.getInstance().getTTS().speak(failedProj_selects.get(i).getDeducting_reason()+( |
| | | //// failedProj_selects.get(i).getScore_deducting()==100?"不合格":"扣"+ |
| | | //// failedProj_selects.get(i).getScore_deducting()+"分")); |
| | | //// MyLog.i("没有相同的sn,发送"+failedProj_selects.get(i).getSn()); |
| | | //// ExamPlatformData.getInstance().addSn(failedProj_selects.get(i).getSn()); |
| | | //// String utc = failedProj_selects.get(i).getUtc(); |
| | | //// if (!TextUtils.isEmpty(utc)&&utc.length()>12){ |
| | | //// utc =utc.substring(0,12); |
| | | //// } |
| | | //// jkMessage0203.timeBCD = utc ; |
| | | //// |
| | | //// jkMessage0203.fail_item_id = failedProj_selects.get(i).getEmp_id(); |
| | | //// jkMessage0203.fail_score = failedProj_selects.get(i).getScore_deducting(); |
| | | //// jkMessage0203.fail_reason = failedProj_selects.get(i).getDeducting_reason(); |
| | | //// } |
| | | //// |
| | | //// } |
| | | // |
| | | //// MessageProcessor.getInstance().sendMessage(jkMessage0203); |
| | | //// } |
| | | // |
| | | //// private boolean hasSnEqulas(int failedProjSn){ |
| | | //// if (ExamPlatformData.getInstance().getSns().size() > 0){ |
| | | //// for (int j = 0; j < ExamPlatformData.getInstance().getSns().size(); j++) { |
| | | //// MyLog.i("已存在的sn"+ExamPlatformData.getInstance().getSns().get(j)); |
| | | //// if (ExamPlatformData.getInstance().getSns().get(j) == failedProjSn){ |
| | | //// MyLog.i("sn相同,不发"+ExamPlatformData.getInstance().getSns().get(j)); |
| | | //// return true; |
| | | // }else{ |
| | | // continue; |
| | | // } |
| | | // } |
| | | // |
| | | // } |
| | | // return false; |
| | | // |
| | | // } |
| | | |
| | | |
| | | |
| | |
| | | public void changKao() { |
| | | exam_type = 2; |
| | | iv_head.getDrawable().setLevel(1); |
| | | ExamPlatformData.getInstance().setTrainingMode(ExamPlatformData.TRAINING_MODE); |
| | | ExamPlatformData.getInstance().setExamType(exam_type); |
| | | examStatusViewModel.updateStartExam(exam_type); |
| | | sendExamJson(1,exam_type); |
| | |
| | | @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); |
| | |
| | | |
| | | break; |
| | | case R.id.view_map: |
| | | MapFragment mapFragment = findFragment(MapFragment.class); |
| | | MyLog.i(TAG,"查看地图"); |
| | | if (mapFragment == null) { |
| | | mapFragment = (MapFragment) MapFragment.newInstance(); |
| | | if (ExamPlatformData.getInstance().getExamType()>ExamPlatformData.EXAM_TYPE_ChangKAO){ |
| | | RoadDriveMapFragmentaa mapFragment = findFragment(RoadDriveMapFragmentaa.class); |
| | | MyLog.i(TAG,"查看路考地图"); |
| | | if (mapFragment == null) { |
| | | mapFragment = (RoadDriveMapFragmentaa) RoadDriveMapFragmentaa.newInstance(); |
| | | } |
| | | start(mapFragment); |
| | | }else{ |
| | | MapFragment mapFragment = findFragment(MapFragment.class); |
| | | MyLog.i(TAG,"查看场考地图"); |
| | | if (mapFragment == null) { |
| | | mapFragment = (MapFragment) MapFragment.newInstance(); |
| | | } |
| | | start(mapFragment); |
| | | } |
| | | start(mapFragment); |
| | | break; |
| | | case R.id.btn_return: |
| | | _mActivity.onBackPressed(); |
| | |
| | | } |
| | | |
| | | private void stopExam() { |
| | | MyLog.i(TAG,"结束考试"); |
| | | |
| | | //清空sns |
| | | ExamPlatformData.getInstance().clearSns(); |
| | | MyLog.i(TAG,"结束训练"); |
| | | //设置模式为NONE 0 |
| | | ExamPlatformData.getInstance().setTrainingMode(ExamPlatformData.MODE_NONE); |
| | | |