|
@@ -14,7 +14,10 @@ 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.Student;
|
|
|
import cn.com.qmth.stmms.ms.core.domain.Work;
|
|
|
+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.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.vo.Subject;
|
|
@@ -54,6 +57,9 @@ public class CollectApi {
|
|
|
@Autowired
|
|
|
private StudentRepo studentRepo;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private MarkUserRepo markUserRepo;
|
|
|
+
|
|
|
@Autowired
|
|
|
private MarkSubjectRepo markSubjectRepo;
|
|
|
|
|
@@ -71,27 +77,40 @@ public class CollectApi {
|
|
|
|
|
|
@RequestMapping("user/login")
|
|
|
public LoginDTO login(@RequestParam String loginname, @RequestParam String password) {
|
|
|
+ MarkUser markUser = markUserRepo.findByLoginName(loginname);
|
|
|
+ //账号不存在
|
|
|
+ if (Objects.isNull(markUser)) {
|
|
|
+ throw new RuntimeException("账号不存在");
|
|
|
+ }
|
|
|
+ //不是采集员账号
|
|
|
+ else if (!Objects.equals(Role.COLLECTOR, markUser.getRole())) {
|
|
|
+ throw new RuntimeException("非采集端账号");
|
|
|
+ }
|
|
|
+ //密码错误
|
|
|
+ else if (!Objects.equals(markUser.getPassword(), password)) {
|
|
|
+ throw new RuntimeException("密码错误");
|
|
|
+ }
|
|
|
LoginDTO loginDTO = null;
|
|
|
- if (loginname.equals(loginConfig.adminLoginConfig().getLoginName()) && password.equals(loginConfig.adminLoginConfig().getPassword()) ||
|
|
|
- loginname.equals(loginConfig.clientLoginConfig().getLoginName()) && password.equals(loginConfig.clientLoginConfig().getPassword())) {
|
|
|
- Work activeWork = workRepo.findByActiveTrue();
|
|
|
- loginDTO = new LoginDTO();
|
|
|
- loginDTO.setExamId(activeWork.getId());
|
|
|
- loginDTO.setExamName(activeWork.getName());
|
|
|
- loginDTO.setImageEnc(imageConfig.isImageEnc());
|
|
|
- List<CollectSubjectDTO> collectSubjectDTOs = new ArrayList<>();
|
|
|
- activeWork.getSubjects().forEach(s -> {
|
|
|
- int id = s.getSubject().ordinal() + 1;
|
|
|
- CollectSubjectDTO collectSubjectDTO = new CollectSubjectDTO(id, s.getName());
|
|
|
- if (!Strings.isNullOrEmpty(s.getCollectConfig())) {
|
|
|
- JSONObject json = JSONObject.fromObject(s.getCollectConfig());
|
|
|
- collectSubjectDTO.setCollectConfig(json);
|
|
|
- }
|
|
|
+// if (loginname.equals(loginConfig.adminLoginConfig().getLoginName()) && password.equals(loginConfig.adminLoginConfig().getPassword()) ||
|
|
|
+// loginname.equals(loginConfig.clientLoginConfig().getLoginName()) && password.equals(loginConfig.clientLoginConfig().getPassword())) {
|
|
|
+ Work activeWork = workRepo.findByActiveTrue();
|
|
|
+ loginDTO = new LoginDTO();
|
|
|
+ loginDTO.setExamId(activeWork.getId());
|
|
|
+ loginDTO.setExamName(activeWork.getName());
|
|
|
+ loginDTO.setImageEnc(imageConfig.isImageEnc());
|
|
|
+ List<CollectSubjectDTO> collectSubjectDTOs = new ArrayList<>();
|
|
|
+ activeWork.getSubjects().forEach(s -> {
|
|
|
+ int id = s.getSubject().ordinal() + 1;
|
|
|
+ CollectSubjectDTO collectSubjectDTO = new CollectSubjectDTO(id, s.getName());
|
|
|
+ if (!Strings.isNullOrEmpty(s.getCollectConfig())) {
|
|
|
+ JSONObject json = JSONObject.fromObject(s.getCollectConfig());
|
|
|
+ collectSubjectDTO.setCollectConfig(json);
|
|
|
+ }
|
|
|
|
|
|
- collectSubjectDTOs.add(collectSubjectDTO);
|
|
|
- });
|
|
|
- loginDTO.setSubjects(collectSubjectDTOs);
|
|
|
- }
|
|
|
+ collectSubjectDTOs.add(collectSubjectDTO);
|
|
|
+ });
|
|
|
+ loginDTO.setSubjects(collectSubjectDTOs);
|
|
|
+// }
|
|
|
return loginDTO;
|
|
|
}
|
|
|
|
|
@@ -118,7 +137,7 @@ public class CollectApi {
|
|
|
collectStuDTO.setExamNumber(s.getExamNumber());
|
|
|
collectStuDTO.setName(s.getName());
|
|
|
collectStuDTO.setSiteCode(s.getAreaName());
|
|
|
- collectStuDTO.setRoomCode(s.getExamNumber());
|
|
|
+ collectStuDTO.setRoomCode(s.getExamRoom());
|
|
|
list.add(collectStuDTO);
|
|
|
};
|
|
|
studentRepo.findByWorkId(activeWork.getId()).forEach(consumer);
|