From 2019d3ea4088eae51b5d52a2f6245841deb26781 Mon Sep 17 00:00:00 2001
From: zhangfeng <1603559716@qq.com>
Date: 星期三, 19 七月 2023 15:05:43 +0800
Subject: [PATCH] 用户以及要素部分修改

---
 src/main/java/com/gk/hotwork/Controller/UserController.java |   72 +++++++++++++++++++++--------------
 1 files changed, 43 insertions(+), 29 deletions(-)

diff --git a/src/main/java/com/gk/hotwork/Controller/UserController.java b/src/main/java/com/gk/hotwork/Controller/UserController.java
index 08e8441..d61a2b2 100644
--- a/src/main/java/com/gk/hotwork/Controller/UserController.java
+++ b/src/main/java/com/gk/hotwork/Controller/UserController.java
@@ -141,7 +141,7 @@
         return msg;
     }
     @GetMapping("/company/user/list")
-    @ApiOperation(value = "获取企业用户数据",response = Msg.class)
+    @ApiOperation(value = "获取企业用户数据-分页",response = Msg.class)
     @ApiImplicitParams({
             @ApiImplicitParam(name = "pageIndex",value = "当前页码"),
             @ApiImplicitParam(name = "pageSize",value = "每页行数"),
@@ -181,14 +181,14 @@
             condition.put("job",job.trim());
         }
 
-        condition.put("roleId",35l);
+
         pageInfo.setCondition(condition);
         userService.selectCompanyUserDataGrid(pageInfo);
         msg.setResult(pageInfo);
         return msg;
     }
     @GetMapping("/supervise/user/list")
