|
@@ -23,7 +23,6 @@ import net.sf.json.JSONObject;
|
|
|
import org.apache.commons.codec.binary.Hex;
|
|
|
import org.apache.commons.codec.digest.DigestUtils;
|
|
|
import org.apache.commons.lang.StringUtils;
|
|
|
-import org.assertj.core.util.Compatibility;
|
|
|
import org.assertj.core.util.Strings;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -39,7 +38,6 @@ import javax.servlet.http.HttpServletResponse;
|
|
|
import java.awt.*;
|
|
|
import java.awt.image.BufferedImage;
|
|
|
import java.io.*;
|
|
|
-import java.net.URLEncoder;
|
|
|
import java.security.MessageDigest;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.util.List;
|
|
@@ -120,7 +118,7 @@ public class CollectApi {
|
|
|
public LoginDTO login(@RequestParam String loginname, @RequestParam String password) throws Exception {
|
|
|
LoginDTO loginDTO = null;
|
|
|
Work activeWork = null;
|
|
|
- if (loginname.equals(loginConfig.uploadLoginConfig().getLoginName()) && password.equals(loginConfig.uploadLoginConfig().getPassword())) {
|
|
|
+ /*if (loginname.equals(loginConfig.uploadLoginConfig().getLoginName()) && password.equals(loginConfig.uploadLoginConfig().getPassword())) {
|
|
|
activeWork = workRepo.findByActiveTrue();
|
|
|
if (Objects.isNull(activeWork)) {
|
|
|
throw new Exception("没有work");
|
|
@@ -137,33 +135,42 @@ public class CollectApi {
|
|
|
loginDTO.setExamId(activeWork.getId());
|
|
|
loginDTO.setExamName(activeWork.getName());
|
|
|
loginDTO.setRoleCode("ADMIN");
|
|
|
- } else {
|
|
|
- MarkUser markUser = markUserRepo.findByLoginName(loginname);
|
|
|
- //账号不存在
|
|
|
- if (Objects.isNull(markUser)) {
|
|
|
- throw new RuntimeException("账号不存在");
|
|
|
- }
|
|
|
- if (!markUser.isEnabled()) {
|
|
|
- throw new RuntimeException("账号已禁用");
|
|
|
- }
|
|
|
- //不是采集员账号
|
|
|
- else if (!Objects.equals(Role.COLLECTOR, markUser.getRole())) {
|
|
|
- throw new RuntimeException("非采集端账号");
|
|
|
- }
|
|
|
- //密码错误
|
|
|
- else if (!Objects.equals(markUser.getPassword(), password)) {
|
|
|
- throw new RuntimeException("密码错误");
|
|
|
- }
|
|
|
- activeWork = workRepo.findByActiveTrue();
|
|
|
- if (Objects.isNull(activeWork)) {
|
|
|
- throw new Exception("没有work");
|
|
|
- }
|
|
|
- loginDTO = new LoginDTO();
|
|
|
- loginDTO.setUserId(markUser.getId());
|
|
|
- loginDTO.setExamId(activeWork.getId());
|
|
|
- loginDTO.setExamName(activeWork.getName());
|
|
|
- loginDTO.setImageEnc(ParamCache.paramMap.get(activeWork.getId()).getImageEncrypt() == 1);
|
|
|
+ } else {*/
|
|
|
+ MarkUser markUser = markUserRepo.findByLoginName(loginname);
|
|
|
+ //账号不存在
|
|
|
+ if (Objects.isNull(markUser)) {
|
|
|
+ throw new RuntimeException("账号不存在");
|
|
|
+ }
|
|
|
+ if (!markUser.isEnabled()) {
|
|
|
+ throw new RuntimeException("账号已禁用");
|
|
|
+ }
|
|
|
+ //不是采集员账号
|
|
|
+ else if (!Objects.equals(Role.COLLECTOR, markUser.getRole())
|
|
|
+ && !Objects.equals(Role.ADMIN, markUser.getRole())) {
|
|
|
+ throw new RuntimeException("非采集端账号或者机构管理员账号");
|
|
|
+ }
|
|
|
+ //密码错误
|
|
|
+ else if (!Objects.equals(markUser.getPassword(), password)) {
|
|
|
+ throw new RuntimeException("密码错误");
|
|
|
}
|
|
|
+// activeWork = workRepo.findByActiveTrue();
|
|
|
+ activeWork = workRepo.findByActiveTrueAndOrganizationId(markUser.getOrganizationId());
|
|
|
+ if (Objects.isNull(activeWork)) {
|
|
|
+ throw new Exception("没有work");
|
|
|
+ }
|
|
|
+
|
|
|
+ //采集用户工作与当前工作不匹配
|
|
|
+ if (Objects.equals(Role.COLLECTOR, markUser.getRole()) && markUser.getWorkId() != activeWork.getId()) {
|
|
|
+ throw new RuntimeException("此采集账号与当前工作文件夹不匹配");
|
|
|
+ }
|
|
|
+
|
|
|
+ loginDTO = new LoginDTO();
|
|
|
+ loginDTO.setOrganizationId(activeWork.getOrganizationId());
|
|
|
+ loginDTO.setUserId(markUser.getId());
|
|
|
+ loginDTO.setExamId(activeWork.getId());
|
|
|
+ loginDTO.setExamName(activeWork.getName());
|
|
|
+ loginDTO.setImageEnc(ParamCache.paramMap.get(activeWork.getId()).getImageEncrypt() == 1);
|
|
|
+// }
|
|
|
List<CollectSubjectDTO> collectSubjectDTOs = new ArrayList<>();
|
|
|
activeWork.getSubjects().forEach(s -> {
|
|
|
int id = s.getSubject().ordinal() + 1;
|
|
@@ -1199,7 +1206,7 @@ public class CollectApi {
|
|
|
List<Map<String, Object>> paperList = jdbcTemplate.queryForList(sql.toString());
|
|
|
//图片后缀
|
|
|
String suffix = ".jpg";
|
|
|
- String dir,localUrl;
|
|
|
+ String dir, localUrl;
|
|
|
if (Objects.equals("1", imageType)) {
|
|
|
dir = systemConfig.getSheetDir();
|
|
|
localUrl = imageServerConfig.getImageServer() + "/sheet";
|
|
@@ -1209,8 +1216,8 @@ public class CollectApi {
|
|
|
} else {
|
|
|
throw new RuntimeException("图片类型有误");
|
|
|
}
|
|
|
- if(paperList != null && paperList.size() >0){
|
|
|
- paperList.stream().map(m->{
|
|
|
+ if (paperList != null && paperList.size() > 0) {
|
|
|
+ paperList.stream().map(m -> {
|
|
|
Long studentId = Long.valueOf(m.get("studentId").toString());
|
|
|
String subject = m.get("subject").toString();
|
|
|
Subject subject1 = Subject.valueOf(subject);
|
|
@@ -1421,7 +1428,7 @@ public class CollectApi {
|
|
|
} catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
|
} finally {
|
|
|
- if(isDeleteLocal){
|
|
|
+ if (isDeleteLocal) {
|
|
|
file.delete();
|
|
|
}
|
|
|
}
|