Răsfoiți Sursa

Merge branch 'dev0410' of https://git.oschina.net/songyue123456/comm-ques-bank.git into dev0410

weiwenhai 7 ani în urmă
părinte
comite
5b266b16fb

+ 0 - 1
cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/ExportPaperAbstractService.java

@@ -236,7 +236,6 @@ public abstract class ExportPaperAbstractService {
      * 创建机考文件,并打包上传至又拍云
      * @param paperId
      * @param currNum
-     * ObjectId("591ead1290994d57cd453464")
      * @throws IOException 
      */
     protected void uploadComputerTestFile(ExtractConfig extractConfig,AccessUser accessUser) throws IOException{

+ 19 - 7
cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/InitPaperExpService.java

@@ -9,6 +9,8 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
 
 import javax.xml.bind.JAXBElement;
 
@@ -299,16 +301,16 @@ public  class InitPaperExpService {
     		if(paperDetailUnitExps != null && paperDetailUnitExps.size()>0){
     			for(int i = 0;i<paperDetailUnitExps.size();i++){
     				PaperDetailUnitExp paperDetailUnitExp = paperDetailUnitExps.get(i);
-    				//判断是否为套题
     				if(paperDetailUnitExp.getQuestionType() == QuesStructType.NESTED_ANSWER_QUESTION){
     					List<Question> subQuestions = paperDetailUnitExp.getQuestion().getSubQuestions();
     					for(int j = 0;j<subQuestions.size();j++){
     						subQuestions.get(j).setNumber(number+j);
     					}
+    					number += subQuestions.size();
     				}else {
     					paperDetailUnitExp.setNumber(number);
+    					number++;
 					}
-    				number++;
         		}
     		}
     	}
@@ -657,16 +659,26 @@ public  class InitPaperExpService {
                             if(tObj.getClass().equals(Text.class)){
                                 Text text = (Text)tObj;
                                 String str = text.getValue();
+                                //1
                                 str = str.replaceAll("###","______");
                                 text.setValue(str);
-                                if(str.matches("##\\d{1,}##")){
-                                    int curNum = num + index;
-                                    text.setValue("___"+(curNum)+"___");
+                                //2
+                                Pattern pattern = Pattern.compile("##\\d{1,}##");
+                        		Matcher m = pattern.matcher(str);
+                            	while(m.find()){
+                            		int curNum = num + index;
+                                    String a = m.group();
+                                    str = str.replaceAll(a, "___"+(curNum)+"___");
+                                    text.setValue(str);
                                     index++;
-                                }else if(str.startsWith("#") || str.equals("___")){
+                            	}
+                            	//3
+                                if(str.startsWith("#") || str.equals("___")){
                                     curMap.put(cur,str);
                                     text.setValue("");
-                                }else if(str.matches("^\\d{1,}$")){
+                                }
+                                //4
+                                if(str.matches("^\\d{1,}$")){
                                     String preStr = curMap.get(cur - 1);
                                     if(!StringUtils.isEmpty(preStr) && preStr.startsWith("#")){
                                         int curNum = num + index;

+ 0 - 1
cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/TjdxExportPaperService.java

@@ -8,7 +8,6 @@ import org.springframework.stereotype.Service;
 
 import cn.com.qmth.examcloud.common.uac.entity.AccessUser;
 
-import com.qmth.cqb.paper.dto.PaperDetailExp;
 import com.qmth.cqb.paper.dto.PaperExp;
 import com.qmth.cqb.paper.model.ExamFile;
 import com.qmth.cqb.paper.model.ExportStructure;

+ 0 - 1
cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/xajdExportPaperService.java

@@ -7,7 +7,6 @@ import org.springframework.stereotype.Service;
 
 import cn.com.qmth.examcloud.common.uac.entity.AccessUser;
 
-import com.qmth.cqb.paper.dto.PaperDetailExp;
 import com.qmth.cqb.paper.dto.PaperExp;
 import com.qmth.cqb.paper.model.ExamFile;
 import com.qmth.cqb.paper.model.ExportStructure;

+ 0 - 2
cqb-paper/src/main/java/com/qmth/cqb/paper/service/impl/ExportPaperServiceImpl.java

@@ -20,8 +20,6 @@ import org.springframework.stereotype.Service;
 
 import com.google.gson.Gson;
 import com.qmth.cqb.paper.dao.PaperRepo;
-import com.qmth.cqb.paper.model.ExamPaper;
-import com.qmth.cqb.paper.model.ExtractConfig;
 import com.qmth.cqb.paper.model.Paper;
 import com.qmth.cqb.paper.model.PaperDetail;
 import com.qmth.cqb.paper.model.PaperDetailUnit;

+ 1 - 1
cqb-paper/src/main/java/com/qmth/cqb/paper/service/impl/PaperServiceImpl.java

@@ -559,7 +559,7 @@ public class PaperServiceImpl implements PaperService{
                                 subQues.setQuesParams(params);
                                 quesService.formatQuesUnit(subQues);
                             }
-                            String quesBodyHtml = relaceQuestionIdx(question.getQuesBody(), index);
+                            String quesBodyHtml = relaceQuestionIdx(question.getQuesBody(),0);
                             question.setQuesBody(quesBodyHtml);
                         }
                     }