From afa0dbb4f54e7244835dd67ec33c3e545f122f71 Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期五, 17 一月 2025 16:40:43 +0800
Subject: [PATCH] bug修改

---
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysUserServiceImpl.java |  137 ++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 133 insertions(+), 4 deletions(-)

diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysUserServiceImpl.java
index 6ce9dc7..e5e799d 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysUserServiceImpl.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysUserServiceImpl.java
@@ -1,5 +1,6 @@
 package com.ruoyi.system.service.impl.sys;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.core.constant.UserConstants;
 import com.ruoyi.common.core.exception.ServiceException;
@@ -10,10 +11,15 @@
 import com.ruoyi.common.datascope.annotation.DataScope;
 import com.ruoyi.common.security.utils.SecurityUtils;
 import com.ruoyi.system.api.domain.dto.AppEditUserDto;
+import com.ruoyi.system.api.domain.dto.MgtBaseBathDto;
+import com.ruoyi.system.api.domain.dto.MgtFrozenMemberDto;
 import com.ruoyi.system.api.domain.dto.MgtUserIdByDept;
 import com.ruoyi.system.api.domain.poji.sys.SysRole;
 import com.ruoyi.system.api.domain.poji.sys.SysUser;
+import com.ruoyi.system.api.domain.vo.MgtSysSimpleUserVo;
+import com.ruoyi.system.domain.dto.UserMenuEditDto;
 import com.ruoyi.system.domain.pojo.sys.SysPost;
+import com.ruoyi.system.domain.pojo.sys.SysUserMenu;
 import com.ruoyi.system.domain.pojo.sys.SysUserPost;
 import com.ruoyi.system.domain.pojo.sys.SysUserRole;
 import com.ruoyi.system.mapper.sys.*;
@@ -61,6 +67,11 @@
 
     @Resource
     protected Validator validator;
+
+    @Resource
+    protected SysUserMenuMapper userMenuMapper;
+
+
 
     /**
      * 根据条件分页查询用户列表
@@ -598,10 +609,6 @@
         String editValue = appEditUserDto.getEditValue();
         switch (editType){
             case 1:
-                sysUser.setNickName(editValue);
-                sysUser.setUpdateTime(DateUtils.getNowDate());
-                sysUser.setUpdateBy(String.valueOf(appEditUserDto.getUserId()));
-                userMapper.updateUser(sysUser);
                 break;
             case 2:
                 sysUser.setAvatar(editValue);
@@ -616,6 +623,12 @@
                 userMapper.updateUser(sysUser);
                 break;
             case 4:
+                break;
+            case 5:
+                sysUser.setNickName(editValue);
+                sysUser.setUpdateTime(DateUtils.getNowDate());
+                sysUser.setUpdateBy(String.valueOf(appEditUserDto.getUserId()));
+                userMapper.updateUser(sysUser);
                 break;
             default:
                 break;
@@ -637,4 +650,120 @@
         userIdByDept.setUserIdList(userIdList);
         return userIdByDept;
     }
+
+    /**
+     * @description
+     * @author  jqs
+     * @date    2023/6/25 14:35
+     * @param mgtBaseBathDto
+     * @return  List<MgtSysSimpleUserVo>
+     */
+    @Override
+    public List<MgtSysSimpleUserVo> listSimpleUserVo(MgtBaseBathDto mgtBaseBathDto){
+        return userMapper.listSimpleUserVo(mgtBaseBathDto.getIds());
+    }
+
+    /**
+     * @description
+     * @author  jqs
+     * @date    2023/6/25 16:37
+     * @param userMenuEditDto
+     * @return  void
+     */
+    @Override
+    public void editUserMenu(UserMenuEditDto userMenuEditDto){
+        SysUser sysUser = this.selectUserById(userMenuEditDto.getUserId());
+        sysUser.setDataScope(userMenuEditDto.getDataScope());
+        sysUser.setDataScopeEmployee(userMenuEditDto.getDataScopeEmployee());
+        userMapper.updateUser(sysUser);
+        userMenuMapper.deleteUserMenuByUserId(userMenuEditDto.getUserId());
+        int rows = 1;
+        // 新增用户与角色管理
+        List<SysUserMenu> list = new ArrayList<SysUserMenu>();
+        for (Long menuId : userMenuEditDto.getMenuIds())
+        {
+            SysUserMenu rm = new SysUserMenu();
+            rm.setUserId(userMenuEditDto.getUserId());
+            rm.setMenuId(menuId);
+            rm.setMenuFrom(1);
+            list.add(rm);
+        }
+        for(Long menuId : userMenuEditDto.getStaffMenuIds()){
+            SysUserMenu rm = new SysUserMenu();
+            rm.setUserId(userMenuEditDto.getUserId());
+            rm.setMenuId(menuId);
+            rm.setMenuFrom(2);
+            list.add(rm);
+        }
+        if (list.size() > 0)
+        {
+            rows = userMenuMapper.batchUserMenu(list);
+        }
+    }
+
+    /**
+     * @description
+     * @author  jqs
+     * @date    2023/6/26 10:36
+     * @param sysUser
+     * @return  void
+     */
+    @Override
+    public void updateOnlyUser(SysUser sysUser){
+        userMapper.updateUser(sysUser);
+    }
+
+    /**
+     * @description
+     * @author  jqs
+     * @date    2023/7/5 21:24
+     * @param mgtFrozenMemberDto
+     * @return  void
+     */
+    @Override
+    public void frozenUser(MgtFrozenMemberDto mgtFrozenMemberDto){
+        Long userId = mgtFrozenMemberDto.getId();
+        SysUser sysUser = this.selectUserById(userId);
+        if(mgtFrozenMemberDto.getFrozenFlag()==1){
+            sysUser.setStatus("1");
+        }else{
+            sysUser.setStatus("0");
+        }
+        userMapper.updateUser(sysUser);
+    }
+
+
+    /**
+     * 获取当前员工权限范围内的员工id
+     * @return
+     */
+    @Override
+    public List<Long> getScopeOfAuthorityUserId() {
+        List<Long> userIds = new ArrayList<>();
+        Long userId = SecurityUtils.getUserId();
+        SysUser user = this.baseMapper.selectUserById(userId);
+        String dataScope = user.getDataScope();
+        //没有配置默认查询自己
+        if(!SecurityUtils.isAdmin(userId) && StringUtils.isEmpty(dataScope)){
+            userIds.add(userId);
+        }
+        //管理员或者全部权限
+        if(SecurityUtils.isAdmin(userId) || (StringUtils.isNotEmpty(dataScope) && "1".equals(dataScope))){
+            return null;
+        }
+        //部分权限
+        if(StringUtils.isNotEmpty(dataScope) && "3".equals(dataScope)){
+            SysUser user1 = new SysUser();
+            user1.setUserType("00");
+            user1.setStatus("0");
+            user1.setDeptId(user.getDeptId());
+            List<SysUser> list = this.baseMapper.selectUserList(user1);
+            userIds.addAll(list.stream().map(SysUser::getUserId).collect(Collectors.toList()));
+        }
+        //个人权限
+        if(StringUtils.isNotEmpty(dataScope) && "5".equals(dataScope)){
+            userIds.add(userId);
+        }
+        return userIds;
+    }
 }

--
Gitblit v1.7.1