From 40e5354d874c416661681cb2715d5adf8f1b128e Mon Sep 17 00:00:00 2001 From: lizhanwei <Dana_Lee1016@126.com> Date: 星期一, 30 三月 2020 12:17:37 +0800 Subject: [PATCH] 增加正则判断一个字符串是否全为数字;不再TTSWorker里面执行插入数据库操作和语音播报工作;训练模式和考试模式评判信息按时间排序;收到评判消息在线程里面进行语音播报和数据库操作 --- app/src/main/java/safeluck/drive/evaluation/app.java | 91 +++++++++++++++++++++++++++++++-------------- 1 files changed, 62 insertions(+), 29 deletions(-) diff --git a/app/src/main/java/safeluck/drive/evaluation/app.java b/app/src/main/java/safeluck/drive/evaluation/app.java index c1e15a9..8f11cf7 100644 --- a/app/src/main/java/safeluck/drive/evaluation/app.java +++ b/app/src/main/java/safeluck/drive/evaluation/app.java @@ -193,24 +193,57 @@ if(!TextUtils.isEmpty(json)){ Data judgeData = new Data.Builder().putString(Constant.TTS,json).build(); - JsonArray jsonArray = (JsonArray) JsonParser.parseString(json); - for (int i = 0; i < jsonArray.size(); i++) { - JsonObject jsonObject = jsonArray.get(i).getAsJsonObject(); - int emp_id = jsonObject.get("wrong_id").getAsInt(); - if (emp_id>1000){ - CriteriaForIII ttsStr=WorkRoomDataBase.getWorkRoomDataBase(this).getCriteriaIIIDao().queryItemForCriteriaIIINoLive(emp_id-1000); - ExamPlatformData.getInstance().getTTS().speak(ttsStr.getDeducting_reason() + (ttsStr.getScore_deducting() == 100? "涓嶅悎鏍�" : "鎵�" + - ttsStr.getScore_deducting() + "鍒�")); - }else{ - CriteriaForI ttsStr = WorkRoomDataBase.getWorkRoomDataBase(this).getCriteriaIDao().queryItemForCriteriaINoLive(emp_id); - ExamPlatformData.getInstance().getTTS().speak(ttsStr.getDeducting_reason() + (ttsStr.getScore_deducting() == 100? "涓嶅悎鏍�" : "鎵�" + - ttsStr.getScore_deducting() + "鍒�")); - } - - } + final JsonArray jsonArray = (JsonArray) JsonParser.parseString(json); OneTimeWorkRequest ttswoker = new OneTimeWorkRequest.Builder(TTSWorker.class).setInputData(judgeData).build(); WorkManager.getInstance(getAppContext()).enqueue(ttswoker); + + CThreadPoolExecutor.runInBackground(new Runnable() { + @Override + public void run() { + for (int i = 0; i < jsonArray.size(); i++) { + JsonObject jsonObject = jsonArray.get(i).getAsJsonObject(); + int emp_id = jsonObject.get("wrong_id").getAsInt(); + String utc = jsonObject.get("utc").getAsString(); + int sn = jsonObject.get("sn").getAsInt(); + if (emp_id>1000){ + CriteriaForIII ttsStr=WorkRoomDataBase.getWorkRoomDataBase(getAppContext()).getCriteriaIIIDao().queryItemForCriteriaIIINoLive(emp_id-1000); + ExamPlatformData.getInstance().getTTS().speak(ttsStr.getDeducting_reason() + (ttsStr.getScore_deducting() == 100? "涓嶅悎鏍�" : "鎵�" + + ttsStr.getScore_deducting() + "鍒�")); + }else{ + CriteriaForI ttsStr = WorkRoomDataBase.getWorkRoomDataBase(getAppContext()).getCriteriaIDao().queryItemForCriteriaINoLive(emp_id); + ExamPlatformData.getInstance().getTTS().speak(ttsStr.getDeducting_reason() + (ttsStr.getScore_deducting() == 100? "涓嶅悎鏍�" : "鎵�" + + ttsStr.getScore_deducting() + "鍒�")); + } + + if (emp_id<1000) { //鍦哄湴璇勫垽娑堟伅 + if (emp_id > 31 || emp_id < 0) { + MyLog.i("emp_id瓒呭嚭鑼冨洿涓嶈兘鎻掑叆鏁版嵁搴擄紙I绫昏�冨満锛�"); + + }else{ + FailedProj failedProj = new FailedProj(Constant.SUBJECT_I, emp_id, Constant.TEST_STU_ID, utc, sn); + MyLog.i("鎻掑叆fail_projects琛�=$failedProj"); + WorkRoomDataBase.getWorkRoomDataBase(getApplicationContext()).getFailProjDao().insert(failedProj); + } + + } + if (emp_id>1000) { //閬撹矾 璇勫垽娑堟伅 + + if (emp_id >1066 || emp_id < 1000) { + MyLog.i("emp_id瓒呭嚭鑼冨洿涓嶈兘鎻掑叆鏁版嵁搴擄紙璺�冪被鑰冨満锛�"); + }else{ + LuKaoFailedProj failedProj = new LuKaoFailedProj(Constant.SUBJECT_III, (emp_id-1000), Constant.TEST_STU_ID, utc, sn); + MyLog.i("鎻掑叆璺�僨ail_projects琛�=$failedProj"); + WorkRoomDataBase.getWorkRoomDataBase(getApplicationContext()).getLuKaoFailProjDao().insert(failedProj); + } + + } + + } + } + }); + + } @@ -477,20 +510,20 @@ } }); StringBuffer buffer; -// buffer =FileUtil.readAssetTxtFile(getApplicationContext(),Constant.ROAD_MAP); -// if (buffer != null){ -// -// AYSdk.getInstance().sendCmd(Constant.PUSH_ROAD_MAP_INFO,buffer.toString()); -// }else{ -// MyLog.d(TAG,String.format("鍦板浘妯″瀷鏈嫹鍏%s]鐩綍涓�", Environment.getExternalStorageDirectory().getAbsolutePath()+"/"+getApplicationContext().getPackageName())); -// CThreadPoolExecutor.runOnMainThread(new Runnable() { -// @Override -// public void run() { -// Toast.makeText(getAppContext(), String.format("鍦板浘妯″瀷鏈嫹鍏%s]鐩綍涓�", Environment.getExternalStorageDirectory().getAbsolutePath()+"/"+getApplicationContext().getPackageName()), Toast.LENGTH_SHORT).show(); -// } -// }); -// -// } + buffer =FileUtil.readAssetTxtFile(getApplicationContext(),Constant.ROAD_MAP); + if (buffer != null){ + + AYSdk.getInstance().sendCmd(Constant.PUSH_ROAD_MAP_INFO,buffer.toString()); + }else{ + MyLog.d(TAG,String.format("鍦板浘妯″瀷鏈嫹鍏%s]鐩綍涓�", Environment.getExternalStorageDirectory().getAbsolutePath()+"/"+getApplicationContext().getPackageName())); + CThreadPoolExecutor.runOnMainThread(new Runnable() { + @Override + public void run() { + Toast.makeText(getAppContext(), String.format("鍦板浘妯″瀷鏈嫹鍏%s]鐩綍涓�", Environment.getExternalStorageDirectory().getAbsolutePath()+"/"+getApplicationContext().getPackageName()), Toast.LENGTH_SHORT).show(); + } + }); + + } buffer =FileUtil.readAssetTxtFile(getApplicationContext(),Constant.MAP); if (buffer != null){ -- Gitblit v1.8.0