Browse Source

代码优化

‘xugp 2 years ago
parent
commit
c3d51b2796

+ 4 - 2
ims-service/ims-eval/src/main/java/com/ims/eval/controller/IntervalScoringTableController.java

@@ -56,7 +56,9 @@ public class IntervalScoringTableController {
 	public R saveOrUpdate(@RequestBody IntervalScoringTable intervalScoringTable) {
 
 		try {
-			intervalScoringTable.setRange(URLDecoder.decode(intervalScoringTable.getRange()));
+			String decode = URLDecoder.decode(intervalScoringTable.getRange(), "UTF-8");
+			String s = decode.replaceAll(" ", "+");
+			intervalScoringTable.setRange(s);
 			String regularExpression = intervalScoringTable.getRegularExpression();
 			//字符串空格替换
 			regularExpression.replaceAll("","+");
@@ -67,7 +69,7 @@ public class IntervalScoringTableController {
 			} else {
 				return R.error().data("操作数据库失败!");
 			}
-		} catch (CustomException e){
+		} catch (CustomException | UnsupportedEncodingException e){
 			return R.customError(e.getMessage()).data("失败!");
 		}
 	}

+ 18 - 15
ims-service/ims-eval/src/main/java/com/ims/eval/schedule/ScoreCalculationSchedule.java

@@ -141,23 +141,26 @@ public class ScoreCalculationSchedule {
 	* */
 	public Boolean handle(String range) {
 
-		Map<String,Object> map = new HashMap<>();
-
-		//将区间表达式拆分
-		ArrayList<Token> tokens = Analyzer.getTokens(range);
-		//使用不同编码代替函数
-		AlarmExpression alarmExpression = Analyzer.createAlarmExpression(tokens);
-		List<AlarmExpression> children = alarmExpression.getChildren();
-		for (AlarmExpression alarmExpression1 : children){
-			String calculator = MathCalculatorUtil.calculator(alarmExpression1.getExpression());
-			alarmExpression.setExpression(alarmExpression.getExpression().replaceAll(alarmExpression1.getFunCode(), calculator));
-		}
-
-		//判断表达式返回结果
-		Boolean o = (Boolean) ScriptShell.parseExpr(alarmExpression.getExpression(), map);
+		Boolean o = true;
+		try {
+			//将区间表达式拆分
+			ArrayList<Token> tokens = Analyzer.getTokens(range);
+			//使用不同编码代替函数
+			AlarmExpression alarmExpression = Analyzer.createAlarmExpression(tokens);
+			List<AlarmExpression> children = alarmExpression.getChildren();
+			for (AlarmExpression alarmExpression1 : children){
+				String calculator = MathCalculatorUtil.calculator(alarmExpression1.getExpression());
+				alarmExpression.setExpression(alarmExpression.getExpression().replaceAll(alarmExpression1.getFunCode(), calculator));
+			}
 
+			//判断表达式返回结果
+			Map<String,Object> map = new HashMap<>();
+			o = (Boolean) ScriptShell.parseExpr(alarmExpression.getExpression(), map);
+		}catch (Exception e){
+			log.info(e.getMessage());
+		}
 		return o;
-
 	}
 
+
 }