宋悦 vor 8 Jahren
Ursprung
Commit
9c19e9dc46

+ 10 - 2
cqb-paper/src/main/java/com/qmth/cqb/paper/service/ExportPaperService.java

@@ -96,6 +96,8 @@ public class ExportPaperService {
                     paperDetailUnitRepo.findByPaperDetail(paperDetails.get(i));
             List<PaperDetailUnitExp> paperDetailUnitExps =
                     BeanCopierUtil.copyPropertiesOfList(paperDetailUnits,PaperDetailUnitExp.class);
+            //选择题,套题下选择题  选项顺序重新排列
+            paperService.reorderChoicequestionOption(paperDetailUnitExps);
             paperDetailExps.get(i).setPaperDetailUnits(paperDetailUnitExps);
         }
         //初始化试卷序号
@@ -184,8 +186,10 @@ public class ExportPaperService {
                         subQues.setQuesBodyWord(setSubQuesNum(subQues.getQuesBodyWord(),++subNum));
                         List<QuesOption> subOptionList = subQues.getQuesOptions();
                         if(subOptionList != null && subOptionList.size() > 0){
+                            int index = 0;
                             for(QuesOption quesOption:subOptionList){
-                                quesOption.setOptionBodyWord(setOptionNum(quesOption.getOptionBodyWord(),quesOption.getNumber()));
+                                quesOption.setOptionBodyWord(setOptionNum(quesOption.getOptionBodyWord(),getOptionNum(index)));
+                                index++;
                             }
                         }
                     }
@@ -197,6 +201,11 @@ public class ExportPaperService {
         }
     }
 
+    public String getOptionNum(int number){
+        char optionNum = (char)(65 + number);
+        return String.valueOf(optionNum);
+    }
+
     /**
      * 获取当前试卷下所有试题WordPkg
      * @param id
@@ -252,5 +261,4 @@ public class ExportPaperService {
         return DocxProcessUtil.formatPWordMl(XmlUtils.marshaltoString(p));
     }
 
-
 }

+ 3 - 2
cqb-paper/src/main/java/com/qmth/cqb/paper/service/ExtractService.java

@@ -83,8 +83,9 @@ public class ExtractService {
 
     /**
      * 随机抽一张试卷
-     * 
-     * @param papers
+     * @param examId
+     * @param courseCode
+     * @param groupCode
      * @return
      */
     public Map<String, Object> randomPaper(Long examId, String courseCode, String groupCode) {

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

@@ -100,23 +100,19 @@ public class ImportPaperService {
      * @param file
      * @return
      */
-    public Map<String,String> ImportPaper(String paperName, String courseNo, String courseName, AccessUser user, File file) {
+    public String ImportPaper(String paperName, String courseNo, String courseName, AccessUser user, File file) {
         String errorInfo = paperService.checkPaperName(paperName, user.getOrgId().toString());
-        Map<String,String> returnMap = new HashMap<String,String>();
         if (errorInfo == null) {
             errorInfo = "";
-            returnMap.putAll(processImportPaper(paperName, courseNo, courseName, user, file));
-            errorInfo += returnMap.get("errorInfo");
-            if (StringUtils.isBlank(errorInfo)||"null".equals(errorInfo)) {
-            	returnMap.put("returnInfo", "success");
-                return returnMap;
+            errorInfo += processImportPaper(paperName, courseNo, courseName, user, file);
+            if (StringUtils.isEmpty(errorInfo)) {
+                return "success";
             } else {
                 log.error("导入异常:" + errorInfo);
-                returnMap.put("returnInfo",errorInfo);
-                return returnMap;
+                return errorInfo;
             }
         } else {
-            return returnMap;
+            return errorInfo;
         }
     }
 
@@ -128,13 +124,13 @@ public class ImportPaperService {
      * @param paperDetailUnits
      * @param importPaperCheck
      */
-    public String savePaper(Paper paper, List paperDetails, List paperDetailUnits, List questions,
+    public void savePaper(Paper paper, List paperDetails, List paperDetailUnits, List questions,
             ImportPaperCheck importPaperCheck) {
 
         Paper tempPaper = null;
 
         if (!StringUtils.isEmpty(importPaperCheck.errorInfo))
-            return null;
+            return;
 
         if (paper != null) {
             tempPaper = paperRepo.save(paper);
@@ -157,8 +153,12 @@ public class ImportPaperService {
 
     /**
      * 处理导入试卷
-     *
+     * @param paperName
+     * @param courseNo
+     * @param courseName
+     * @param user
      * @param file
+     * @return
      */
     public String processImportPaper(String paperName, String courseNo, String courseName, AccessUser user, File file) {
 

+ 2 - 2
cqb-paper/src/main/java/com/qmth/cqb/paper/service/PaperService.java

@@ -359,7 +359,7 @@ public class PaperService {
     /**
      * 重新对选择题option进行排序(多选、单选、套题下选择题)
      */
-    private void reorderChoicequestionOption(List<PaperDetailUnitExp> paperDetailUnitExps){
+    public void reorderChoicequestionOption(List<PaperDetailUnitExp> paperDetailUnitExps){
     	for(PaperDetailUnitExp paperDetailUnitExp:paperDetailUnitExps){
         	String optionOrder = paperDetailUnitExp.getOptionOrder();
         	if(StringUtil.isNotBlank(optionOrder)){
@@ -384,7 +384,7 @@ public class PaperService {
         }
     }
 
-    private List<QuesOption> reorderOptionCore(List<QuesOption> quesOptions,String optionOrder){
+    public List<QuesOption> reorderOptionCore(List<QuesOption> quesOptions,String optionOrder){
 		List<QuesOption> newQuesOptions = new ArrayList<QuesOption>();
 		if(StringUtil.isBlank(optionOrder)||quesOptions.isEmpty()){
 			return null;

+ 1 - 12
cqb-paper/src/main/java/com/qmth/cqb/paper/web/ImportPaperController.java

@@ -67,20 +67,9 @@ public class ImportPaperController {
         AccessUser user = (AccessUser) request.getAttribute("accessUser");
         log.info("导入开始");
         File tempFile = importPaperService.getUploadFile(file);
-        Map<String,String> returnMap  = importPaperService.ImportPaper(paperName, courseNo, courseName, user, tempFile);
-        String returnStr = returnMap.get("returnInfo");
+        String returnStr  = importPaperService.ImportPaper(paperName, courseNo, courseName, user, tempFile);
         log.info("导入结束");
         if (returnStr.equals("success")) {
-        	try {
-        		//启动流程
-            	WorkFlowModel workFlowModel = new WorkFlowModel();
-            	workFlowModel.setStarter(user.getUserId()+"");
-            	String processInstanceId = comProcessService.tranStartProcess("importPaperAduit", workFlowModel);
-            	String paperId = returnMap.get("paperId");
-            	dataMapModelService.saveDataMapModel(new DataMapModel(processInstanceId,paperId));
-			} catch (Exception e) {
-				e.printStackTrace();
-			}
             return new ResponseEntity(returnStr, HttpStatus.OK);
         } else {
             Map map = new HashMap();