|
@@ -1,6 +1,5 @@
|
|
package com.qmth.distributed.print.business.service.impl;
|
|
package com.qmth.distributed.print.business.service.impl;
|
|
|
|
|
|
-import cn.hutool.core.lang.UUID;
|
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
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;
|
|
@@ -12,6 +11,7 @@ import com.google.gson.Gson;
|
|
import com.qmth.distributed.print.business.bean.dto.*;
|
|
import com.qmth.distributed.print.business.bean.dto.*;
|
|
import com.qmth.distributed.print.business.bean.result.WorkResult;
|
|
import com.qmth.distributed.print.business.bean.result.WorkResult;
|
|
import com.qmth.distributed.print.business.entity.*;
|
|
import com.qmth.distributed.print.business.entity.*;
|
|
|
|
+import com.qmth.distributed.print.business.enums.ExamCardStatusEnum;
|
|
import com.qmth.distributed.print.business.enums.ExamStatusEnum;
|
|
import com.qmth.distributed.print.business.enums.ExamStatusEnum;
|
|
import com.qmth.distributed.print.business.enums.ReviewStatusEnum;
|
|
import com.qmth.distributed.print.business.enums.ReviewStatusEnum;
|
|
import com.qmth.distributed.print.business.mapper.ExamTaskMapper;
|
|
import com.qmth.distributed.print.business.mapper.ExamTaskMapper;
|
|
@@ -21,7 +21,6 @@ import com.qmth.distributed.print.business.util.ServletUtil;
|
|
import com.qmth.distributed.print.business.util.excel.ExcelError;
|
|
import com.qmth.distributed.print.business.util.excel.ExcelError;
|
|
import com.qmth.distributed.print.common.contant.SystemConstant;
|
|
import com.qmth.distributed.print.common.contant.SystemConstant;
|
|
import com.qmth.distributed.print.common.enums.ExceptionResultEnum;
|
|
import com.qmth.distributed.print.common.enums.ExceptionResultEnum;
|
|
-import com.qmth.distributed.print.common.util.ResultUtil;
|
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
@@ -31,7 +30,6 @@ import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
import javax.annotation.Resource;
|
|
import javax.servlet.http.HttpServletResponse;
|
|
import javax.servlet.http.HttpServletResponse;
|
|
-import javax.websocket.RemoteEndpoint;
|
|
|
|
import java.io.File;
|
|
import java.io.File;
|
|
import java.io.IOException;
|
|
import java.io.IOException;
|
|
import java.util.*;
|
|
import java.util.*;
|
|
@@ -75,6 +73,9 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
@Autowired
|
|
@Autowired
|
|
private SysUserService sysUserService;
|
|
private SysUserService sysUserService;
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
+ private ExamCardService examCardService;
|
|
|
|
+
|
|
@Override
|
|
@Override
|
|
public List<ExamTask> listByCourseCode(Long schoolId, String code) {
|
|
public List<ExamTask> listByCourseCode(Long schoolId, String code) {
|
|
QueryWrapper<ExamTask> queryWrapper = new QueryWrapper<>();
|
|
QueryWrapper<ExamTask> queryWrapper = new QueryWrapper<>();
|
|
@@ -198,7 +199,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
List<LinkedMultiValueMap<Integer, Object>> finalList = ExcelUtil.excelReader(file.getInputStream(), Lists.newArrayList(ExamTaskTempDto.class), (finalExcelList, finalColumnNameList, finalExcelErrorList) -> {
|
|
List<LinkedMultiValueMap<Integer, Object>> finalList = ExcelUtil.excelReader(file.getInputStream(), Lists.newArrayList(ExamTaskTempDto.class), (finalExcelList, finalColumnNameList, finalExcelErrorList) -> {
|
|
List<ExcelError> excelErrorTemp = new ArrayList<>();
|
|
List<ExcelError> excelErrorTemp = new ArrayList<>();
|
|
// 只允许导入一个sheet
|
|
// 只允许导入一个sheet
|
|
- if(finalExcelList.size() > 1){
|
|
|
|
|
|
+ if (finalExcelList.size() > 1) {
|
|
throw ExceptionResultEnum.ERROR.exception("excel中只允许有一个sheet");
|
|
throw ExceptionResultEnum.ERROR.exception("excel中只允许有一个sheet");
|
|
}
|
|
}
|
|
for (int i = 0; i < finalExcelList.size(); i++) {
|
|
for (int i = 0; i < finalExcelList.size(); i++) {
|
|
@@ -268,14 +269,14 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
examTaskDto.setPaperNumber(examTaskTemp.getPaperNumber());
|
|
examTaskDto.setPaperNumber(examTaskTemp.getPaperNumber());
|
|
examTaskDto.setSpecialty(examTaskTemp.getSpecialty());
|
|
examTaskDto.setSpecialty(examTaskTemp.getSpecialty());
|
|
// 校验命题老师
|
|
// 校验命题老师
|
|
- if(StringUtils.isBlank(examTaskTemp.getUserAccount())){
|
|
|
|
|
|
+ if (StringUtils.isBlank(examTaskTemp.getUserAccount())) {
|
|
examTaskDto.setUsers(listUsers(examTaskTemp.getCourseCode(), null));
|
|
examTaskDto.setUsers(listUsers(examTaskTemp.getCourseCode(), null));
|
|
} else {
|
|
} else {
|
|
QueryWrapper<SysUser> queryWrapper = new QueryWrapper<>();
|
|
QueryWrapper<SysUser> queryWrapper = new QueryWrapper<>();
|
|
queryWrapper.lambda().eq(SysUser::getLoginName, examTaskTemp.getUserAccount());
|
|
queryWrapper.lambda().eq(SysUser::getLoginName, examTaskTemp.getUserAccount());
|
|
SysUser sysUser1 = sysUserService.getOne(queryWrapper);
|
|
SysUser sysUser1 = sysUserService.getOne(queryWrapper);
|
|
- if(sysUser1 == null){
|
|
|
|
- examTaskDto.setUsers( listUsers(examTaskTemp.getCourseCode(), null));
|
|
|
|
|
|
+ if (sysUser1 == null) {
|
|
|
|
+ examTaskDto.setUsers(listUsers(examTaskTemp.getCourseCode(), null));
|
|
} else {
|
|
} else {
|
|
examTaskDto.setUsers(listUsers(examTaskTemp.getCourseCode(), String.valueOf(sysUser1.getId())));
|
|
examTaskDto.setUsers(listUsers(examTaskTemp.getCourseCode(), String.valueOf(sysUser1.getId())));
|
|
}
|
|
}
|
|
@@ -287,7 +288,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
return examTaskImportDto;
|
|
return examTaskImportDto;
|
|
}
|
|
}
|
|
|
|
|
|
- private List<BlurryUserDto> listUsers(String courseCode, String userId){
|
|
|
|
|
|
+ private List<BlurryUserDto> listUsers(String courseCode, String userId) {
|
|
return sysUserService.listUser(courseCode, userId);
|
|
return sysUserService.listUser(courseCode, userId);
|
|
}
|
|
}
|
|
|
|
|
|
@@ -365,7 +366,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
|
|
|
|
@Transactional
|
|
@Transactional
|
|
@Override
|
|
@Override
|
|
- public boolean taskReviewSave(ExamTaskReviewLog taskReviewLog) {
|
|
|
|
|
|
+ public boolean taskReviewSave(ExamTaskReviewLog taskReviewLog) throws IOException {
|
|
SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
|
|
|
|
taskReviewLog.setOperateId(sysUser.getId());
|
|
taskReviewLog.setOperateId(sysUser.getId());
|
|
@@ -440,7 +441,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
|
|
|
|
@Transactional
|
|
@Transactional
|
|
@Override
|
|
@Override
|
|
- public boolean saveExamTaskDetail(ExamTaskDetail examTaskDetail) {
|
|
|
|
|
|
+ public boolean saveExamTaskDetail(ExamTaskDetail examTaskDetail) throws IOException {
|
|
if (examTaskDetail.getExamTaskId() == null) {
|
|
if (examTaskDetail.getExamTaskId() == null) {
|
|
throw ExceptionResultEnum.ERROR.exception("命题任务ID不能为空");
|
|
throw ExceptionResultEnum.ERROR.exception("命题任务ID不能为空");
|
|
}
|
|
}
|
|
@@ -461,6 +462,12 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
if (StringUtils.isBlank(examTaskDetail.getPaperConfirmAttachmentIds())) {
|
|
if (StringUtils.isBlank(examTaskDetail.getPaperConfirmAttachmentIds())) {
|
|
throw ExceptionResultEnum.ERROR.exception("入库审核ID不能为空");
|
|
throw ExceptionResultEnum.ERROR.exception("入库审核ID不能为空");
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ // 校验题卡是否提交
|
|
|
|
+ ExamCard examCard = examCardService.getById(examTaskDetail.getCardId());
|
|
|
|
+ if(!ExamCardStatusEnum.SUBMIT.name().equals(examCard.getStatus().name())){
|
|
|
|
+ throw ExceptionResultEnum.ERROR.exception("请先提交题卡");
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
// 更新examTask状态status
|
|
// 更新examTask状态status
|