|
|
@@ -8,8 +8,10 @@ import com.google.common.collect.Sets;
|
|
|
import com.ruoyi.common.utils.bean.BeanUtils;
|
|
|
import com.ruoyi.enums.PaperStatus;
|
|
|
import com.ruoyi.enums.PaperType;
|
|
|
+import com.ruoyi.enums.QuestionType;
|
|
|
import com.ruoyi.learn.domain.*;
|
|
|
import com.ruoyi.learn.mapper.*;
|
|
|
+import io.swagger.annotations.ApiModelProperty;
|
|
|
import lombok.Data;
|
|
|
import org.apache.commons.collections4.CollectionUtils;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
@@ -62,7 +64,11 @@ public class PaperService {
|
|
|
List<PaperVO.QuestionSeq> paperQuestionList = Lists.newArrayList();
|
|
|
for(LearnQuestions lqs : questions) {
|
|
|
PaperVO.QuestionSeq qs = new PaperVO.QuestionSeq();
|
|
|
- BeanUtils.copyProperties(lqs, qs);
|
|
|
+ BeanUtils.copyProperties(lqs, qs, "options", "parse", "answer1", "answer2");
|
|
|
+ QuestionType qt = QuestionType.of(lqs.getQtpye());
|
|
|
+ qs.setTypeId(qt.getVal());
|
|
|
+ qs.setType(qt.getName());
|
|
|
+ qs.setOptions(getOptions(lqs.getOptionA(), lqs.getOptionB(), lqs.getOptionC(), lqs.getOptionD(), lqs.getOptionE(), lqs.getOptionF(), lqs.getOptionG()));
|
|
|
if(StringUtils.isNotBlank(lqs.getTitle0())) { // 大题
|
|
|
PaperVO.QuestionSeq qg = gropuMap.get(lqs.getTitle0());
|
|
|
if(qg == null) {
|
|
|
@@ -71,7 +77,6 @@ public class PaperService {
|
|
|
gropuMap.put(lqs.getTitle0(), qg);
|
|
|
paperQuestionList.add(qg);
|
|
|
}
|
|
|
- qs.setTitle0(null); // 清除
|
|
|
qg.getSubQuestions().add(qs);
|
|
|
} else {
|
|
|
paperQuestionList.add(qs);
|
|
|
@@ -81,6 +86,16 @@ public class PaperService {
|
|
|
return result;
|
|
|
}
|
|
|
|
|
|
+ public List<String> getOptions(String... options) {
|
|
|
+ List<String> optionList = Lists.newArrayList();
|
|
|
+ for (String option : options) {
|
|
|
+ if (com.ruoyi.common.utils.StringUtils.isNotBlank(option)) {
|
|
|
+ optionList.add(option);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return optionList;
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 根据院校专业要求生成模拟试卷
|
|
|
* @return
|