From 08f1b1f1804a8bd833d42f257908d80e88387b55 Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期五, 14 三月 2025 11:27:47 +0800
Subject: [PATCH] 3.5增加登录验证、修改密码、人员列表调整

---
 flower_city/src/main/java/com/dg/core/controller/GuideDoController.java |  145 +++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 130 insertions(+), 15 deletions(-)

diff --git a/flower_city/src/main/java/com/dg/core/controller/GuideDoController.java b/flower_city/src/main/java/com/dg/core/controller/GuideDoController.java
index c533fca..293b1c6 100644
--- a/flower_city/src/main/java/com/dg/core/controller/GuideDoController.java
+++ b/flower_city/src/main/java/com/dg/core/controller/GuideDoController.java
@@ -3,8 +3,12 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.dg.core.ResultData;
 import com.dg.core.annotation.Authorization;
+import com.dg.core.annotation.CurrentUser;
 import com.dg.core.db.gen.entity.SysUser;
+import com.dg.core.service.IGuideRepairOrderService;
+import com.dg.core.service.IOrganizationChartService;
 import com.dg.core.service.ISysUserService;
+import com.dg.core.util.PermissionUtil;
 import com.dg.core.util.Snowflake;
 import com.dg.core.util.TableDataInfo;
 import io.swagger.annotations.Api;
@@ -29,6 +33,12 @@
     ISysUserService IUserService;
 
 
+    @Autowired
+    IGuideRepairOrderService iGuideRepairOrderService;
+
+    @Autowired
+    IOrganizationChartService iOrganizationChartService;
+
     /**
      * 查询列表
      *
@@ -38,14 +48,25 @@
     @GetMapping("/getlist")
     @Authorization
     public TableDataInfo selectConfigList(@RequestParam(value = "pageNum",required = false) Integer pageNum,
-                                          @RequestParam(value = "pageSize",required = false) Integer pageSize)
+                                          @RequestParam(value = "pageSize",required = false) Integer pageSize,
+                                          @RequestParam(value = "keyword",required = false) String keyword,
+                                          @RequestParam(value = "isDivisionHead",required = false) String isDivisionHead,
+                                          @CurrentUser SysUser sysUser)
     {
         Assert.notNull(pageNum, "pageNum can not be empty");
         Assert.notNull(pageSize, "pageSize can not be empty");
         Page<SysUser> pageParam = new Page<>(pageNum,pageSize);
-        List<SysUser> list = IUserService.selectConfigList(pageParam,pageSize,"2");
-
-        int num=IUserService.selectNum("2");
+        List<String> ids= PermissionUtil.getPermission(sysUser,iOrganizationChartService);
+        List<SysUser> list ;
+        int num;
+        if (isDivisionHead!=null&&!isDivisionHead.equals("")){
+            list = IUserService.selectConfigList(pageParam,pageSize,"2",keyword,ids,isDivisionHead);
+            num=IUserService.selectNum("2",keyword,ids,isDivisionHead);
+        }
+        else{
+            list = IUserService.selectConfigList(pageParam,pageSize,"2",keyword,ids,null);
+            num=IUserService.selectNum("2",keyword,ids,null);
+        }
         return getDataTable(list,num);
     }
 
@@ -53,13 +74,13 @@
     /**
      * 新增用户
      *
-     * @param config 参数配置信息
+     * @param config 参数配置信息-
      * @return 结果
      */
     @ApiOperation("新增导办用户接口")
     @PostMapping("/add")
     @Authorization
-    public ResultData insertConfig(@RequestBody SysUser config)
+    public ResultData insertConfig(@RequestBody SysUser config,@CurrentUser SysUser sysUser)
     {
         Assert.notNull(config, "parameter can not be empty");
 
@@ -83,17 +104,74 @@
             return error("昵称不能为空");
         }
 
