Browse Source

套题死循环bug修改

weiwenhai 7 years ago
parent
commit
5c17eb0231

+ 1 - 1
cqb-comm-utils/src/main/java/com/qmth/cqb/utils/CommonUtils.java

@@ -51,7 +51,7 @@ public final class CommonUtils {
     
     private static final String[][] BASIC_ESCAPE = {
         {"\"", """}, // " - double-quote
-        {"&", "&"},   // & - ampersand
+        //{"&", "&"},   // & - ampersand
         {"\"", "&rdquo;"}, // < - less-than 
         {"\u0192", "&fnof;"}, // latin small f with hook = function= florin, U+0192 ISOtech -->
         // <!-- Greek -->

+ 1 - 1
cqb-paper/src/main/java/com/qmth/cqb/paper/model/ImportPaperMsg.java

@@ -141,7 +141,7 @@ public class ImportPaperMsg {
     /**
      * 一般校验
      */
-    public static final String errMsg_12 = "格式错误,请仔细检查(题干必须有题号、选项必须有选项号、答案必须存在且格式正确)";
+    public static final String errMsg_12 = "格式错误,请仔细检查(1.题干必须有题号、选项必须有选项号、答案必须存在且格式正确;2.标签格式是否正确[小题分数]、[答案]、[难度]、[一级属性]、[二级属性]、[公开度]、[小题型])";
 
     /**
      * 选项排列顺序

+ 9 - 4
cqb-paper/src/main/java/com/qmth/cqb/paper/service/ImportPaperService.java

@@ -337,7 +337,10 @@ public class ImportPaperService {
             }else if(paperDetail == null){
                 throw new PaperException("导入文件格式有误,必须有大题头信息,且以 [ 开头!");
             }else{
-                throw new PaperException(importPaperCheck.quesName+ImportPaperMsg.errMsg_12);
+            	if(pText.startsWith(ImportPaperMsg.left_bracket)){
+            		throw new PaperException(pText + ",标签格式不正确!正确标签格式:[小题分数]、[答案]、[难度]、[一级属性]、[二级属性]、[公开度]、[小题型]");
+            	}
+                throw new PaperException(importPaperCheck.getQuesName() +ImportPaperMsg.errMsg_12);
             }
             if (!StringUtils.isEmpty(importPaperCheck.errorInfo)) {
                 throw new PaperException(importPaperCheck.errorInfo);
@@ -382,12 +385,13 @@ public class ImportPaperService {
     }
 
     public boolean isMainQuesHeader(String pText){
-        return pText.startsWith(ImportPaperMsg.left_bracket)
+        /*return pText.startsWith(ImportPaperMsg.left_bracket)
                 && !pText.startsWith(ImportPaperMsg.answer_word)
                 && !pText.startsWith(ImportPaperMsg.score_word)
                 && !pText.startsWith(ImportPaperMsg.subQuestionType_word)
                 && !pText.startsWith(ImportPaperMsg.nestedQuestion_start)
-                && !pText.startsWith(ImportPaperMsg.nestedQuestion_number);
+                && !pText.startsWith(ImportPaperMsg.nestedQuestion_number);*/
+    	return pText.startsWith(ImportPaperMsg.questionClassify_word);
     }
 
     public boolean isHeader(String pText){
@@ -400,7 +404,8 @@ public class ImportPaperService {
                 || pText.startsWith(ImportPaperMsg.subQuestionType_word)
                 || pText.startsWith(ImportPaperMsg.subQuesScore_word)
                 || pText.startsWith(ImportPaperMsg.nestedQuestion_start)
-                || pText.startsWith(ImportPaperMsg.nestedQuestion_number);
+                || pText.startsWith(ImportPaperMsg.nestedQuestion_number)
+                || pText.startsWith(ImportPaperMsg.left_bracket);
     }
 
     /**