Selaa lähdekoodia

新增上传图片客户端帐号密码

wangliang 5 vuotta sitten
vanhempi
commit
991b9b6240

+ 4 - 0
stmms-ms-accesscontrol/src/main/java/cn/com/qmth/stmms/ms/accesscontrol/LoginInterceptor.java

@@ -36,6 +36,10 @@ public class LoginInterceptor extends HandlerInterceptorAdapter {
 //                response.sendError(HttpStatus.UNAUTHORIZED.value(), "该账户只能在采集端登录");
 //                return false;
 //            }
+            else if (loginConfig.uploadLoginConfig().getLoginName().equals(loginName)) {
+                response.sendError(HttpStatus.UNAUTHORIZED.value(), "该账户只能在图片客户端登录");
+                return false;
+            }
             AbstractUser user = markUserRepo.findByLoginName(loginName);
             if (Objects.equals(Role.COLLECTOR, ((MarkUser) user).getRole())) {
                 response.sendError(HttpStatus.UNAUTHORIZED.value(), "该账户只能在采集端登录");

+ 3 - 2
stmms-ms-accesscontrol/src/main/java/cn/com/qmth/stmms/ms/accesscontrol/api/AuthApi.java

@@ -1,7 +1,6 @@
 package cn.com.qmth.stmms.ms.accesscontrol.api;
 
 import cn.com.qmth.stmms.ms.accesscontrol.config.LoginConfig;
-import cn.com.qmth.stmms.ms.commons.utils.RandomUtil;
 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.MarkUserRepo;
@@ -52,7 +51,9 @@ public class AuthApi {
 //                else if (loginConfig.clientLoginConfig().getLoginName().equals(user.getLoginName())) {
 //                    throw new RuntimeException("该账户只能在采集端登录");
 //                }
-                else {
+                else if (loginConfig.uploadLoginConfig().getLoginName().equals(user.getLoginName())) {
+                    throw new RuntimeException("该账户只能在图片客户端登录");
+                } else {
                     throw new RuntimeException("用户不存在");
                 }
             }

+ 11 - 0
stmms-ms-accesscontrol/src/main/java/cn/com/qmth/stmms/ms/accesscontrol/config/LoginConfig.java

@@ -46,4 +46,15 @@ public class LoginConfig {
     public InspectionLoginConfig inspectionLoginConfig() {
         return new InspectionLoginConfig();
     }
+
+    /**
+     * upload admin配置
+     *
+     * @return
+     */
+    @Bean
+    @ConfigurationProperties(prefix = "app.upload", ignoreUnknownFields = false)
+    public UploadLoginConfig uploadLoginConfig() {
+        return new UploadLoginConfig();
+    }
 }

+ 31 - 0
stmms-ms-accesscontrol/src/main/java/cn/com/qmth/stmms/ms/accesscontrol/config/UploadLoginConfig.java

@@ -0,0 +1,31 @@
+package cn.com.qmth.stmms.ms.accesscontrol.config;
+
+/**
+ * @Description: 上传图片客户端配置
+ * @Param:
+ * @return:
+ * @Author: wangliang
+ * @Date: 2020/4/1
+ */
+public class UploadLoginConfig {
+
+    private String loginName;
+
+    private String password;
+
+    public String getLoginName() {
+        return loginName;
+    }
+
+    public void setLoginName(String loginName) {
+        this.loginName = loginName;
+    }
+
+    public String getPassword() {
+        return password;
+    }
+
+    public void setPassword(String password) {
+        this.password = password;
+    }
+}

+ 27 - 23
stmms-ms-collect/src/main/java/cn/com/qmth/stmms/ms/collect/api/CollectApi.java

@@ -78,28 +78,34 @@ 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.setUserId(markUser.getId());
-        loginDTO.setExamId(activeWork.getId());
-        loginDTO.setExamName(activeWork.getName());
-        loginDTO.setImageEnc(imageConfig.isImageEnc());
+        Work activeWork = null;
+        if (loginname.equals(loginConfig.uploadLoginConfig().getLoginName()) && password.equals(loginConfig.uploadLoginConfig().getPassword())) {
+            activeWork = workRepo.findByActiveTrue();
+            loginDTO = new LoginDTO();
+            loginDTO.setExamId(activeWork.getId());
+            loginDTO.setExamName(activeWork.getName());
+        } else {
+            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("密码错误");
+            }
+            activeWork = workRepo.findByActiveTrue();
+            loginDTO = new LoginDTO();
+            loginDTO.setUserId(markUser.getId());
+            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;
@@ -108,11 +114,9 @@ public class CollectApi {
                 JSONObject json = JSONObject.fromObject(s.getCollectConfig());
                 collectSubjectDTO.setCollectConfig(json);
             }
-
             collectSubjectDTOs.add(collectSubjectDTO);
         });
         loginDTO.setSubjects(collectSubjectDTOs);
-//        }
         return loginDTO;
     }
 

+ 1 - 1
stmms-ms-core/src/main/java/cn/com/qmth/stmms/ms/core/domain/user/Role.java

@@ -4,7 +4,7 @@ package cn.com.qmth.stmms.ms.core.domain.user;
  * Created by zhengmin on 2016/10/9.
  */
 public enum Role {
-    MARKER("评卷员"), MARK_LEADER("科组长"), ADMIN("管理员"), INSPECTOR("复评专家"),INSPECTION("纪检员"),COLLECTOR("采集员");
+    MARKER("评卷员"), MARK_LEADER("科组长"), ADMIN("管理员"), INSPECTOR("复评专家"), INSPECTION("纪检员"), COLLECTOR("采集员"), UPLOAD("图片客户端");
 
     private String name;