-        SysUser user = IUserService.getUserByAccount(config.getLoginName());
-        if (user != null) {
-            //提示用户名或密码错误
-            return error("该账户已存在!");
+        if(StringUtils.isEmpty(config.getDepartmentId()))
+        {
+            return error("部门不能为空");
         }
 
         config.setUserType("2");
 
+        SysUser user=IUserService.selectData(null,config.getPhonenumber(),null);
+        if (user != null)
+        {
+            user.setPassword(config.getPassword());
+            user.setDepartmentId(config.getDepartmentId());
+            user.setUserName(config.getUserName());
+            user.setPhonenumber(config.getPhonenumber());
+            user.setLoginName(config.getLoginName());
+            user.setMasterIds(config.getMasterIds());
+            //是否是部门领导(1是  2不是)
+            if(StringUtils.equals("1",config.getIsDivisionHead()))
+            {
+                user.setRoleIds("13");
+                if(StringUtils.isEmpty(config.getDataPermission())) {
+                    user.setDataPermission(config.getMoreDepartmentIds());
+                }
+            }
+            else
+            {
+                if(StringUtils.isEmpty(config.getDataPermission())) {
+                    user.setDataPermission(config.getDepartmentId());
+                }
+                user.setRoleIds("2");
+            }
+            user.setUserType("2");
+            user.setIsDivisionHead(config.getIsDivisionHead());
+            user.setStatus(config.getStatus());
+            user.setUpdateTime(LocalDateTime.now());
+            user.setDepartmentIds(config.getDepartmentIds());
+            user.setDepartmentIdStr(config.getDepartmentIdStr());
+            user.setMoreDepartmentIds(config.getMoreDepartmentIds());
+            user.setMattersIds(config.getMattersIds());
+            user.setMasterNames(config.getMasterNames());
+            user.setMattersNames(config.getMattersNames());
+            if (config.getMoreDepartmentIds()!=null&&config.getMoreDepartmentIds().indexOf(",")>0)
+                user.setDataPermission(config.getMoreDepartmentIds().substring(config.getMoreDepartmentIds().indexOf(",")+1));
+            //提示用户名或密码错误
+            return toAjax(IUserService.updateConfig(user));
+        }
+        //是否是部门领导(1是  2不是)
+        if(StringUtils.equals("1",config.getIsDivisionHead()))
+        {
+            config.setRoleIds("13");
+            if(StringUtils.isEmpty(config.getDataPermission())) {
+                config.setDataPermission(config.getMoreDepartmentIds());
+            }
+        }
+        else
+        {
+            if(StringUtils.isEmpty(config.getDataPermission())) {
+                config.setDataPermission(config.getDepartmentId());
+            }
+            config.setRoleIds("2");
+        }
+        config.setCreateBy(sysUser.getUserId());
         config.setCreateTime(LocalDateTime.now());
         config.setUpdateTime(LocalDateTime.now());
-        config.setUserId(Snowflake.getId());
+        config.setUserId(Snowflake.getId()+"");
+        if (config.getMoreDepartmentIds()!=null&&config.getMoreDepartmentIds().indexOf(",")>0)
+            config.setDataPermission(config.getMoreDepartmentIds().substring(config.getMoreDepartmentIds().indexOf(",")+1));
+        config.setIsDivisionHead(config.getIsDivisionHead());
         return toAjax(IUserService.insertConfig(config));
     }
 
@@ -126,6 +204,32 @@
 
         config.setUserType("2");
 
+        //是否是部门领导(1是  2不是)
+        if(StringUtils.equals("1",config.getIsDivisionHead()))
+        {
+            if (config.getMoreDepartmentIds()!=null&&config.getMoreDepartmentIds().indexOf(",")>0)
+                config.setDataPermission(config.getMoreDepartmentIds().substring(config.getMoreDepartmentIds().indexOf(",")+1));
+            else
+            {
+                config.setDataPermission("0");
+            }
+
+             config.setRoleIds("13");
+        }
+        else
+        {
+            if(StringUtils.isEmpty(config.getDataPermission())) {
+                config.setDataPermission(config.getDepartmentId());
+            }
+            config.setRoleIds("2");
+        }
+
+        SysUser user=IUserService.selectData(null,config.getPhonenumber(),null);
+        if (user != null && !(user.getUserId().equals(config.getUserId())))
+        {
+            //提示用户名或密码错误
+            return ResultData.error("该手机账户已存在!请更换手机号");
+        }
         return toAjax(IUserService.updateConfig(config));
     }
 
@@ -143,7 +247,17 @@
         {
             return error("userId不能为空");
         }
-        return toAjax(IUserService.deleteConfigById(userId));
+
+        int a=iGuideRepairOrderService.countUser(userId,"2");
+        if(a>0)
+        {
+            return error("该人员有工单未处理完不能删除");
+        }
+        SysUser user=IUserService.selectData(userId,null,null);
+        user.setUserType("4");
+        user.setRoleIds("4");
+        user.setIsDivisionHead("2");
+        return toAjax(IUserService.updateConfig(user));
     }
 
     /**
@@ -179,7 +293,8 @@
     @GetMapping("/selectListByDepartmentId")
     @Authorization
     public ResultData selectListByDepartmentId(@RequestParam("departmentId") String departmentId,
-                                               @RequestParam(value = "classifyId",required = false) String classifyId){
+                                               @RequestParam(value = "classifyId",required = false) String classifyId)
+    {
         return  ResultData.success(IUserService.selectListByDepartmentId(departmentId,classifyId));
     }
 
@@ -190,8 +305,8 @@
     @ApiOperation(" 查询导办用户列表(不分页)")
     @GetMapping("/queryList")
     @Authorization
-    public  ResultData  queryList(){
-        return  ResultData.success(IUserService.queryList(2));
+    public  ResultData  queryList(@RequestParam(value = "keyWord",required = false) String keyWord){
+        return  ResultData.success(IUserService.queryList(2,keyWord));
     }
 
 }

--
Gitblit v1.7.1