|
@@ -15,15 +15,13 @@ import cn.com.qmth.stmms.ms.commons.utils.FileUtil;
|
|
import cn.com.qmth.stmms.ms.commons.utils.MD5Util;
|
|
import cn.com.qmth.stmms.ms.commons.utils.MD5Util;
|
|
import cn.com.qmth.stmms.ms.commons.utils.image.ImageCompression;
|
|
import cn.com.qmth.stmms.ms.commons.utils.image.ImageCompression;
|
|
import cn.com.qmth.stmms.ms.core.domain.MarkSubject;
|
|
import cn.com.qmth.stmms.ms.core.domain.MarkSubject;
|
|
|
|
+import cn.com.qmth.stmms.ms.core.domain.ParamSetting;
|
|
import cn.com.qmth.stmms.ms.core.domain.Student;
|
|
import cn.com.qmth.stmms.ms.core.domain.Student;
|
|
import cn.com.qmth.stmms.ms.core.domain.Work;
|
|
import cn.com.qmth.stmms.ms.core.domain.Work;
|
|
import cn.com.qmth.stmms.ms.core.domain.enums.TrialEnum;
|
|
import cn.com.qmth.stmms.ms.core.domain.enums.TrialEnum;
|
|
import cn.com.qmth.stmms.ms.core.domain.user.MarkUser;
|
|
import cn.com.qmth.stmms.ms.core.domain.user.MarkUser;
|
|
import cn.com.qmth.stmms.ms.core.domain.user.Role;
|
|
import cn.com.qmth.stmms.ms.core.domain.user.Role;
|
|
-import cn.com.qmth.stmms.ms.core.repository.MarkSubjectRepo;
|
|
|
|
-import cn.com.qmth.stmms.ms.core.repository.MarkUserRepo;
|
|
|
|
-import cn.com.qmth.stmms.ms.core.repository.StudentRepo;
|
|
|
|
-import cn.com.qmth.stmms.ms.core.repository.WorkRepo;
|
|
|
|
|
|
+import cn.com.qmth.stmms.ms.core.repository.*;
|
|
import cn.com.qmth.stmms.ms.core.vo.Subject;
|
|
import cn.com.qmth.stmms.ms.core.vo.Subject;
|
|
import net.sf.json.JSONObject;
|
|
import net.sf.json.JSONObject;
|
|
import org.apache.commons.codec.binary.Hex;
|
|
import org.apache.commons.codec.binary.Hex;
|
|
@@ -69,6 +67,9 @@ public class CollectApi {
|
|
@Autowired
|
|
@Autowired
|
|
private MarkSubjectRepo markSubjectRepo;
|
|
private MarkSubjectRepo markSubjectRepo;
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
+ private ParamSettingRepo paramSettingRepo;
|
|
|
|
+
|
|
@Autowired
|
|
@Autowired
|
|
private DataUploadService dataUploadService;
|
|
private DataUploadService dataUploadService;
|
|
|
|
|
|
@@ -131,9 +132,40 @@ public class CollectApi {
|
|
collectSubjectDTOs.add(collectSubjectDTO);
|
|
collectSubjectDTOs.add(collectSubjectDTO);
|
|
});
|
|
});
|
|
loginDTO.setSubjects(collectSubjectDTOs);
|
|
loginDTO.setSubjects(collectSubjectDTOs);
|
|
|
|
+
|
|
|
|
+ //采集参数
|
|
|
|
+ ParamSetting paramSetting = paramSettingRepo.findByWorkId(activeWork.getId());
|
|
|
|
+ loginDTO.setParamSetting(paramSetting);
|
|
return loginDTO;
|
|
return loginDTO;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+
|
|
|
|
+ @RequestMapping(value = "exam/listStudents/{examNumber}", method = RequestMethod.GET)
|
|
|
|
+ public List<CollectStuDTO> listStudents(@PathVariable String examNumber) {
|
|
|
|
+ List<CollectStuDTO> list = new ArrayList<>();
|
|
|
|
+ Work activeWork = workRepo.findByActiveTrue();
|
|
|
|
+ Consumer<Student> consumer = (s) -> {
|
|
|
|
+ CollectStuDTO collectStuDTO = new CollectStuDTO();
|
|
|
|
+ collectStuDTO.setExamId(activeWork.getId());
|
|
|
|
+ collectStuDTO.setExamNumber(s.getExamNumber());
|
|
|
|
+ collectStuDTO.setName(s.getName());
|
|
|
|
+ collectStuDTO.setSiteCode(s.getAreaName());
|
|
|
|
+ collectStuDTO.setRoomCode(s.getExamRoom());
|
|
|
|
+ list.add(collectStuDTO);
|
|
|
|
+ };
|
|
|
|
+ Student student = studentRepo.findByWorkIdAndExamNumber(activeWork.getId(), examNumber);
|
|
|
|
+ studentRepo.findByWorkIdAndTestAndExamRoom(activeWork.getId(), String.valueOf(TrialEnum.DEFAULT.getId()), student.getExamRoom()).forEach(consumer);
|
|
|
|
+ return list;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @RequestMapping(value = "exam/getStudent/{examNumber}", method = RequestMethod.GET)
|
|
|
|
+ public Student getStudent(@PathVariable String examNumber) {
|
|
|
|
+ Work activeWork = workRepo.findByActiveTrue();
|
|
|
|
+ Student student = studentRepo.findByWorkIdAndExamNumber(activeWork.getId(), examNumber);
|
|
|
|
+ return student;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
// /**
|
|
// /**
|
|
// * 获取客户端账户名和密码
|
|
// * 获取客户端账户名和密码
|
|
// *
|
|
// *
|
|
@@ -198,13 +230,14 @@ public class CollectApi {
|
|
@RequestMapping(value = "file/image/uploadsheet/{workId}/{subjectId}/{fileName}", method = {RequestMethod.POST})
|
|
@RequestMapping(value = "file/image/uploadsheet/{workId}/{subjectId}/{fileName}", method = {RequestMethod.POST})
|
|
public void imageUploadSheet(@PathVariable Long workId, @PathVariable Integer subjectId,
|
|
public void imageUploadSheet(@PathVariable Long workId, @PathVariable Integer subjectId,
|
|
@PathVariable String fileName,
|
|
@PathVariable String fileName,
|
|
|
|
+ MultipartFile file,
|
|
HttpServletRequest request, HttpServletResponse response) throws IOException {
|
|
HttpServletRequest request, HttpServletResponse response) throws IOException {
|
|
long start = System.currentTimeMillis();
|
|
long start = System.currentTimeMillis();
|
|
LOGGER.info("准备生成原图:{}", start);
|
|
LOGGER.info("准备生成原图:{}", start);
|
|
InputStream inputStream = null;
|
|
InputStream inputStream = null;
|
|
OutputStream outputStream = null;
|
|
OutputStream outputStream = null;
|
|
try {
|
|
try {
|
|
- inputStream = request.getInputStream();
|
|
|
|
|
|
+ inputStream = file.getInputStream();
|
|
// inputStream = new FileInputStream(srcFile);
|
|
// inputStream = new FileInputStream(srcFile);
|
|
Student student = studentRepo.findByWorkIdAndExamNumberAndTest(workId, fileName, String.valueOf(TrialEnum.DEFAULT.getId()));
|
|
Student student = studentRepo.findByWorkIdAndExamNumberAndTest(workId, fileName, String.valueOf(TrialEnum.DEFAULT.getId()));
|
|
Subject subject = Subject.values()[subjectId - 1];
|
|
Subject subject = Subject.values()[subjectId - 1];
|
|
@@ -270,12 +303,13 @@ public class CollectApi {
|
|
@RequestMapping(value = "file/image/upload/{workId}/{subjectId}/{fileName}", method = {RequestMethod.POST})
|
|
@RequestMapping(value = "file/image/upload/{workId}/{subjectId}/{fileName}", method = {RequestMethod.POST})
|
|
public void imageUpload(@PathVariable Long workId, @PathVariable Integer subjectId,
|
|
public void imageUpload(@PathVariable Long workId, @PathVariable Integer subjectId,
|
|
@PathVariable String fileName,
|
|
@PathVariable String fileName,
|
|
|
|
+ MultipartFile file,
|
|
HttpServletRequest request, HttpServletResponse response) throws IOException {
|
|
HttpServletRequest request, HttpServletResponse response) throws IOException {
|
|
long start = System.currentTimeMillis();
|
|
long start = System.currentTimeMillis();
|
|
LOGGER.info("准备生成裁切原图和缩略图:{}", start);
|
|
LOGGER.info("准备生成裁切原图和缩略图:{}", start);
|
|
File imageFileTemp = null;
|
|
File imageFileTemp = null;
|
|
try {
|
|
try {
|
|
- InputStream inputStream = request.getInputStream();
|
|
|
|
|
|
+ InputStream inputStream = file.getInputStream();
|
|
// inputStream = new FileInputStream(srcFile);
|
|
// inputStream = new FileInputStream(srcFile);
|
|
Student student = studentRepo.findByWorkIdAndExamNumberAndTest(workId, fileName, String.valueOf(TrialEnum.DEFAULT.getId()));
|
|
Student student = studentRepo.findByWorkIdAndExamNumberAndTest(workId, fileName, String.valueOf(TrialEnum.DEFAULT.getId()));
|
|
Subject subject = Subject.values()[subjectId - 1];
|
|
Subject subject = Subject.values()[subjectId - 1];
|