|
@@ -2,6 +2,7 @@ package com.rf.psychological.scale.resultBusiness.cognitiveResult;
|
|
|
|
|
|
import com.alibaba.fastjson.JSONArray;
|
|
import com.alibaba.fastjson.JSONArray;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
|
+import com.rf.psychological.dao.model.ObjectEntity;
|
|
import com.rf.psychological.dao.model.ObjectNewEntity;
|
|
import com.rf.psychological.dao.model.ObjectNewEntity;
|
|
import com.rf.psychological.file.excel.ExcelClass;
|
|
import com.rf.psychological.file.excel.ExcelClass;
|
|
import com.rf.psychological.scale.resultBusiness.scaleResult.BaseScale;
|
|
import com.rf.psychological.scale.resultBusiness.scaleResult.BaseScale;
|
|
@@ -28,89 +29,62 @@ public class ALERTNESSCognize extends BaseScale {
|
|
super(jsonArray, resultJson);
|
|
super(jsonArray, resultJson);
|
|
}
|
|
}
|
|
|
|
|
|
- public JSONObject scaleCalculate() throws Exception {
|
|
|
|
|
|
+ // yazhe 20241225 柴春阳
|
|
|
|
+ public JSONObject scaleCalculate() throws Exception {
|
|
List<Map<String, String>> resultMapList = new ArrayList<>();
|
|
List<Map<String, String>> resultMapList = new ArrayList<>();
|
|
JSONObject jsonObject = resultJson.getJSONObject("jsonObject");
|
|
JSONObject jsonObject = resultJson.getJSONObject("jsonObject");
|
|
String fileName = resultJson.getString("fileName");
|
|
String fileName = resultJson.getString("fileName");
|
|
String name;
|
|
String name;
|
|
String type = resultJson.getString("type");
|
|
String type = resultJson.getString("type");
|
|
|
|
+
|
|
JSONObject resultDBJson = new JSONObject(true);
|
|
JSONObject resultDBJson = new JSONObject(true);
|
|
|
|
|
|
resultMapList = new ArrayList<>();
|
|
resultMapList = new ArrayList<>();
|
|
- //正确反应总时长
|
|
|
|
- double allTime = 0;
|
|
|
|
- //正确反应总次数
|
|
|
|
- int allCount = 0;
|
|
|
|
|
|
+ //总时长
|
|
|
|
+ int allTime = 0;
|
|
//500ms- 1000ms 次数
|
|
//500ms- 1000ms 次数
|
|
int time500 = 0;
|
|
int time500 = 0;
|
|
//1000ms 次数
|
|
//1000ms 次数
|
|
int time1000 = 0;
|
|
int time1000 = 0;
|
|
JSONArray jsonArray = jsonObject.getJSONArray("data");
|
|
JSONArray jsonArray = jsonObject.getJSONArray("data");
|
|
- List<ObjectNewEntity> dataList = jsonArray.toJavaList(ObjectNewEntity.class);
|
|
|
|
- for (ObjectNewEntity roa : dataList) {
|
|
|
|
- double temp = Double.parseDouble(roa.getValue());
|
|
|
|
- if (roa.getIsValidResponse() == 1) {
|
|
|
|
- allTime += temp;
|
|
|
|
- allCount++;
|
|
|
|
- }
|
|
|
|
|
|
+ List<ObjectEntity> dataList = jsonArray.toJavaList(ObjectEntity.class);
|
|
|
|
+ for (ObjectEntity roa : dataList) {
|
|
|
|
+ int temp = Integer.parseInt(roa.getValue());
|
|
|
|
+ allTime += temp;
|
|
if (temp > 500 && temp < 1000) {
|
|
if (temp > 500 && temp < 1000) {
|
|
time500 += 1;
|
|
time500 += 1;
|
|
} else if (temp >= 1000) {
|
|
} else if (temp >= 1000) {
|
|
time1000 += 1;
|
|
time1000 += 1;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- int i = 1;
|
|
|
|
- for (ObjectNewEntity entity : dataList) {
|
|
|
|
- entity.setCardNo(resultJson.getString("cardNo"));
|
|
|
|
- entity.setUserName(resultJson.getString("userName"));
|
|
|
|
- entity.setAge(resultJson.getString("age"));
|
|
|
|
- entity.setOrg(resultJson.getString("org"));
|
|
|
|
- entity.setOrgSub(resultJson.getString("orgSub"));
|
|
|
|
- entity.setFXLevel(resultJson.getString("FXLevel"));
|
|
|
|
- entity.setCurrentJX(resultJson.getString("currentJX"));
|
|
|
|
- entity.setIndex(i + "");
|
|
|
|
- i++;
|
|
|
|
- }
|
|
|
|
|
|
|
|
//平均时长(ms)
|
|
//平均时长(ms)
|
|
- double averageTime =0;
|
|
|
|
- if (allCount!=0){
|
|
|
|
- averageTime=new BigDecimal((double) allTime / allCount).setScale(2, RoundingMode.HALF_UP).doubleValue();
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
|
|
+ double averageTime = new BigDecimal((double) allTime / (double) dataList.size()).setScale(2, RoundingMode.HALF_UP).doubleValue();
|
|
//超过0.5秒的比例
|
|
//超过0.5秒的比例
|
|
- double ratio500 = new BigDecimal((double) time500 / (double) dataList.size()).setScale(4, RoundingMode.HALF_UP).doubleValue();
|
|
|
|
|
|
+ double ratio500 = new BigDecimal((double) time500 / (double) dataList.size()).setScale(2, RoundingMode.HALF_UP).doubleValue();
|
|
//超过1秒的比例
|
|
//超过1秒的比例
|
|
- double ratio1000 = new BigDecimal((double) time1000 / (double) dataList.size()).setScale(4, RoundingMode.HALF_UP).doubleValue();
|
|
|
|
- //平均正确率
|
|
|
|
- double corrent = dataList.stream().mapToInt(item -> item.getIsValidResponse()).sum();
|
|
|
|
- corrent = new BigDecimal((double) corrent / (double) dataList.size()).setScale(4, RoundingMode.HALF_UP).doubleValue();
|
|
|
|
|
|
+ double ratio1000 = new BigDecimal((double) time1000 / (double) dataList.size()).setScale(2, RoundingMode.HALF_UP).doubleValue();
|
|
|
|
|
|
String alertness;
|
|
String alertness;
|
|
String desc;
|
|
String desc;
|
|
|
|
|
|
- resultDBJson.put("versionNo", Constant.COGNITION_RESULT_VERSION);
|
|
|
|
- if (averageTime >= 550) {
|
|
|
|
|
|
+ resultDBJson.put("versionNo",Constant.COGNITION_RESULT_VERSION);
|
|
|
|
+ if (averageTime >= 550){
|
|
alertness = "警觉度5级";
|
|
alertness = "警觉度5级";
|
|
desc = "您的注意力稳定性和专注力很差,不能够在较长时间内将注意力专注于一件事情上。您的视觉反应能力和洞察力的敏锐程度很差,不能很好地觉察情景中危险刺激。建议您后续加强注意稳定性训练,提高反应能力和专注力。";
|
|
desc = "您的注意力稳定性和专注力很差,不能够在较长时间内将注意力专注于一件事情上。您的视觉反应能力和洞察力的敏锐程度很差,不能很好地觉察情景中危险刺激。建议您后续加强注意稳定性训练,提高反应能力和专注力。";
|
|
- } else if (averageTime >= 500 && averageTime < 550) {
|
|
|
|
|
|
+ }else if(averageTime >= 500 && averageTime < 550){
|
|
alertness = "警觉度4级";
|
|
alertness = "警觉度4级";
|
|
desc = "您的注意力稳定性和专注力较差,不能够在较长时间内将注意力专注于一件事情上。您的视觉反应能力和洞察力的敏锐程度较差,不能很好地觉察情景中危险刺激。建议您后续加强注意稳定性训练,提高反应能力和专注力。";
|
|
desc = "您的注意力稳定性和专注力较差,不能够在较长时间内将注意力专注于一件事情上。您的视觉反应能力和洞察力的敏锐程度较差,不能很好地觉察情景中危险刺激。建议您后续加强注意稳定性训练,提高反应能力和专注力。";
|
|
- } else if (averageTime >= 450 && averageTime < 500) {
|
|
|
|
|
|
+ }else if(averageTime >= 450 && averageTime < 500){
|
|
alertness = "警觉度3级";
|
|
alertness = "警觉度3级";
|
|
desc = "您具有一般水平的注意力稳定性和专注力,能够在较长时间但不能在很长时间内将注意力专注于一件事情上。您的视觉反应能力和洞察力的敏锐程度一般,能够较好但不能很好地觉察情景中危险刺激。";
|
|
desc = "您具有一般水平的注意力稳定性和专注力,能够在较长时间但不能在很长时间内将注意力专注于一件事情上。您的视觉反应能力和洞察力的敏锐程度一般,能够较好但不能很好地觉察情景中危险刺激。";
|
|
- } else if (averageTime >= 400 && averageTime < 450) {
|
|
|
|
|
|
+ }else if(averageTime >= 400 && averageTime < 450){
|
|
alertness = "警觉度2级";
|
|
alertness = "警觉度2级";
|
|
desc = "您的注意力稳定性和专注力较好,能够在较长的时间内将注意力专注于一件事情上。您的视觉反应能力和洞察力较敏锐,觉察情景中危险刺激的能力较高。";
|
|
desc = "您的注意力稳定性和专注力较好,能够在较长的时间内将注意力专注于一件事情上。您的视觉反应能力和洞察力较敏锐,觉察情景中危险刺激的能力较高。";
|
|
- } else {
|
|
|
|
|
|
+ }else {
|
|
alertness = "警觉度1级";
|
|
alertness = "警觉度1级";
|
|
desc = "您的注意力稳定性和专注力非常好,能够在非常长的时间内将注意力专注于一件事情上。您的视觉反应能力和洞察力非常敏锐,觉察情景中危险刺激的能力非常高,在物种生存法则中更易生存下来。";
|
|
desc = "您的注意力稳定性和专注力非常好,能够在非常长的时间内将注意力专注于一件事情上。您的视觉反应能力和洞察力非常敏锐,觉察情景中危险刺激的能力非常高,在物种生存法则中更易生存下来。";
|
|
}
|
|
}
|
|
-
|
|
|
|
- String taskStartTime = jsonObject.getString("taskStartTime");
|
|
|
|
- SimpleDateFormat insdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
|
- SimpleDateFormat outsdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
|
|
|
|
- taskStartTime = outsdf.format(insdf.parse(taskStartTime));
|
|
|
|
//表格数据
|
|
//表格数据
|
|
JSONArray tableModule = new JSONArray();
|
|
JSONArray tableModule = new JSONArray();
|
|
JSONObject table1 = new JSONObject(true);
|
|
JSONObject table1 = new JSONObject(true);
|
|
@@ -118,60 +92,202 @@ public class ALERTNESSCognize extends BaseScale {
|
|
columnName.add("指标名称");
|
|
columnName.add("指标名称");
|
|
columnName.add("指标值");
|
|
columnName.add("指标值");
|
|
JSONArray columnValue = new JSONArray();
|
|
JSONArray columnValue = new JSONArray();
|
|
-
|
|
|
|
- columnValue.add("当前任务起始时间;平均正确率;超过0.5秒的比例;超过1秒的比例;平均时长(ms)");
|
|
|
|
- columnValue.add(taskStartTime + ";" + String.format("%.4f", corrent) + ";" + String.format("%.4f", ratio500) + ";" + String.format("%.4f", ratio1000) + ";" + String.format("%.2f", averageTime));
|
|
|
|
- table1.put("tableName", "table1");
|
|
|
|
- table1.put("columnName", columnName);
|
|
|
|
- table1.put("columnValue", columnValue);
|
|
|
|
|
|
+ columnValue.add("超过0.5秒的比例;超过1秒的比例;平均时长(ms);警觉度等级;解释");
|
|
|
|
+ columnValue.add(ratio500+";"+ratio1000+";"+averageTime+";"+alertness+";"+desc);
|
|
|
|
+ table1.put("tableName","table1");
|
|
|
|
+ table1.put("columnName",columnName);
|
|
|
|
+ table1.put("columnValue",columnValue);
|
|
tableModule.add(table1);
|
|
tableModule.add(table1);
|
|
resultDBJson.put("tableModule", tableModule);
|
|
resultDBJson.put("tableModule", tableModule);
|
|
|
|
|
|
JSONObject ifShow = new JSONObject(true);
|
|
JSONObject ifShow = new JSONObject(true);
|
|
- ifShow.put("totalScore", false);
|
|
|
|
- ifShow.put("dimensions", false);
|
|
|
|
- ifShow.put("note", false);
|
|
|
|
- ifShow.put("radar", false);
|
|
|
|
- ifShow.put("table", true);
|
|
|
|
- resultDBJson.put("ifShow", ifShow);
|
|
|
|
|
|
+ ifShow.put("totalScore",false);
|
|
|
|
+ ifShow.put("dimensions",false);
|
|
|
|
+ ifShow.put("note",false);
|
|
|
|
+ ifShow.put("radar",false);
|
|
|
|
+ ifShow.put("table",true);
|
|
|
|
+ resultDBJson.put("ifShow",ifShow);
|
|
|
|
|
|
Map<String, String> resultMap = new LinkedHashMap<>();
|
|
Map<String, String> resultMap = new LinkedHashMap<>();
|
|
- resultMap.put("当前任务起始时间", taskStartTime);
|
|
|
|
- resultMap.put("平均正确率", String.format("%.4f", corrent));
|
|
|
|
- resultMap.put("超过0.5秒的比例", String.format("%.4f", ratio500));
|
|
|
|
- resultMap.put("超过1秒的比例", String.format("%.4f", ratio1000));
|
|
|
|
- //resultMap.put("平均时长(ms)", String.valueOf(new BigDecimal((double) allTime / (double) dataList.size()).setScale(2, RoundingMode.HALF_UP).doubleValue()));
|
|
|
|
- resultMap.put("平均时长(ms)", String.format("%.2f", averageTime));
|
|
|
|
- /*resultMap.put("警觉度等级", alertness);
|
|
|
|
- resultMap.put("解释", desc);*/
|
|
|
|
- resultDBJson.put("当前任务起始时间", taskStartTime);
|
|
|
|
- resultDBJson.put("平均正确率", String.format("%.4f", corrent));
|
|
|
|
- resultDBJson.put("超过0.5秒的比例",String.format("%.4f", ratio500));
|
|
|
|
- resultDBJson.put("超过1秒的比例",String.format("%.4f", ratio1000));
|
|
|
|
- //resultDBJson.put("平均时长(ms)", String.valueOf(new BigDecimal((double) allTime / (double) dataList.size()).setScale(2, RoundingMode.HALF_UP).doubleValue()));
|
|
|
|
- resultDBJson.put("平均时长(ms)", String.format("%.2f", averageTime));
|
|
|
|
- /*resultDBJson.put("警觉度等级", alertness);
|
|
|
|
- resultDBJson.put("解释", desc);*/
|
|
|
|
|
|
+ resultMap.put("超过0.5秒的比例", String.valueOf(new BigDecimal((double) time500 / (double) dataList.size()).setScale(2, RoundingMode.HALF_UP).doubleValue()));
|
|
|
|
+ resultMap.put("超过1秒的比例", String.valueOf(new BigDecimal((double) time1000 / (double) dataList.size()).setScale(2, RoundingMode.HALF_UP).doubleValue()));
|
|
|
|
+ resultMap.put("平均时长(ms)", String.valueOf(new BigDecimal((double) allTime / (double) dataList.size()).setScale(2, RoundingMode.HALF_UP).doubleValue()));
|
|
|
|
+ resultMap.put("警觉度等级", alertness);
|
|
|
|
+ resultMap.put("解释", desc);
|
|
|
|
+
|
|
|
|
+ resultDBJson.put("超过0.5秒的比例", String.valueOf(new BigDecimal((double) time500 / (double) dataList.size()).setScale(2, RoundingMode.HALF_UP).doubleValue()));
|
|
|
|
+ resultDBJson.put("超过1秒的比例", String.valueOf(new BigDecimal((double) time1000 / (double) dataList.size()).setScale(2, RoundingMode.HALF_UP).doubleValue()));
|
|
|
|
+ resultDBJson.put("平均时长(ms)", String.valueOf(new BigDecimal((double) allTime / (double) dataList.size()).setScale(2, RoundingMode.HALF_UP).doubleValue()));
|
|
|
|
+ resultDBJson.put("警觉度等级", alertness);
|
|
|
|
+ resultDBJson.put("解释", desc);
|
|
resultMapList.add(resultMap);
|
|
resultMapList.add(resultMap);
|
|
- if (Constant.QUEST_TYPE_ALERTNESS.equals(type)) {
|
|
|
|
|
|
+ if (Constant.QUEST_TYPE_ALERTNESS.equals(type)){
|
|
fileName = fileName + "-" + Constant.SHEET_NAME_ALERTNESS + ".xlsx";
|
|
fileName = fileName + "-" + Constant.SHEET_NAME_ALERTNESS + ".xlsx";
|
|
name = Constant.SHEET_NAME_ALERTNESS;
|
|
name = Constant.SHEET_NAME_ALERTNESS;
|
|
- } else if (Constant.QUEST_TYPE_ALERTNESS_CHILD.equals(type)) {
|
|
|
|
|
|
+ }else if (Constant.QUEST_TYPE_ALERTNESS_CHILD.equals(type)){
|
|
fileName = fileName + "-" + Constant.SHEET_NAME_ALERTNESS_CHILD + ".xlsx";
|
|
fileName = fileName + "-" + Constant.SHEET_NAME_ALERTNESS_CHILD + ".xlsx";
|
|
name = Constant.SHEET_NAME_ALERTNESS_CHILD;
|
|
name = Constant.SHEET_NAME_ALERTNESS_CHILD;
|
|
- } else {
|
|
|
|
|
|
+ }else {
|
|
fileName = fileName + "-" + Constant.SHEET_NAME_ALERTNESS_ADDICTION + ".xlsx";
|
|
fileName = fileName + "-" + Constant.SHEET_NAME_ALERTNESS_ADDICTION + ".xlsx";
|
|
name = Constant.SHEET_NAME_ALERTNESS_ADDICTION;
|
|
name = Constant.SHEET_NAME_ALERTNESS_ADDICTION;
|
|
}
|
|
}
|
|
|
|
+
|
|
String datas = jsonArray.toString();
|
|
String datas = jsonArray.toString();
|
|
- ExcelUtil.createExcelFile(ObjectNewEntity.class, dataList, resultMapList, new ExcelClass().contentExcel(Constant.QUEST_TYPE_ALERTNESS), fileName, name);
|
|
|
|
|
|
+ ExcelUtil.createExcelFile(ObjectEntity.class, dataList, resultMapList, new ExcelClass().contentExcel(Constant.QUEST_TYPE_ALERTNESS), fileName, name);
|
|
|
|
+
|
|
JSONObject returnJson = new JSONObject(true);
|
|
JSONObject returnJson = new JSONObject(true);
|
|
- returnJson.put("fileName", fileName);
|
|
|
|
|
|
+ returnJson.put("fileName",fileName);
|
|
returnJson.put("name", name);
|
|
returnJson.put("name", name);
|
|
- returnJson.put("resultJson", resultDBJson);
|
|
|
|
- returnJson.put("datas", datas);
|
|
|
|
|
|
+ returnJson.put("resultJson",resultDBJson);
|
|
|
|
+ returnJson.put("datas",datas);
|
|
|
|
+
|
|
return returnJson;
|
|
return returnJson;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+// public JSONObject scaleCalculate() throws Exception {
|
|
|
|
+// List<Map<String, String>> resultMapList = new ArrayList<>();
|
|
|
|
+// JSONObject jsonObject = resultJson.getJSONObject("jsonObject");
|
|
|
|
+// String fileName = resultJson.getString("fileName");
|
|
|
|
+// String name;
|
|
|
|
+// String type = resultJson.getString("type");
|
|
|
|
+// JSONObject resultDBJson = new JSONObject(true);
|
|
|
|
+//
|
|
|
|
+// resultMapList = new ArrayList<>();
|
|
|
|
+// //正确反应总时长
|
|
|
|
+// double allTime = 0;
|
|
|
|
+// //正确反应总次数
|
|
|
|
+// int allCount = 0;
|
|
|
|
+// //500ms- 1000ms 次数
|
|
|
|
+// int time500 = 0;
|
|
|
|
+// //1000ms 次数
|
|
|
|
+// int time1000 = 0;
|
|
|
|
+// JSONArray jsonArray = jsonObject.getJSONArray("data");
|
|
|
|
+// List<ObjectNewEntity> dataList = jsonArray.toJavaList(ObjectNewEntity.class);
|
|
|
|
+// for (ObjectNewEntity roa : dataList) {
|
|
|
|
+// double temp = Double.parseDouble(roa.getValue());
|
|
|
|
+// if (roa.getIsValidResponse() == 1) {
|
|
|
|
+// allTime += temp;
|
|
|
|
+// allCount++;
|
|
|
|
+// }
|
|
|
|
+// if (temp > 500 && temp < 1000) {
|
|
|
|
+// time500 += 1;
|
|
|
|
+// } else if (temp >= 1000) {
|
|
|
|
+// time1000 += 1;
|
|
|
|
+// }
|
|
|
|
+// }
|
|
|
|
+// int i = 1;
|
|
|
|
+// for (ObjectNewEntity entity : dataList) {
|
|
|
|
+// entity.setCardNo(resultJson.getString("cardNo"));
|
|
|
|
+// entity.setUserName(resultJson.getString("userName"));
|
|
|
|
+// entity.setAge(resultJson.getString("age"));
|
|
|
|
+// entity.setOrg(resultJson.getString("org"));
|
|
|
|
+// entity.setOrgSub(resultJson.getString("orgSub"));
|
|
|
|
+// entity.setFXLevel(resultJson.getString("FXLevel"));
|
|
|
|
+// entity.setCurrentJX(resultJson.getString("currentJX"));
|
|
|
|
+// entity.setIndex(i + "");
|
|
|
|
+// i++;
|
|
|
|
+// }
|
|
|
|
+//
|
|
|
|
+// //平均时长(ms)
|
|
|
|
+// double averageTime =0;
|
|
|
|
+// if (allCount!=0){
|
|
|
|
+// averageTime=new BigDecimal((double) allTime / allCount).setScale(2, RoundingMode.HALF_UP).doubleValue();
|
|
|
|
+// }
|
|
|
|
+//
|
|
|
|
+// //超过0.5秒的比例
|
|
|
|
+// double ratio500 = new BigDecimal((double) time500 / (double) dataList.size()).setScale(4, RoundingMode.HALF_UP).doubleValue();
|
|
|
|
+// //超过1秒的比例
|
|
|
|
+// double ratio1000 = new BigDecimal((double) time1000 / (double) dataList.size()).setScale(4, RoundingMode.HALF_UP).doubleValue();
|
|
|
|
+// //平均正确率
|
|
|
|
+// double corrent = dataList.stream().mapToInt(item -> item.getIsValidResponse()).sum();
|
|
|
|
+// corrent = new BigDecimal((double) corrent / (double) dataList.size()).setScale(4, RoundingMode.HALF_UP).doubleValue();
|
|
|
|
+//
|
|
|
|
+// String alertness;
|
|
|
|
+// String desc;
|
|
|
|
+//
|
|
|
|
+// resultDBJson.put("versionNo", Constant.COGNITION_RESULT_VERSION);
|
|
|
|
+// if (averageTime >= 550) {
|
|
|
|
+// alertness = "警觉度5级";
|
|
|
|
+// desc = "您的注意力稳定性和专注力很差,不能够在较长时间内将注意力专注于一件事情上。您的视觉反应能力和洞察力的敏锐程度很差,不能很好地觉察情景中危险刺激。建议您后续加强注意稳定性训练,提高反应能力和专注力。";
|
|
|
|
+// } else if (averageTime >= 500 && averageTime < 550) {
|
|
|
|
+// alertness = "警觉度4级";
|
|
|
|
+// desc = "您的注意力稳定性和专注力较差,不能够在较长时间内将注意力专注于一件事情上。您的视觉反应能力和洞察力的敏锐程度较差,不能很好地觉察情景中危险刺激。建议您后续加强注意稳定性训练,提高反应能力和专注力。";
|
|
|
|
+// } else if (averageTime >= 450 && averageTime < 500) {
|
|
|
|
+// alertness = "警觉度3级";
|
|
|
|
+// desc = "您具有一般水平的注意力稳定性和专注力,能够在较长时间但不能在很长时间内将注意力专注于一件事情上。您的视觉反应能力和洞察力的敏锐程度一般,能够较好但不能很好地觉察情景中危险刺激。";
|
|
|
|
+// } else if (averageTime >= 400 && averageTime < 450) {
|
|
|
|
+// alertness = "警觉度2级";
|
|
|
|
+// desc = "您的注意力稳定性和专注力较好,能够在较长的时间内将注意力专注于一件事情上。您的视觉反应能力和洞察力较敏锐,觉察情景中危险刺激的能力较高。";
|
|
|
|
+// } else {
|
|
|
|
+// alertness = "警觉度1级";
|
|
|
|
+// desc = "您的注意力稳定性和专注力非常好,能够在非常长的时间内将注意力专注于一件事情上。您的视觉反应能力和洞察力非常敏锐,觉察情景中危险刺激的能力非常高,在物种生存法则中更易生存下来。";
|
|
|
|
+// }
|
|
|
|
+//
|
|
|
|
+// String taskStartTime = jsonObject.getString("taskStartTime");
|
|
|
|
+// SimpleDateFormat insdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
|
+// SimpleDateFormat outsdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
|
|
|
|
+// taskStartTime = outsdf.format(insdf.parse(taskStartTime));
|
|
|
|
+// //表格数据
|
|
|
|
+// JSONArray tableModule = new JSONArray();
|
|
|
|
+// JSONObject table1 = new JSONObject(true);
|
|
|
|
+// JSONArray columnName = new JSONArray();
|
|
|
|
+// columnName.add("指标名称");
|
|
|
|
+// columnName.add("指标值");
|
|
|
|
+// JSONArray columnValue = new JSONArray();
|
|
|
|
+//
|
|
|
|
+// columnValue.add("当前任务起始时间;平均正确率;超过0.5秒的比例;超过1秒的比例;平均时长(ms)");
|
|
|
|
+// columnValue.add(taskStartTime + ";" + String.format("%.4f", corrent) + ";" + String.format("%.4f", ratio500) + ";" + String.format("%.4f", ratio1000) + ";" + String.format("%.2f", averageTime));
|
|
|
|
+// table1.put("tableName", "table1");
|
|
|
|
+// table1.put("columnName", columnName);
|
|
|
|
+// table1.put("columnValue", columnValue);
|
|
|
|
+// tableModule.add(table1);
|
|
|
|
+// resultDBJson.put("tableModule", tableModule);
|
|
|
|
+//
|
|
|
|
+// JSONObject ifShow = new JSONObject(true);
|
|
|
|
+// ifShow.put("totalScore", false);
|
|
|
|
+// ifShow.put("dimensions", false);
|
|
|
|
+// ifShow.put("note", false);
|
|
|
|
+// ifShow.put("radar", false);
|
|
|
|
+// ifShow.put("table", true);
|
|
|
|
+// resultDBJson.put("ifShow", ifShow);
|
|
|
|
+//
|
|
|
|
+// Map<String, String> resultMap = new LinkedHashMap<>();
|
|
|
|
+// resultMap.put("当前任务起始时间", taskStartTime);
|
|
|
|
+// resultMap.put("平均正确率", String.format("%.4f", corrent));
|
|
|
|
+// resultMap.put("超过0.5秒的比例", String.format("%.4f", ratio500));
|
|
|
|
+// resultMap.put("超过1秒的比例", String.format("%.4f", ratio1000));
|
|
|
|
+// //resultMap.put("平均时长(ms)", String.valueOf(new BigDecimal((double) allTime / (double) dataList.size()).setScale(2, RoundingMode.HALF_UP).doubleValue()));
|
|
|
|
+// resultMap.put("平均时长(ms)", String.format("%.2f", averageTime));
|
|
|
|
+// /*resultMap.put("警觉度等级", alertness);
|
|
|
|
+// resultMap.put("解释", desc);*/
|
|
|
|
+// resultDBJson.put("当前任务起始时间", taskStartTime);
|
|
|
|
+// resultDBJson.put("平均正确率", String.format("%.4f", corrent));
|
|
|
|
+// resultDBJson.put("超过0.5秒的比例",String.format("%.4f", ratio500));
|
|
|
|
+// resultDBJson.put("超过1秒的比例",String.format("%.4f", ratio1000));
|
|
|
|
+// //resultDBJson.put("平均时长(ms)", String.valueOf(new BigDecimal((double) allTime / (double) dataList.size()).setScale(2, RoundingMode.HALF_UP).doubleValue()));
|
|
|
|
+// resultDBJson.put("平均时长(ms)", String.format("%.2f", averageTime));
|
|
|
|
+// /*resultDBJson.put("警觉度等级", alertness);
|
|
|
|
+// resultDBJson.put("解释", desc);*/
|
|
|
|
+// resultMapList.add(resultMap);
|
|
|
|
+// if (Constant.QUEST_TYPE_ALERTNESS.equals(type)) {
|
|
|
|
+// fileName = fileName + "-" + Constant.SHEET_NAME_ALERTNESS + ".xlsx";
|
|
|
|
+// name = Constant.SHEET_NAME_ALERTNESS;
|
|
|
|
+// } else if (Constant.QUEST_TYPE_ALERTNESS_CHILD.equals(type)) {
|
|
|
|
+// fileName = fileName + "-" + Constant.SHEET_NAME_ALERTNESS_CHILD + ".xlsx";
|
|
|
|
+// name = Constant.SHEET_NAME_ALERTNESS_CHILD;
|
|
|
|
+// } else {
|
|
|
|
+// fileName = fileName + "-" + Constant.SHEET_NAME_ALERTNESS_ADDICTION + ".xlsx";
|
|
|
|
+// name = Constant.SHEET_NAME_ALERTNESS_ADDICTION;
|
|
|
|
+// }
|
|
|
|
+// String datas = jsonArray.toString();
|
|
|
|
+// ExcelUtil.createExcelFile(ObjectNewEntity.class, dataList, resultMapList, new ExcelClass().contentExcel(Constant.QUEST_TYPE_ALERTNESS), fileName, name);
|
|
|
|
+// JSONObject returnJson = new JSONObject(true);
|
|
|
|
+// returnJson.put("fileName", fileName);
|
|
|
|
+// returnJson.put("name", name);
|
|
|
|
+// returnJson.put("resultJson", resultDBJson);
|
|
|
|
+// returnJson.put("datas", datas);
|
|
|
|
+// return returnJson;
|
|
|
|
+// }
|
|
|
|
+
|
|
|
|
|
|
}
|
|
}
|