|
@@ -1,20 +1,21 @@
|
|
package com.qmth.teachcloud.mark.service.impl;
|
|
package com.qmth.teachcloud.mark.service.impl;
|
|
|
|
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
|
+import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
|
|
|
|
+import com.qmth.teachcloud.common.enums.UploadFileEnum;
|
|
|
|
+import com.qmth.teachcloud.common.service.TeachcloudCommonService;
|
|
|
|
+import com.qmth.teachcloud.common.util.FileStoreUtil;
|
|
import com.qmth.teachcloud.mark.dto.mark.setting.MarkQuestionDto;
|
|
import com.qmth.teachcloud.mark.dto.mark.setting.MarkQuestionDto;
|
|
-import com.qmth.teachcloud.mark.params.MarkObjectiveQuestionParams;
|
|
|
|
-import com.qmth.teachcloud.mark.params.MarkQuestionParams;
|
|
|
|
import com.qmth.teachcloud.mark.entity.MarkPaper;
|
|
import com.qmth.teachcloud.mark.entity.MarkPaper;
|
|
import com.qmth.teachcloud.mark.entity.MarkQuestion;
|
|
import com.qmth.teachcloud.mark.entity.MarkQuestion;
|
|
-import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
|
|
|
|
-import com.qmth.teachcloud.common.enums.UploadFileEnum;
|
|
|
|
import com.qmth.teachcloud.mark.mapper.MarkQuestionMapper;
|
|
import com.qmth.teachcloud.mark.mapper.MarkQuestionMapper;
|
|
|
|
+import com.qmth.teachcloud.mark.params.MarkObjectiveQuestionParams;
|
|
|
|
+import com.qmth.teachcloud.mark.params.MarkQuestionParams;
|
|
import com.qmth.teachcloud.mark.service.MarkPaperService;
|
|
import com.qmth.teachcloud.mark.service.MarkPaperService;
|
|
import com.qmth.teachcloud.mark.service.MarkQuestionService;
|
|
import com.qmth.teachcloud.mark.service.MarkQuestionService;
|
|
-import com.qmth.teachcloud.common.service.TeachcloudCommonService;
|
|
|
|
-import com.qmth.teachcloud.common.util.FileStoreUtil;
|
|
|
|
import org.apache.commons.collections4.CollectionUtils;
|
|
import org.apache.commons.collections4.CollectionUtils;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
@@ -110,6 +111,7 @@ public class MarkQuestionServiceImpl extends ServiceImpl<MarkQuestionMapper, Mar
|
|
throw ExceptionResultEnum.ERROR.exception("间隔分必须大于0");
|
|
throw ExceptionResultEnum.ERROR.exception("间隔分必须大于0");
|
|
}
|
|
}
|
|
markQuestion.setTotalScore(question.getTotalScore());
|
|
markQuestion.setTotalScore(question.getTotalScore());
|
|
|
|
+ markQuestion.setIntervalScore(question.getIntervalScore());
|
|
saveOrUpdateList.add(markQuestion);
|
|
saveOrUpdateList.add(markQuestion);
|
|
markQuestionList.remove(markQuestion);
|
|
markQuestionList.remove(markQuestion);
|
|
} else {
|
|
} else {
|
|
@@ -129,24 +131,24 @@ public class MarkQuestionServiceImpl extends ServiceImpl<MarkQuestionMapper, Mar
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public List<MarkQuestion> listQuestionByExamIdAndPaperNumberAndGroupNumber(Long examId, String paperNumber, Integer number, Boolean isObjective) {
|
|
public List<MarkQuestion> listQuestionByExamIdAndPaperNumberAndGroupNumber(Long examId, String paperNumber, Integer number, Boolean isObjective) {
|
|
- QueryWrapper<MarkQuestion> queryWrapper = new QueryWrapper<>();
|
|
|
|
- queryWrapper.lambda().eq(MarkQuestion::getExamId, examId)
|
|
|
|
|
|
+ LambdaQueryWrapper<MarkQuestion> lambdaQueryWrapper = new QueryWrapper<MarkQuestion>().lambda();
|
|
|
|
+ lambdaQueryWrapper.eq(MarkQuestion::getExamId, examId)
|
|
.eq(MarkQuestion::getPaperNumber, paperNumber);
|
|
.eq(MarkQuestion::getPaperNumber, paperNumber);
|
|
if (number != null) {
|
|
if (number != null) {
|
|
- queryWrapper.lambda().eq(MarkQuestion::getGroupNumber, number);
|
|
|
|
|
|
+ lambdaQueryWrapper.eq(MarkQuestion::getGroupNumber, number);
|
|
}
|
|
}
|
|
if (isObjective != null) {
|
|
if (isObjective != null) {
|
|
- queryWrapper.lambda().eq(MarkQuestion::getObjective, isObjective);
|
|
|
|
|
|
+ lambdaQueryWrapper.eq(MarkQuestion::getObjective, isObjective);
|
|
}
|
|
}
|
|
- queryWrapper.lambda().orderByAsc(MarkQuestion::getMainNumber)
|
|
|
|
|
|
+ lambdaQueryWrapper.orderByAsc(MarkQuestion::getMainNumber)
|
|
.orderByAsc(MarkQuestion::getSubNumber);
|
|
.orderByAsc(MarkQuestion::getSubNumber);
|
|
- return this.list(queryWrapper);
|
|
|
|
|
|
+ return this.list(lambdaQueryWrapper);
|
|
}
|
|
}
|
|
|
|
|
|
@Transactional
|
|
@Transactional
|
|
@Override
|
|
@Override
|
|
public void saveObjectiveQuestions(MarkObjectiveQuestionParams markObjectiveQuestionParams) {
|
|
public void saveObjectiveQuestions(MarkObjectiveQuestionParams markObjectiveQuestionParams) {
|
|
- for (MarkQuestion question : markObjectiveQuestionParams.getQuestions()) {
|
|
|
|
|
|
+ for (MarkQuestion question : markObjectiveQuestionParams.getObjectiveInfo()) {
|
|
if (StringUtils.isBlank(question.getAnswer())) {
|
|
if (StringUtils.isBlank(question.getAnswer())) {
|
|
throw ExceptionResultEnum.ERROR.exception("答案不能为空");
|
|
throw ExceptionResultEnum.ERROR.exception("答案不能为空");
|
|
}
|
|
}
|
|
@@ -230,4 +232,14 @@ public class MarkQuestionServiceImpl extends ServiceImpl<MarkQuestionMapper, Mar
|
|
markQuestionDto.setQuestions(markQuestionList);
|
|
markQuestionDto.setQuestions(markQuestionList);
|
|
return markQuestionDto;
|
|
return markQuestionDto;
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public void updateGroupNumberByExamIdAndPaperNumberAndGroupNumber(Integer newGroupNumber, Long examId, String paperNumber, Integer groupNumber) {
|
|
|
|
+ UpdateWrapper<MarkQuestion> updateWrapper = new UpdateWrapper<>();
|
|
|
|
+ updateWrapper.lambda().set(MarkQuestion::getGroupNumber, newGroupNumber)
|
|
|
|
+ .eq(MarkQuestion::getExamId, examId)
|
|
|
|
+ .eq(MarkQuestion::getPaperNumber, paperNumber)
|
|
|
|
+ .eq(MarkQuestion::getGroupNumber, groupNumber);
|
|
|
|
+ this.update(updateWrapper);
|
|
|
|
+ }
|
|
}
|
|
}
|