浏览代码

提交后端代码bug

weiwenhai 6 年之前
父节点
当前提交
7243ba5826

+ 13 - 14
examcloud-core-questions-service/src/main/java/cn/com/qmth/examcloud/core/questions/service/impl/ExtractConfigProviderServiceImpl.java

@@ -51,7 +51,6 @@ import cn.com.qmth.examcloud.question.core.question.DefaultQuestion;
 import cn.com.qmth.examcloud.question.core.question.DefaultQuestionOption;
 import cn.com.qmth.examcloud.question.core.question.DefaultQuestionOption;
 import cn.com.qmth.examcloud.question.core.question.DefaultQuestionStructure;
 import cn.com.qmth.examcloud.question.core.question.DefaultQuestionStructure;
 import cn.com.qmth.examcloud.question.core.question.DefaultQuestionUnit;
 import cn.com.qmth.examcloud.question.core.question.DefaultQuestionUnit;
-import cn.com.qmth.examcloud.question.core.question.QuestionOption;
 import cn.com.qmth.examcloud.question.core.question.QuestionType;
 import cn.com.qmth.examcloud.question.core.question.QuestionType;
 
 
 /**
 /**
@@ -367,7 +366,7 @@ public class ExtractConfigProviderServiceImpl implements ExtractConfigProviderSe
 		defaultQuestionStructure.setDefaultQuestionUnitList(questionUnitList);
 		defaultQuestionStructure.setDefaultQuestionUnitList(questionUnitList);
 		DefaultQuestion defaultQuestion = new DefaultQuestion();
 		DefaultQuestion defaultQuestion = new DefaultQuestion();
 		defaultQuestion.setId(questionId);
 		defaultQuestion.setId(questionId);
-		defaultQuestion.setMasterVersion(defaultQuestionStructure);
+		defaultQuestion.setDefaultQuestionStructure(defaultQuestionStructure);
 		long newQuesTime = System.currentTimeMillis();
 		long newQuesTime = System.currentTimeMillis();
 		log.debug("构建一个新的试题单元耗时:"+(newQuesTime - oldQuesTime)+"ms");
 		log.debug("构建一个新的试题单元耗时:"+(newQuesTime - oldQuesTime)+"ms");
 		//替换试题单元中的音频路径
 		//替换试题单元中的音频路径
@@ -475,19 +474,19 @@ public class ExtractConfigProviderServiceImpl implements ExtractConfigProviderSe
 			if(audioTimeConfig != null){
 			if(audioTimeConfig != null){
 				//2.1 取到题干,给a标签添加url
 				//2.1 取到题干,给a标签添加url
 				String quesBody = null;
 				String quesBody = null;
-				if(StringUtils.isNotBlank(defaultQuestion.getMasterVersion().getBody())){
+				if(StringUtils.isNotBlank(defaultQuestion.getDefaultQuestionStructure().getBody())){
 					//套题
 					//套题
-					quesBody = defaultQuestion.getMasterVersion().getBody();
-					defaultQuestion.getMasterVersion().setBody(buildBody(quesBody, audioTimeConfig.getPlayTime()));
+					quesBody = defaultQuestion.getDefaultQuestionStructure().getBody();
+					defaultQuestion.getDefaultQuestionStructure().setBody(buildBody(quesBody, audioTimeConfig.getPlayTime()));
 				}else {
 				}else {
-					DefaultQuestionUnit defaultQuestionUnit = (DefaultQuestionUnit) defaultQuestion.getMasterVersion().getQuestionUnitList().get(0);
+					DefaultQuestionUnit defaultQuestionUnit = (DefaultQuestionUnit) defaultQuestion.getDefaultQuestionStructure().getDefaultQuestionUnitList().get(0);
 					quesBody = defaultQuestionUnit.getBody();
 					quesBody = defaultQuestionUnit.getBody();
 					defaultQuestionUnit.setBody(buildBody(quesBody, audioTimeConfig.getPlayTime()));
 					defaultQuestionUnit.setBody(buildBody(quesBody, audioTimeConfig.getPlayTime()));
 					if(defaultQuestionUnit.getQuestionType() == QuestionType.SINGLE_CHOICE || defaultQuestionUnit.getQuestionType() == QuestionType.MULTIPLE_CHOICE){
 					if(defaultQuestionUnit.getQuestionType() == QuestionType.SINGLE_CHOICE || defaultQuestionUnit.getQuestionType() == QuestionType.MULTIPLE_CHOICE){
-						List<QuestionOption> questionOptionList = defaultQuestionUnit.getQuestionOptionList();
+						List<DefaultQuestionOption> questionOptionList = defaultQuestionUnit.getDefaultQuestionOptionList();
 						if(questionOptionList != null && questionOptionList.size()>0){
 						if(questionOptionList != null && questionOptionList.size()>0){
 							for(int i = 0;i<questionOptionList.size();i++){
 							for(int i = 0;i<questionOptionList.size();i++){
-								QuestionOption defaultQuestionOption = questionOptionList.get(i);
+								DefaultQuestionOption defaultQuestionOption = questionOptionList.get(i);
 								defaultQuestionOption.setBody(buildBody(defaultQuestionOption.getBody(), audioTimeConfig.getPlayTime()));
 								defaultQuestionOption.setBody(buildBody(defaultQuestionOption.getBody(), audioTimeConfig.getPlayTime()));
 							}
 							}
 						}
 						}
@@ -495,19 +494,19 @@ public class ExtractConfigProviderServiceImpl implements ExtractConfigProviderSe
 				}
 				}
 			}else {
 			}else {
 				String quesBody = null;
 				String quesBody = null;
-				if(StringUtils.isNotBlank(defaultQuestion.getMasterVersion().getBody())){
+				if(StringUtils.isNotBlank(defaultQuestion.getDefaultQuestionStructure().getBody())){
 					//套题
 					//套题
-					quesBody = defaultQuestion.getMasterVersion().getBody();
-					defaultQuestion.getMasterVersion().setBody(buildBody(quesBody, null));
+					quesBody = defaultQuestion.getDefaultQuestionStructure().getBody();
+					defaultQuestion.getDefaultQuestionStructure().setBody(buildBody(quesBody, null));
 				}else {
 				}else {
-					DefaultQuestionUnit defaultQuestionUnit = (DefaultQuestionUnit) defaultQuestion.getMasterVersion().getQuestionUnitList().get(0);
+					DefaultQuestionUnit defaultQuestionUnit = (DefaultQuestionUnit) defaultQuestion.getDefaultQuestionStructure().getDefaultQuestionUnitList().get(0);
 					quesBody = defaultQuestionUnit.getBody();
 					quesBody = defaultQuestionUnit.getBody();
 					defaultQuestionUnit.setBody(buildBody(quesBody, null));
 					defaultQuestionUnit.setBody(buildBody(quesBody, null));
 					if(defaultQuestionUnit.getQuestionType() == QuestionType.SINGLE_CHOICE || defaultQuestionUnit.getQuestionType() == QuestionType.MULTIPLE_CHOICE){
 					if(defaultQuestionUnit.getQuestionType() == QuestionType.SINGLE_CHOICE || defaultQuestionUnit.getQuestionType() == QuestionType.MULTIPLE_CHOICE){
-						List<QuestionOption> questionOptionList = defaultQuestionUnit.getQuestionOptionList();
+						List<DefaultQuestionOption> questionOptionList = defaultQuestionUnit.getDefaultQuestionOptionList();
 						if(questionOptionList != null && questionOptionList.size()>0){
 						if(questionOptionList != null && questionOptionList.size()>0){
 							for(int i = 0;i<questionOptionList.size();i++){
 							for(int i = 0;i<questionOptionList.size();i++){
-								QuestionOption defaultQuestionOption = questionOptionList.get(i);
+								DefaultQuestionOption defaultQuestionOption = questionOptionList.get(i);
 								defaultQuestionOption.setBody(buildBody(defaultQuestionOption.getBody(), null));
 								defaultQuestionOption.setBody(buildBody(defaultQuestionOption.getBody(), null));
 							}
 							}
 						}
 						}

+ 16 - 18
examcloud-core-questions-service/src/main/java/cn/com/qmth/examcloud/core/questions/service/impl/QuestionProviderServiceImpl.java

@@ -30,9 +30,7 @@ import cn.com.qmth.examcloud.question.core.question.DefaultQuestion;
 import cn.com.qmth.examcloud.question.core.question.DefaultQuestionOption;
 import cn.com.qmth.examcloud.question.core.question.DefaultQuestionOption;
 import cn.com.qmth.examcloud.question.core.question.DefaultQuestionStructure;
 import cn.com.qmth.examcloud.question.core.question.DefaultQuestionStructure;
 import cn.com.qmth.examcloud.question.core.question.DefaultQuestionUnit;
 import cn.com.qmth.examcloud.question.core.question.DefaultQuestionUnit;
-import cn.com.qmth.examcloud.question.core.question.QuestionOption;
 import cn.com.qmth.examcloud.question.core.question.QuestionType;
 import cn.com.qmth.examcloud.question.core.question.QuestionType;
-import cn.com.qmth.examcloud.question.core.question.QuestionUnit;
 
 
 /**
 /**
  * @author 		weiwenhai
  * @author 		weiwenhai
@@ -73,14 +71,14 @@ public class QuestionProviderServiceImpl implements QuestionProviderService{
 		question.setIsolated(true);
 		question.setIsolated(true);
 		question.setPublicity(true);
 		question.setPublicity(true);
 		question.setProperties(defaultQuestion.getProperties());
 		question.setProperties(defaultQuestion.getProperties());
-		DefaultQuestionStructure defaultQuestionStructure = (DefaultQuestionStructure) defaultQuestion.getMasterVersion();
+		DefaultQuestionStructure defaultQuestionStructure = (DefaultQuestionStructure) defaultQuestion.getDefaultQuestionStructure();
 		//判断试题单元对象
 		//判断试题单元对象
-		List<QuestionUnit> questionUnitList  = defaultQuestionStructure.getQuestionUnitList();
+		List<DefaultQuestionUnit> questionUnitList  = defaultQuestionStructure.getDefaultQuestionUnitList();
 		if(questionUnitList == null || questionUnitList.size()<1){
 		if(questionUnitList == null || questionUnitList.size()<1){
 			throw new StatusException("Q-012033", "试题单元对象为空");
 			throw new StatusException("Q-012033", "试题单元对象为空");
 		}
 		}
 		if(questionUnitList.size()==1){
 		if(questionUnitList.size()==1){
-			QuestionUnit defaultQuestionUnit = questionUnitList.get(0);
+			DefaultQuestionUnit defaultQuestionUnit = questionUnitList.get(0);
 			//判断试题题型
 			//判断试题题型
 			if(defaultQuestionUnit.getQuestionType() == null){
 			if(defaultQuestionUnit.getQuestionType() == null){
 				throw new StatusException("Q-012039", "试题单元中题型为空");
 				throw new StatusException("Q-012039", "试题单元中题型为空");
@@ -95,7 +93,7 @@ public class QuestionProviderServiceImpl implements QuestionProviderService{
 			question.setQuestionType(type);
 			question.setQuestionType(type);
 			//如果是选择题,判断选项
 			//如果是选择题,判断选项
 			if(defaultQuestionUnit.getQuestionType() == QuestionType.SINGLE_CHOICE || defaultQuestionUnit.getQuestionType() == QuestionType.MULTIPLE_CHOICE){
 			if(defaultQuestionUnit.getQuestionType() == QuestionType.SINGLE_CHOICE || defaultQuestionUnit.getQuestionType() == QuestionType.MULTIPLE_CHOICE){
-				List<QuestionOption> questionOptionList = defaultQuestionUnit.getQuestionOptionList();
+				List<DefaultQuestionOption> questionOptionList = defaultQuestionUnit.getDefaultQuestionOptionList();
 				if(questionOptionList == null || questionOptionList.size()<1){
 				if(questionOptionList == null || questionOptionList.size()<1){
 					throw new StatusException("Q-012049", "试题单元中选项为空");
 					throw new StatusException("Q-012049", "试题单元中选项为空");
 				}
 				}
@@ -112,7 +110,7 @@ public class QuestionProviderServiceImpl implements QuestionProviderService{
 			question.setQuestionType(QuesStructType.NESTED_ANSWER_QUESTION);
 			question.setQuestionType(QuesStructType.NESTED_ANSWER_QUESTION);
 			//生成子题
 			//生成子题
 			List<Question> subList = new ArrayList<Question>();
 			List<Question> subList = new ArrayList<Question>();
-			for(QuestionUnit defaultQuestionUnit:questionUnitList){
+			for(DefaultQuestionUnit defaultQuestionUnit:questionUnitList){
 				Question subQues = new Question();
 				Question subQues = new Question();
 				subQues.setId(UUID.randomUUID().toString());
 				subQues.setId(UUID.randomUUID().toString());
 				subQues.setDifficulty("中");
 				subQues.setDifficulty("中");
@@ -132,7 +130,7 @@ public class QuestionProviderServiceImpl implements QuestionProviderService{
 				subQues.setQuestionType(type);
 				subQues.setQuestionType(type);
 				//如果是选择题,判断选项
 				//如果是选择题,判断选项
 				if(defaultQuestionUnit.getQuestionType() == QuestionType.SINGLE_CHOICE || defaultQuestionUnit.getQuestionType() == QuestionType.MULTIPLE_CHOICE){
 				if(defaultQuestionUnit.getQuestionType() == QuestionType.SINGLE_CHOICE || defaultQuestionUnit.getQuestionType() == QuestionType.MULTIPLE_CHOICE){
-					List<QuestionOption> questionOptionList = defaultQuestionUnit.getQuestionOptionList();
+					List<DefaultQuestionOption> questionOptionList = defaultQuestionUnit.getDefaultQuestionOptionList();
 					if(questionOptionList == null || questionOptionList.size()<1){
 					if(questionOptionList == null || questionOptionList.size()<1){
 						throw new StatusException("Q-012049", "试题单元中选项为空");
 						throw new StatusException("Q-012049", "试题单元中选项为空");
 					}
 					}
@@ -168,10 +166,10 @@ public class QuestionProviderServiceImpl implements QuestionProviderService{
 	}
 	}
 	
 	
 	//构建选择题选项							  
 	//构建选择题选项							  
-	private List<QuesOption> buildOptions(List<QuestionOption> questionOptionList,String[] rightAnswer){
+	private List<QuesOption> buildOptions(List<DefaultQuestionOption> questionOptionList,String[] rightAnswer){
 		List<QuesOption> quesOptions = new ArrayList<QuesOption>();
 		List<QuesOption> quesOptions = new ArrayList<QuesOption>();
 		for(int i=0;i<questionOptionList.size();i++){
 		for(int i=0;i<questionOptionList.size();i++){
-			QuestionOption defaultQuestionOption = questionOptionList.get(i);
+			DefaultQuestionOption defaultQuestionOption = questionOptionList.get(i);
 			QuesOption option = new QuesOption();
 			QuesOption option = new QuesOption();
 			option.setNumber(String.valueOf(i+1));
 			option.setNumber(String.valueOf(i+1));
 			option.setOptionBody(defaultQuestionOption.getBody());
 			option.setOptionBody(defaultQuestionOption.getBody());
@@ -186,7 +184,7 @@ public class QuestionProviderServiceImpl implements QuestionProviderService{
 	}
 	}
 	
 	
 	//构建答案
 	//构建答案
-	private String buildAnswer(QuestionUnit defaultQuestionUnit){
+	private String buildAnswer(DefaultQuestionUnit defaultQuestionUnit){
 		QuestionType questionType = defaultQuestionUnit.getQuestionType();
 		QuestionType questionType = defaultQuestionUnit.getQuestionType();
 		String answer = "";
 		String answer = "";
 		String[] answers = defaultQuestionUnit.getRightAnswer();
 		String[] answers = defaultQuestionUnit.getRightAnswer();
@@ -312,7 +310,7 @@ public class QuestionProviderServiceImpl implements QuestionProviderService{
 			defaultQuestion.setIsolated(true);
 			defaultQuestion.setIsolated(true);
 			defaultQuestion.setRootOrgId(Long.valueOf(question.getOrgId()));
 			defaultQuestion.setRootOrgId(Long.valueOf(question.getOrgId()));
 			defaultQuestion.setProperties(question.getProperties());
 			defaultQuestion.setProperties(question.getProperties());
-			defaultQuestion.setMasterVersion(defaultQuestionStructure);
+			defaultQuestion.setDefaultQuestionStructure(defaultQuestionStructure);
 			return defaultQuestion;
 			return defaultQuestion;
 		}
 		}
 		return null;
 		return null;
@@ -449,14 +447,14 @@ public class QuestionProviderServiceImpl implements QuestionProviderService{
 				question.setIsolated(true);
 				question.setIsolated(true);
 				question.setPublicity(true);
 				question.setPublicity(true);
 				question.setProperties(defaultQuestion.getProperties());
 				question.setProperties(defaultQuestion.getProperties());
-				DefaultQuestionStructure defaultQuestionStructure = (DefaultQuestionStructure) defaultQuestion.getMasterVersion();
+				DefaultQuestionStructure defaultQuestionStructure = (DefaultQuestionStructure) defaultQuestion.getDefaultQuestionStructure();
 				//判断试题单元对象
 				//判断试题单元对象
-				List<QuestionUnit> questionUnitList  = defaultQuestionStructure.getQuestionUnitList();
+				List<DefaultQuestionUnit> questionUnitList  = defaultQuestionStructure.getDefaultQuestionUnitList();
 				if(questionUnitList == null || questionUnitList.size()<1){
 				if(questionUnitList == null || questionUnitList.size()<1){
 					throw new StatusException("Q-012033", "试题单元对象为空");
 					throw new StatusException("Q-012033", "试题单元对象为空");
 				}
 				}
 				if(questionUnitList.size()==1){
 				if(questionUnitList.size()==1){
-					QuestionUnit defaultQuestionUnit = questionUnitList.get(0);
+					DefaultQuestionUnit defaultQuestionUnit = questionUnitList.get(0);
 					//判断试题题型
 					//判断试题题型
 					if(defaultQuestionUnit.getQuestionType() == null){
 					if(defaultQuestionUnit.getQuestionType() == null){
 						throw new StatusException("Q-012039", "试题单元中题型为空");
 						throw new StatusException("Q-012039", "试题单元中题型为空");
@@ -471,7 +469,7 @@ public class QuestionProviderServiceImpl implements QuestionProviderService{
 					question.setQuestionType(type);
 					question.setQuestionType(type);
 					//如果是选择题,判断选项
 					//如果是选择题,判断选项
 					if(defaultQuestionUnit.getQuestionType() == QuestionType.SINGLE_CHOICE || defaultQuestionUnit.getQuestionType() == QuestionType.MULTIPLE_CHOICE){
 					if(defaultQuestionUnit.getQuestionType() == QuestionType.SINGLE_CHOICE || defaultQuestionUnit.getQuestionType() == QuestionType.MULTIPLE_CHOICE){
-						List<QuestionOption> questionOptionList = defaultQuestionUnit.getQuestionOptionList();
+						List<DefaultQuestionOption> questionOptionList = defaultQuestionUnit.getDefaultQuestionOptionList();
 						if(questionOptionList == null || questionOptionList.size()<1){
 						if(questionOptionList == null || questionOptionList.size()<1){
 							throw new StatusException("Q-012049", "试题单元中选项为空");
 							throw new StatusException("Q-012049", "试题单元中选项为空");
 						}
 						}
@@ -488,7 +486,7 @@ public class QuestionProviderServiceImpl implements QuestionProviderService{
 					question.setQuestionType(QuesStructType.NESTED_ANSWER_QUESTION);
 					question.setQuestionType(QuesStructType.NESTED_ANSWER_QUESTION);
 					//生成子题
 					//生成子题
 					List<Question> subList = new ArrayList<Question>();
 					List<Question> subList = new ArrayList<Question>();
-					for(QuestionUnit defaultQuestionUnit:questionUnitList){
+					for(DefaultQuestionUnit defaultQuestionUnit:questionUnitList){
 						Question subQues = new Question();
 						Question subQues = new Question();
 						subQues.setId(UUID.randomUUID().toString());
 						subQues.setId(UUID.randomUUID().toString());
 						subQues.setDifficulty("中");
 						subQues.setDifficulty("中");
@@ -508,7 +506,7 @@ public class QuestionProviderServiceImpl implements QuestionProviderService{
 						subQues.setQuestionType(type);
 						subQues.setQuestionType(type);
 						//如果是选择题,判断选项
 						//如果是选择题,判断选项
 						if(defaultQuestionUnit.getQuestionType() == QuestionType.SINGLE_CHOICE || defaultQuestionUnit.getQuestionType() == QuestionType.MULTIPLE_CHOICE){
 						if(defaultQuestionUnit.getQuestionType() == QuestionType.SINGLE_CHOICE || defaultQuestionUnit.getQuestionType() == QuestionType.MULTIPLE_CHOICE){
-							List<QuestionOption> questionOptionList = defaultQuestionUnit.getQuestionOptionList();
+							List<DefaultQuestionOption> questionOptionList = defaultQuestionUnit.getDefaultQuestionOptionList();
 							if(questionOptionList == null || questionOptionList.size()<1){
 							if(questionOptionList == null || questionOptionList.size()<1){
 								throw new StatusException("Q-012049", "试题单元中选项为空");
 								throw new StatusException("Q-012049", "试题单元中选项为空");
 							}
 							}

+ 0 - 12
examcloud-core-questions-starter/src/test/java/cn/com/qmth/examcloud/core/questions/starter/DdCollegeUtilTest.java

@@ -15,14 +15,11 @@ import org.springframework.data.mongodb.core.query.Criteria;
 import org.springframework.data.mongodb.core.query.Query;
 import org.springframework.data.mongodb.core.query.Query;
 import org.springframework.test.context.junit4.SpringRunner;
 import org.springframework.test.context.junit4.SpringRunner;
 
 
-import cn.com.qmth.examcloud.commons.base.util.JsonUtil;
 import cn.com.qmth.examcloud.core.questions.dao.PaperDetailUnitRepo;
 import cn.com.qmth.examcloud.core.questions.dao.PaperDetailUnitRepo;
 import cn.com.qmth.examcloud.core.questions.dao.QuesRepo;
 import cn.com.qmth.examcloud.core.questions.dao.QuesRepo;
 import cn.com.qmth.examcloud.core.questions.dao.entity.Question;
 import cn.com.qmth.examcloud.core.questions.dao.entity.Question;
 import cn.com.qmth.examcloud.core.questions.service.temp.DdExcelService;
 import cn.com.qmth.examcloud.core.questions.service.temp.DdExcelService;
 import cn.com.qmth.examcloud.core.questions.service.temp.UpdatePaperStruct;
 import cn.com.qmth.examcloud.core.questions.service.temp.UpdatePaperStruct;
-import cn.com.qmth.examcloud.question.core.paper.DefaultPaper;
-import cn.com.qmth.examcloud.question.core.paper.DefaultQuestionGroup;
 
 
 /**
 /**
  * @author 		weiwenhai
  * @author 		weiwenhai
@@ -331,15 +328,6 @@ public class DdCollegeUtilTest {
 		 
 		 
 	 }
 	 }
 	 
 	 
-	 public static void main(String[] args){
-		 DefaultPaper paper = new DefaultPaper();
-		 List<DefaultQuestionGroup> questionGroupList = new ArrayList<DefaultQuestionGroup>();
-		 DefaultQuestionGroup group = new DefaultQuestionGroup();
-		 group.setGroupName("zhangsan");
-		 questionGroupList.add(group);
-		 paper.setDefaultQuestionGroupList(questionGroupList);
-		 System.out.println(JsonUtil.toPrettyJson(paper));
-	 }
 }
 }