|
@@ -284,14 +284,14 @@ public class DesktopFacadeService {
|
|
|
}
|
|
}
|
|
|
double totalScore = Double.parseDouble(record.get("totalScore").toString());
|
|
double totalScore = Double.parseDouble(record.get("totalScore").toString());
|
|
|
double qualifiedRadio = Double.parseDouble(record.get("qualifiedRadio").toString());
|
|
double qualifiedRadio = Double.parseDouble(record.get("qualifiedRadio").toString());
|
|
|
- String scoringType = (String) record.get("scoringType");
|
|
|
|
|
- Number curScore = null;
|
|
|
|
|
|
|
+ String scoringType = record.get("scoringType") != null ? record.get("scoringType").toString() : null;
|
|
|
|
|
+ Double curScore = null;
|
|
|
if ("平均分".equals(scoringType)) {
|
|
if ("平均分".equals(scoringType)) {
|
|
|
- curScore = (Number) record.get("averageScore");
|
|
|
|
|
|
|
+ curScore = parseScore(record.get("averageScore"));
|
|
|
} else if ("最高分".equals(scoringType)) {
|
|
} else if ("最高分".equals(scoringType)) {
|
|
|
- curScore = (Number) record.get("maxScore");
|
|
|
|
|
|
|
+ curScore = parseScore(record.get("maxScore"));
|
|
|
} else if ("最近得分".equals(scoringType)) {
|
|
} else if ("最近得分".equals(scoringType)) {
|
|
|
- curScore = (Number) record.get("recentScore");
|
|
|
|
|
|
|
+ curScore = parseScore(record.get("recentScore"));
|
|
|
}
|
|
}
|
|
|
if (curScore != null) {
|
|
if (curScore != null) {
|
|
|
double passScore = totalScore * qualifiedRadio / 100.0;
|
|
double passScore = totalScore * qualifiedRadio / 100.0;
|
|
@@ -300,7 +300,19 @@ public class DesktopFacadeService {
|
|
|
}
|
|
}
|
|
|
return flag;
|
|
return flag;
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
|
|
+ private Double parseScore(Object value) {
|
|
|
|
|
+ if (value == null) {
|
|
|
|
|
+ return null;
|
|
|
|
|
+ }
|
|
|
|
|
+ if (value instanceof Number) {
|
|
|
|
|
+ return ((Number) value).doubleValue();
|
|
|
|
|
+ }
|
|
|
|
|
+ try {
|
|
|
|
|
+ return Double.parseDouble(value.toString());
|
|
|
|
|
+ } catch (NumberFormatException e) {
|
|
|
|
|
+ return null;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
public Map<String, String> chargeExamPassingFlag(Map<String, Map<String, Object>> records) {
|
|
public Map<String, String> chargeExamPassingFlag(Map<String, Map<String, Object>> records) {
|
|
|
Map<String, String> examStatusMap = new HashMap<>();
|
|
Map<String, String> examStatusMap = new HashMap<>();
|
|
|
if (records == null || records.isEmpty()) {
|
|
if (records == null || records.isEmpty()) {
|