|
@@ -41,8 +41,8 @@ import cn.com.qmth.examcloud.core.questions.base.BeanCopierUtil;
|
|
|
import cn.com.qmth.examcloud.core.questions.base.CombinationUtils;
|
|
|
import cn.com.qmth.examcloud.core.questions.base.CommonUtils;
|
|
|
import cn.com.qmth.examcloud.core.questions.base.enums.PaperType;
|
|
|
-
|
|
|
import cn.com.qmth.examcloud.common.dto.question.enums.QuesStructType;
|
|
|
+import cn.com.qmth.examcloud.commons.web.security.bean.User;
|
|
|
|
|
|
@Service
|
|
|
public class GenPaperService {
|
|
@@ -213,17 +213,17 @@ public class GenPaperService {
|
|
|
* @param type
|
|
|
* @return Map<String, Object>
|
|
|
*/
|
|
|
- public Map<String, Object> genPaperByScoreW(GenPaperDto genPaperDto) {
|
|
|
+ public Map<String, Object> genPaperByScoreW(GenPaperDto genPaperDto,User user) {
|
|
|
//定义返回给前端的集合
|
|
|
Map<String, Object> paperMsgMap = new HashMap<String, Object>();
|
|
|
//获取所有试卷与抽题数
|
|
|
Map<String, Double> paperMap = genPaperDto.getSimpleParams();
|
|
|
- paperMsgMap = extractByQuestioScore(paperMap,paperMsgMap,genPaperDto);
|
|
|
+ paperMsgMap = extractByQuestioScore(paperMap,paperMsgMap,genPaperDto,user);
|
|
|
return paperMsgMap;
|
|
|
}
|
|
|
|
|
|
//通过题目分数组卷
|
|
|
- private Map<String, Object> extractByQuestioScore(Map<String, Double> paperMap,Map<String, Object> paperMsgMap,GenPaperDto genPaperDto){
|
|
|
+ private Map<String, Object> extractByQuestioScore(Map<String, Double> paperMap,Map<String, Object> paperMsgMap,GenPaperDto genPaperDto,User user){
|
|
|
if(paperMap != null && paperMap.size()>0){
|
|
|
//定义随机选中的小题集合
|
|
|
List<PaperDetailUnit> selectedUnits = new ArrayList<PaperDetailUnit>();
|
|
@@ -267,6 +267,7 @@ public class GenPaperService {
|
|
|
List<PaperDetail> paperDetails = buildPaperDetail(map,genPaperDto);
|
|
|
//构建新的试卷
|
|
|
Paper paper = buildPaper(map,genPaperDto,paperDetails);
|
|
|
+ paperService.formatPaper(paper, user);
|
|
|
paperMsgMap.put("paper", paper);
|
|
|
paperMsgMap.put("msg", "success");
|
|
|
}
|
|
@@ -280,17 +281,17 @@ public class GenPaperService {
|
|
|
* @param type
|
|
|
* @return Map<String, Object>
|
|
|
*/
|
|
|
- public Map<String, Object> genPaperByQuestionNumW(GenPaperDto genPaperDto) {
|
|
|
+ public Map<String, Object> genPaperByQuestionNumW(GenPaperDto genPaperDto,User user) {
|
|
|
//定义返回给前端的集合
|
|
|
Map<String, Object> paperMsgMap = new HashMap<String, Object>();
|
|
|
//获取所有试卷与抽题数
|
|
|
Map<String, Double> paperMap = genPaperDto.getSimpleParams();
|
|
|
- paperMsgMap = extractByQuestionNum(paperMap,paperMsgMap,genPaperDto);
|
|
|
+ paperMsgMap = extractByQuestionNum(paperMap,paperMsgMap,genPaperDto,user);
|
|
|
return paperMsgMap;
|
|
|
}
|
|
|
|
|
|
//通过题目数量组卷
|
|
|
- private Map<String, Object> extractByQuestionNum(Map<String, Double> paperMap,Map<String, Object> paperMsgMap,GenPaperDto genPaperDto){
|
|
|
+ private Map<String, Object> extractByQuestionNum(Map<String, Double> paperMap,Map<String, Object> paperMsgMap,GenPaperDto genPaperDto,User user){
|
|
|
if(paperMap != null && paperMap.size()>0){
|
|
|
//定义随机选中的小题集合
|
|
|
List<PaperDetailUnit> selectedUnits = new ArrayList<PaperDetailUnit>();
|
|
@@ -340,6 +341,7 @@ public class GenPaperService {
|
|
|
List<PaperDetail> paperDetails = buildPaperDetail(map,genPaperDto);
|
|
|
//构建新的试卷
|
|
|
Paper paper = buildPaper(map,genPaperDto,paperDetails);
|
|
|
+ paperService.formatPaper(paper, user);
|
|
|
paperMsgMap.put("paper", paper);
|
|
|
paperMsgMap.put("msg", "success");
|
|
|
}
|