|
@@ -9,11 +9,7 @@ import cn.com.qmth.stmms.ms.core.domain.*;
|
|
|
import cn.com.qmth.stmms.ms.core.domain.enums.TrialEnum;
|
|
|
import cn.com.qmth.stmms.ms.core.domain.task.MarkTask;
|
|
|
import cn.com.qmth.stmms.ms.core.repository.*;
|
|
|
-import cn.com.qmth.stmms.ms.core.vo.Subject;
|
|
|
-import cn.com.qmth.stmms.ms.marking.api.MakrerApi;
|
|
|
import cn.com.qmth.stmms.ms.marking.dto.PaperDTO;
|
|
|
-import com.sun.glass.ui.Window;
|
|
|
-import org.apache.commons.codec.digest.DigestUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
@@ -53,33 +49,29 @@ public class PaperAssembler {
|
|
|
private MarkLogRepo markLogRepo;
|
|
|
|
|
|
public PaperDTO toDTO(Paper paper) {
|
|
|
- String imgSrc = null;
|
|
|
- String thumbSrc = null;
|
|
|
- String fileName = paper.getExamNumber();
|
|
|
- Student student = studentRepo.findByWorkIdAndExamNumberAndTest(paper.getWorkId(), paper.getExamNumber(), String.valueOf(TrialEnum.DEFAULT.getId()));
|
|
|
- //0:随机码 1:考号
|
|
|
- if(ParamCache.paramMap.get(paper.getWorkId()).getNameRule() == 1){
|
|
|
-// fileName = DigestUtils.md5Hex(paper.getSubject().name() + fileName);
|
|
|
- fileName = MD5Util.getImageRuleMd5(paper.getWorkId(),paper.getSubject().ordinal(), student.getAreaCode(), student.getExamNumber(), student.getId());
|
|
|
- }
|
|
|
- if (ParamCache.paramMap.get(paper.getWorkId()).getImageEncrypt() == 1) {
|
|
|
- imgSrc = systemConfig.getImageUrl(paper.getWorkId(), paper.getSubject().ordinal(), student.getId(), SystemConstant.IMAGE);
|
|
|
- thumbSrc = systemConfig.getThumbUrl(paper.getWorkId(), paper.getSubject().ordinal(), student.getId(), SystemConstant.THUMB);
|
|
|
- /*if(paper.isManual()) {
|
|
|
- imgSrc = systemConfig.getSheetUrl(paper.getWorkId(), paper.getSubject().ordinal(), student.getId(), SystemConstant.IMAGE);
|
|
|
- }*/
|
|
|
- } else {
|
|
|
- imgSrc = systemConfig.getImageUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), fileName);
|
|
|
- thumbSrc = systemConfig.getThumbUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), fileName);
|
|
|
- /*if(paper.isManual()) {
|
|
|
- imgSrc = systemConfig.getSheetUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), fileName);
|
|
|
- thumbSrc = systemConfig.getSheetUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), fileName);
|
|
|
- }*/
|
|
|
- }
|
|
|
- //查询阶段
|
|
|
- MarkSubject markSubject = markSubjectRepo.findOne(paper.getWorkId() + "-" + paper.getSubject());
|
|
|
- PaperDTO paperDTO = null;
|
|
|
if (paper != null) {
|
|
|
+ String imgSrc = null;
|
|
|
+ String thumbSrc = null;
|
|
|
+ String sheetSrc = null;
|
|
|
+ String fileName = paper.getExamNumber();
|
|
|
+ Student student = studentRepo.findByWorkIdAndExamNumberAndTest(paper.getWorkId(), paper.getExamNumber(), String.valueOf(TrialEnum.DEFAULT.getId()));
|
|
|
+ //0:随机码 1:考号
|
|
|
+ if (ParamCache.paramMap.get(paper.getWorkId()).getNameRule() == 1) {
|
|
|
+ fileName = MD5Util.getImageRuleMd5(paper.getWorkId(), paper.getSubject().ordinal(), student.getAreaCode(), student.getExamNumber(), student.getId());
|
|
|
+ }
|
|
|
+ if (ParamCache.paramMap.get(paper.getWorkId()).getImageEncrypt() == 1) {
|
|
|
+ imgSrc = systemConfig.getImageUrl(paper.getWorkId(), paper.getSubject().ordinal(), student.getId(), SystemConstant.IMAGE);
|
|
|
+ thumbSrc = systemConfig.getThumbUrl(paper.getWorkId(), paper.getSubject().ordinal(), student.getId(), SystemConstant.THUMB);
|
|
|
+ sheetSrc = systemConfig.getSheetUrl(paper.getWorkId(), paper.getSubject().ordinal(), student.getId(), SystemConstant.SHEET);
|
|
|
+ } else {
|
|
|
+ imgSrc = systemConfig.getImageUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), fileName);
|
|
|
+ thumbSrc = systemConfig.getThumbUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), fileName);
|
|
|
+ sheetSrc = systemConfig.getSheetUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), fileName);
|
|
|
+ }
|
|
|
+ //查询阶段
|
|
|
+ MarkSubject markSubject = markSubjectRepo.findOne(paper.getWorkId() + "-" + paper.getSubject());
|
|
|
+ PaperDTO paperDTO = null;
|
|
|
+
|
|
|
paperDTO = new PaperDTO();
|
|
|
paperDTO.setId(paper.getId());
|
|
|
paperDTO.setPaperId(paper.getId());
|
|
@@ -88,7 +80,7 @@ public class PaperAssembler {
|
|
|
paperDTO.setSn(paper.getSecretNumber());
|
|
|
paperDTO.setLevel(paper.getLevel());
|
|
|
paperDTO.setManual(paper.isManual());
|
|
|
- paperDTO.setScore(Objects.isNull(paper.getScore())? null: paper.getScore().intValue());
|
|
|
+ paperDTO.setScore(Objects.isNull(paper.getScore()) ? null : paper.getScore().intValue());
|
|
|
paperDTO.setArbitrated(paper.isArbitrated());
|
|
|
paperDTO.setRejected(paper.isRejected());
|
|
|
paperDTO.setSample(paper.isSample());
|
|
@@ -97,10 +89,12 @@ public class PaperAssembler {
|
|
|
paperDTO.setMarkedLogic(paper.isMarkedLogic());
|
|
|
paperDTO.setRedoLevel(paper.getRedoLevel());
|
|
|
paperDTO.setUpdatedOn(paper.getUpdatedOn());
|
|
|
+ paperDTO.setSecretNumber(paper.getSecretNumber());
|
|
|
// String imgSrc = systemConfig.getImageUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), paper.getExamNumber());
|
|
|
// String thumbSrc = systemConfig.getThumbUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), paper.getExamNumber());
|
|
|
paperDTO.setImgSrc(imgSrc);
|
|
|
paperDTO.setThumbSrc(thumbSrc);
|
|
|
+ paperDTO.setSheetSrc(sheetSrc);
|
|
|
paperDTO.setAreaCode(paper.getAreaCode());
|
|
|
paperDTO.setMissing(paper.getIsMissing());
|
|
|
if (paper.getInspectScore() != null) {
|
|
@@ -115,17 +109,18 @@ public class PaperAssembler {
|
|
|
paperDTO.setShift(paper.isShift());
|
|
|
paperDTO.setShiftScore(paper.isShiftScore());
|
|
|
paperDTO.setOneClick(paper.isOneClick());
|
|
|
- paperDTO.setIsRejectedByLeader(paper.isRejectedByLeader() == null ? false : paper.isRejectedByLeader());
|
|
|
+ paperDTO.setIsRejectedByLeader(paper.isRejectedByLeader() != null && paper.isRejectedByLeader());
|
|
|
+ paperDTO.setScanUserId(paper.getScanUserId());
|
|
|
//打回总次数
|
|
|
int rejectedCount = markLogRepo.countByWorkIdAndPaperIdAndOperType(paper.getWorkId(), paper.getId(), MarkLogOperType.CALLBACK_LEVEl.getId());
|
|
|
paperDTO.setRejectedCount(rejectedCount);
|
|
|
//计算levelValue和(试评阶段不用)
|
|
|
- if(markSubject.getTest() == 0 && Objects.nonNull(paper.getLevel())) {
|
|
|
- if(paper.isSample()){
|
|
|
+ if (markSubject.getTest() == 0 && Objects.nonNull(paper.getLevel())) {
|
|
|
+ if (paper.isSample()) {
|
|
|
paperDTO.setSortSum(0);
|
|
|
} else {
|
|
|
List<Level> levels = levelRepo.findByWorkId(paper.getWorkId());
|
|
|
- if (!levels.isEmpty() && levels.size() > 0) {
|
|
|
+ if (!levels.isEmpty()) {
|
|
|
Map<String, Integer> map = levels.stream().collect(Collectors.toMap(Level::getCode, Level::getWeight));
|
|
|
List<MarkTask> markTaskList = markTaskRepo.findByPaperIdAndStage(paper.getId(), MarkStage.LEVEL);
|
|
|
int sum = markTaskList.stream().mapToInt(m -> map.get(m.getResult()) == null ? 0 : map.get(m.getResult())).sum();
|
|
@@ -133,8 +128,9 @@ public class PaperAssembler {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ return paperDTO;
|
|
|
}
|
|
|
- return paperDTO;
|
|
|
+ return null;
|
|
|
}
|
|
|
|
|
|
public PaperDTO toDTOForPaperManager(Paper paper, Boolean isManual) {
|
|
@@ -143,20 +139,20 @@ public class PaperAssembler {
|
|
|
String fileName = paper.getExamNumber();
|
|
|
Student student = studentRepo.findByWorkIdAndExamNumberAndTest(paper.getWorkId(), paper.getExamNumber(), String.valueOf(TrialEnum.DEFAULT.getId()));
|
|
|
//0:随机码 1:考号
|
|
|
- if(ParamCache.paramMap.get(paper.getWorkId()).getNameRule() == 1){
|
|
|
- fileName = MD5Util.getImageRuleMd5(paper.getWorkId(),paper.getSubject().ordinal(), student.getAreaCode(), student.getExamNumber(), student.getId());
|
|
|
+ if (ParamCache.paramMap.get(paper.getWorkId()).getNameRule() == 1) {
|
|
|
+ fileName = MD5Util.getImageRuleMd5(paper.getWorkId(), paper.getSubject().ordinal(), student.getAreaCode(), student.getExamNumber(), student.getId());
|
|
|
}
|
|
|
if (ParamCache.paramMap.get(paper.getWorkId()).getImageEncrypt() == 1) {
|
|
|
imgSrc = systemConfig.getImageUrl(paper.getWorkId(), paper.getSubject().ordinal(), student.getId(), SystemConstant.IMAGE);
|
|
|
thumbSrc = systemConfig.getThumbUrl(paper.getWorkId(), paper.getSubject().ordinal(), student.getId(), SystemConstant.THUMB);
|
|
|
- if(paper.isManual() && Objects.nonNull(isManual) && isManual) {
|
|
|
+ if (paper.isManual() && Objects.nonNull(isManual) && isManual) {
|
|
|
imgSrc = systemConfig.getSheetUrl(paper.getWorkId(), paper.getSubject().ordinal(), student.getId(), SystemConstant.SHEET);
|
|
|
thumbSrc = systemConfig.getSheetUrl(paper.getWorkId(), paper.getSubject().ordinal(), student.getId(), SystemConstant.SHEET);
|
|
|
}
|
|
|
} else {
|
|
|
imgSrc = systemConfig.getImageUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), fileName);
|
|
|
thumbSrc = systemConfig.getThumbUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), fileName);
|
|
|
- if(paper.isManual() && Objects.nonNull(isManual) && isManual) {
|
|
|
+ if (paper.isManual() && Objects.nonNull(isManual) && isManual) {
|
|
|
imgSrc = systemConfig.getSheetUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), fileName);
|
|
|
thumbSrc = systemConfig.getSheetUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), fileName);
|
|
|
}
|
|
@@ -172,7 +168,7 @@ public class PaperAssembler {
|
|
|
paperDTO.setSn(paper.getSecretNumber());
|
|
|
paperDTO.setLevel(paper.getLevel());
|
|
|
paperDTO.setManual(paper.isManual());
|
|
|
- paperDTO.setScore(Objects.isNull(paper.getScore())? null: paper.getScore().intValue());
|
|
|
+ paperDTO.setScore(Objects.isNull(paper.getScore()) ? null : paper.getScore().intValue());
|
|
|
paperDTO.setArbitrated(paper.isArbitrated());
|
|
|
paperDTO.setRejected(paper.isRejected());
|
|
|
paperDTO.setSample(paper.isSample());
|
|
@@ -197,38 +193,45 @@ public class PaperAssembler {
|
|
|
paperDTO.setShift(paper.isShift());
|
|
|
paperDTO.setShiftScore(paper.isShiftScore());
|
|
|
paperDTO.setStudentName(student.getName());
|
|
|
+ paperDTO.setMark(paper.isMark());
|
|
|
}
|
|
|
return paperDTO;
|
|
|
}
|
|
|
|
|
|
public PaperDTO toDTOForEquipmentMonitor(Paper paper, Boolean isManual) {
|
|
|
- String imgSrc = null;
|
|
|
- String thumbSrc = null;
|
|
|
- String fileName = paper.getExamNumber();
|
|
|
- Student student = studentRepo.findByWorkIdAndExamNumberAndTest(paper.getWorkId(), paper.getExamNumber(), String.valueOf(TrialEnum.DEFAULT.getId()));
|
|
|
- //0:随机码 1:考号
|
|
|
- if(ParamCache.paramMap.get(paper.getWorkId()).getNameRule() == 1){
|
|
|
- fileName = MD5Util.getImageRuleMd5(paper.getWorkId(),paper.getSubject().ordinal(), student.getAreaCode(), student.getExamNumber(), student.getId());
|
|
|
- }
|
|
|
- if (ParamCache.paramMap.get(paper.getWorkId()).getImageEncrypt() == 1) {
|
|
|
- imgSrc = systemConfig.getImageUrl(paper.getWorkId(), paper.getSubject().ordinal(), student.getId(), SystemConstant.IMAGE);
|
|
|
- thumbSrc = systemConfig.getThumbUrl(paper.getWorkId(), paper.getSubject().ordinal(), student.getId(), SystemConstant.THUMB);
|
|
|
- if(Objects.nonNull(isManual) && isManual) {
|
|
|
- imgSrc = systemConfig.getSheetUrl(paper.getWorkId(), paper.getSubject().ordinal(), student.getId(), SystemConstant.SHEET);
|
|
|
- thumbSrc = systemConfig.getSheetUrl(paper.getWorkId(), paper.getSubject().ordinal(), student.getId(), SystemConstant.SHEET);
|
|
|
+ if (paper != null) {
|
|
|
+ String imgSrc = null;
|
|
|
+ String thumbSrc = null;
|
|
|
+ String sheetSrc = null;
|
|
|
+ String fileName = paper.getExamNumber();
|
|
|
+ Student student = studentRepo.findByWorkIdAndExamNumberAndTest(paper.getWorkId(), paper.getExamNumber(), String.valueOf(TrialEnum.DEFAULT.getId()));
|
|
|
+ //0:随机码 1:考号
|
|
|
+ if (ParamCache.paramMap.get(paper.getWorkId()).getNameRule() == 1) {
|
|
|
+ fileName = MD5Util.getImageRuleMd5(paper.getWorkId(), paper.getSubject().ordinal(), student.getAreaCode(), student.getExamNumber(), student.getId());
|
|
|
}
|
|
|
- } else {
|
|
|
- imgSrc = systemConfig.getImageUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), fileName);
|
|
|
- thumbSrc = systemConfig.getThumbUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), fileName);
|
|
|
- if(Objects.nonNull(isManual) && isManual) {
|
|
|
- imgSrc = systemConfig.getSheetUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), fileName);
|
|
|
- thumbSrc = systemConfig.getSheetUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), fileName);
|
|
|
+ if (ParamCache.paramMap.get(paper.getWorkId()).getImageEncrypt() == 1) {
|
|
|
+ imgSrc = systemConfig.getImageUrl(paper.getWorkId(), paper.getSubject().ordinal(), student.getId(), SystemConstant.IMAGE);
|
|
|
+ thumbSrc = systemConfig.getThumbUrl(paper.getWorkId(), paper.getSubject().ordinal(), student.getId(), SystemConstant.THUMB);
|
|
|
+ sheetSrc = systemConfig.getSheetUrl(paper.getWorkId(), paper.getSubject().ordinal(), student.getId(), SystemConstant.SHEET);
|
|
|
+ if (Objects.nonNull(isManual) && isManual) {
|
|
|
+ imgSrc = systemConfig.getSheetUrl(paper.getWorkId(), paper.getSubject().ordinal(), student.getId(), SystemConstant.SHEET);
|
|
|
+ thumbSrc = systemConfig.getSheetUrl(paper.getWorkId(), paper.getSubject().ordinal(), student.getId(), SystemConstant.SHEET);
|
|
|
+ sheetSrc = systemConfig.getSheetUrl(paper.getWorkId(), paper.getSubject().ordinal(), student.getId(), SystemConstant.SHEET);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ imgSrc = systemConfig.getImageUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), fileName);
|
|
|
+ thumbSrc = systemConfig.getThumbUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), fileName);
|
|
|
+ sheetSrc = systemConfig.getSheetUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), fileName);
|
|
|
+ if (Objects.nonNull(isManual) && isManual) {
|
|
|
+ imgSrc = systemConfig.getSheetUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), fileName);
|
|
|
+ thumbSrc = systemConfig.getSheetUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), fileName);
|
|
|
+ sheetSrc = systemConfig.getSheetUrl(paper.getWorkId(), paper.getSubject().toString(), paper.getAreaCode(), fileName);
|
|
|
+ }
|
|
|
}
|
|
|
- }
|
|
|
- //查询阶段
|
|
|
- MarkSubject markSubject = markSubjectRepo.findOne(paper.getWorkId() + "-" + paper.getSubject());
|
|
|
- PaperDTO paperDTO = null;
|
|
|
- if (paper != null) {
|
|
|
+ //查询阶段
|
|
|
+ MarkSubject markSubject = markSubjectRepo.findOne(paper.getWorkId() + "-" + paper.getSubject());
|
|
|
+ PaperDTO paperDTO = null;
|
|
|
+
|
|
|
paperDTO = new PaperDTO();
|
|
|
paperDTO.setId(paper.getId());
|
|
|
paperDTO.setSubjectName(paper.getSubject().getName());
|
|
@@ -236,7 +239,7 @@ public class PaperAssembler {
|
|
|
paperDTO.setSn(paper.getSecretNumber());
|
|
|
paperDTO.setLevel(paper.getLevel());
|
|
|
paperDTO.setManual(paper.isManual());
|
|
|
- paperDTO.setScore(Objects.isNull(paper.getScore())? null: paper.getScore().intValue());
|
|
|
+ paperDTO.setScore(Objects.isNull(paper.getScore()) ? null : paper.getScore().intValue());
|
|
|
paperDTO.setArbitrated(paper.isArbitrated());
|
|
|
paperDTO.setRejected(paper.isRejected());
|
|
|
paperDTO.setSample(paper.isSample());
|
|
@@ -247,6 +250,7 @@ public class PaperAssembler {
|
|
|
paperDTO.setUpdatedOn(paper.getUpdatedOn());
|
|
|
paperDTO.setImgSrc(imgSrc);
|
|
|
paperDTO.setThumbSrc(thumbSrc);
|
|
|
+ paperDTO.setSheetSrc(sheetSrc);
|
|
|
paperDTO.setAreaCode(paper.getAreaCode());
|
|
|
paperDTO.setMissing(paper.getIsMissing());
|
|
|
if (paper.getInspectScore() != null) {
|
|
@@ -261,8 +265,9 @@ public class PaperAssembler {
|
|
|
paperDTO.setShift(paper.isShift());
|
|
|
paperDTO.setShiftScore(paper.isShiftScore());
|
|
|
paperDTO.setStudentName(student.getName());
|
|
|
+ return paperDTO;
|
|
|
}
|
|
|
- return paperDTO;
|
|
|
+ return null;
|
|
|
}
|
|
|
|
|
|
public PaperDTO toDTOForSheet(Paper paper) {
|
|
@@ -272,7 +277,7 @@ public class PaperAssembler {
|
|
|
String fileName = paper.getExamNumber();
|
|
|
Student student = studentRepo.findByWorkIdAndExamNumberAndTest(paper.getWorkId(), paper.getExamNumber(), String.valueOf(TrialEnum.DEFAULT.getId()));
|
|
|
//0:随机码 1:考号
|
|
|
- if(ParamCache.paramMap.get(paper.getWorkId()).getNameRule() == 1){
|
|
|
+ if (ParamCache.paramMap.get(paper.getWorkId()).getNameRule() == 1) {
|
|
|
// fileName = DigestUtils.md5Hex(paper.getSubject().name() + fileName);
|
|
|
fileName = MD5Util.getImageRuleMd5(paper.getWorkId(), paper.getSubject().ordinal(), student.getAreaCode(), student.getExamNumber(), student.getId());
|
|
|
}
|
|
@@ -295,7 +300,7 @@ public class PaperAssembler {
|
|
|
paperDTO.setSn(paper.getSecretNumber());
|
|
|
paperDTO.setLevel(paper.getLevel());
|
|
|
paperDTO.setManual(paper.isManual());
|
|
|
- paperDTO.setScore(Objects.isNull(paper.getScore())? null: paper.getScore().intValue());
|
|
|
+ paperDTO.setScore(Objects.isNull(paper.getScore()) ? null : paper.getScore().intValue());
|
|
|
paperDTO.setArbitrated(paper.isArbitrated());
|
|
|
paperDTO.setRejected(paper.isRejected());
|
|
|
paperDTO.setSample(paper.isSample());
|