-    @ApiOperation(value = "获取监管用户数据",response = Msg.class)
+    @ApiOperation(value = "获取监管用户数据-分页",response = Msg.class)
     @ApiImplicitParams({
             @ApiImplicitParam(name = "pageIndex",value = "当前页码"),
             @ApiImplicitParam(name = "pageSize",value = "每页行数"),
@@ -233,7 +233,7 @@
         if(StringUtils.isNotBlank(userInfoCurrent.getCounty())){
             condition.put("county", userInfoCurrent.getCounty());
         }
-        condition.put("roleId",38l);
+
         pageInfo.setCondition(condition);
         userService.selectSuperviseUserDataGrid(pageInfo);
         msg.setResult(pageInfo);
@@ -241,7 +241,7 @@
     }
 
     @GetMapping("/expert/user/list")
-    @ApiOperation(value = "获取监管用户数据",response = Msg.class)
+    @ApiOperation(value = "获取专家用户数据-分页",response = Msg.class)
     @ApiImplicitParams({
             @ApiImplicitParam(name = "pageIndex",value = "当前页码"),
             @ApiImplicitParam(name = "pageSize",value = "每页行数"),
@@ -276,7 +276,7 @@
             condition.put("idcard",idcard.trim());
         }
 
-        condition.put("roleId",36l);
+
         pageInfo.setCondition(condition);
         userService.selectExpertUserDataGrid(pageInfo);
         msg.setResult(pageInfo);
@@ -566,7 +566,7 @@
         userInfo.setProfessionalLevel(professionalLevel);
         userInfo.setJob(jsonObject.getString("job"));
         userInfo.setStatus((byte)1);
-        userInfo.setType(3);
+        userInfo.setType(4);
         userInfo.setCreatedby(getUser().getRealname());
         userInfo.setRealname(realname);
         userInfo.setCreateddate(new Date());
@@ -630,12 +630,14 @@
         }
         String password = jsonObject.getString("password");
         String PW_PATTERN = "(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*[~!@#$%^&*_.]).{8,}";
-        if (!password.matches(PW_PATTERN)){
-            msg.setCode(ErrorCode.ERROR_10004.getCode());
-            msg.setMessage("密码必须8位以上,并且包含大小写字母、数字、特殊符号三种以上");
-            return msg;
-        }else {
-            userInfo.setPassword(MD5Utils.encode(password));
+        if (StringUtils.isNotBlank(password)){
+            if (!password.matches(PW_PATTERN)){
+                msg.setCode(ErrorCode.ERROR_10004.getCode());
+                msg.setMessage("密码必须8位以上,并且包含大小写字母、数字、特殊符号三种以上");
+                return msg;
+            }else {
+                userInfo.setPassword(MD5Utils.encode(password));
+            }
         }
         String username = jsonObject.getString("username");
         if (StringUtils.isNotBlank(username) && username.length() == 11){
@@ -688,6 +690,12 @@
             msg.setMessage("专业不存在");
             return msg;
         }
+        List<UserInfo> userInfoExist = userService.selectUserInfo(userInfo.getId(),userInfo.getUsername());
+        if (userInfoExist.size() > 0){
+            msg.setCode(ErrorCode.ERROR_10004.getCode());
+            msg.setMessage("用户名重复");
+            return msg;
+        }
 
         userInfo.setCompany(jsonObject.getString("company"));
         userInfo.setEmail(jsonObject.getString("email"));
@@ -695,7 +703,6 @@
         userInfo.setProfessionalLevel(professionalLevel);
         userInfo.setJob(jsonObject.getString("job"));
         userInfo.setStatus((byte)1);
-        userInfo.setType(3);
         userInfo.setCreatedby(getUser().getRealname());
         userInfo.setRealname(realname);
         userInfo.setCreateddate(new Date());
@@ -703,19 +710,14 @@
         userInfo.setLastmodifieddate(new Date());
         userInfo.setIsdel((byte)0);
         userInfo.setIsupload((byte)0);
-        List<UserInfo> userInfoExist = userService.selectUserInfo(null,userInfo.getUsername());
-        if (userInfoExist.size() > 0){
-            msg.setCode(ErrorCode.ERROR_10004.getCode());
-            msg.setMessage("用户名重复");
-            return msg;
-        }
+
 
         int userSize = userService.selectUserSize();
         int sli = (userSize + 1) % sliceSize;
         userInfo.setSlice(sli + "");
         if (sli == 0)
             userInfo.setSlice(sliceSize + "");
-        userService.save(userInfo);
+        userService.updateById(userInfo);
         return msg;
     }
     /**
@@ -976,6 +978,7 @@
             msg.setMessage("省(自治区)不能为空");
             return msg;
         }
+
         String city = jsonObject.getString("city");
         if (executiveLevel == 2 && StringUtils.isBlank(city)){
             msg.setCode(ErrorCode.ERROR_10004.getCode());
@@ -992,8 +995,13 @@
         }else {
             userInfo.setCounty(county);
         }
-        //非超管 或者 管理员
-        if(!userInfoCurrent.getType().equals(1) && !userInfoCurrent.getType().equals(2)){
+        if(userInfoCurrent.getType().equals(3) || userInfoCurrent.getType().equals(4)){
+            msg.setCode(ErrorCode.ERROR_70001.getCode());
+            msg.setMessage("专家或企业用户无权限新增监管用户信息");
+            return msg;
+        }
+        //管理员(监管)
+        if(userInfoCurrent.getType().equals(2)){
             //判断当前用户是否有权限新增其管辖下监管机构用户
             Integer currentUserExLevl = userInfoCurrent.getExecutiveLevel();
             if(currentUserExLevl < executiveLevel){
@@ -1074,7 +1082,7 @@
         userInfo.setCompany(companyName);
         userInfo.setJob(jsonObject.getString("job"));
         userInfo.setStatus((byte)1);
-        userInfo.setType(3);
+        userInfo.setType(2);
         userInfo.setCreatedby(getUser().getRealname());
         userInfo.setRealname(realname);
         userInfo.setCreateddate(new Date());
@@ -1109,11 +1117,11 @@
      * @return
      */
     @PostMapping("/put/supervise/user")
-    @ApiOperation(value = "修改企业用户数据",response = Msg.class)
+    @ApiOperation(value = "修改监管用户数据",response = Msg.class)
     @ApiImplicitParams({
             @ApiImplicitParam(name = "id",value = "用户id",required = true),
             @ApiImplicitParam(name = "username",value = "手机号",required = true),
-            @ApiImplicitParam(name = "password",value = "密码",required = true),
+            @ApiImplicitParam(name = "password",value = "密码"),
             @ApiImplicitParam(name = "email",value = "邮箱"),
             @ApiImplicitParam(name = "job",value = "职务"),
             @ApiImplicitParam(name = "realname",value = "姓名"),
@@ -1162,8 +1170,14 @@
             return msg;
         }
         userInfo.setId(id);
-        //非超管、 管理员 、自己可以修改
-        if((!userInfoCurrent.getType().equals(1)) && (!userInfoCurrent.getType().equals(2)) && (!id .equals(userInfoCurrent.getId()))){
+
+        if(userInfoCurrent.getType().equals(3) || userInfoCurrent.getType().equals(4)){
+            msg.setCode(ErrorCode.ERROR_70001.getCode());
+            msg.setMessage("专家或企业用户无权限新增监管用户信息");
+            return msg;
+        }
+        //监管用户 、自己要验证
+        if(userInfoCurrent.getType().equals(2) && (!id .equals(userInfoCurrent.getId()))){
             //判断当前用户是否有权限新增其管辖下监管机构用户
             Integer currentUserExLevl = userInfoCurrent.getExecutiveLevel();
             if(currentUserExLevl < executiveLevel){
@@ -2644,7 +2658,7 @@
      * 获取专家用户列表
      */
     @GetMapping("/expert/list")
-    @ApiOperation(value = "获取监管用户数据",response = Msg.class)
+    @ApiOperation(value = "获取专家用户数据",response = Msg.class)
     @ApiImplicitParams({
             @ApiImplicitParam(name = "realname",value = "姓名"),
     })

--
Gitblit v1.9.2