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 |  197 +++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 165 insertions(+), 32 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 eb87b94..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,46 +1,41 @@
 package com.ruoyi.system.service.impl.sys;
 
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.stream.Collectors;
-import javax.annotation.Resource;
-import javax.validation.Validator;
-
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ruoyi.system.api.domain.dto.AppEditUserDto;
-import com.ruoyi.system.api.domain.poji.config.SysTag;
-import com.ruoyi.system.api.domain.poji.member.Member;
-import com.ruoyi.system.domain.pojo.coupon.Coupon;
-import com.ruoyi.system.mapper.coupon.CouponMapper;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.CollectionUtils;
 import com.ruoyi.common.core.constant.UserConstants;
 import com.ruoyi.common.core.exception.ServiceException;
+import com.ruoyi.common.core.utils.DateUtils;
 import com.ruoyi.common.core.utils.SpringUtils;
 import com.ruoyi.common.core.utils.StringUtils;
 import com.ruoyi.common.core.utils.bean.BeanValidators;
 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.SysPostMapper;
-import com.ruoyi.system.mapper.sys.SysRoleMapper;
-import com.ruoyi.system.mapper.sys.SysUserMapper;
-import com.ruoyi.system.mapper.sys.SysUserPostMapper;
-import com.ruoyi.system.mapper.sys.SysUserRoleMapper;
+import com.ruoyi.system.mapper.sys.*;
 import com.ruoyi.system.service.sys.ISysConfigService;
 import com.ruoyi.system.service.sys.ISysUserService;
-import org.springframework.util.ObjectUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
+
+import javax.annotation.Resource;
+import javax.validation.Validator;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * 用户 业务层处理
@@ -72,6 +67,11 @@
 
     @Resource
     protected Validator validator;
+
+    @Resource
+    protected SysUserMenuMapper userMenuMapper;
+
+
 
     /**
      * 根据条件分页查询用户列表
@@ -609,28 +609,161 @@
         String editValue = appEditUserDto.getEditValue();
         switch (editType){
             case 1:
-                sysUser.setNickName(editValue);
-                sysUser.setUpdateTime(new Date());
-                sysUser.setUpdateBy(String.valueOf(appEditUserDto.getUserId()));
-                userMapper.updateUser(sysUser);
                 break;
             case 2:
                 sysUser.setAvatar(editValue);
-                sysUser.setUpdateTime(new Date());
+                sysUser.setUpdateTime(DateUtils.getNowDate());
                 sysUser.setUpdateBy(String.valueOf(appEditUserDto.getUserId()));
                 userMapper.updateUser(sysUser);
                 break;
             case 3:
                 sysUser.setSex(editValue);
-                sysUser.setUpdateTime(new Date());
+                sysUser.setUpdateTime(DateUtils.getNowDate());
                 sysUser.setUpdateBy(String.valueOf(appEditUserDto.getUserId()));
                 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;
         }
 
     }
+
+
+    /**
+     * @description 获取部门用户
+     * @author  jqs
+     * @date    2023/6/21 16:00
+     * @param userIdByDept
+     * @return  MgtUserIdByDept
+     */
+    @Override
+    public MgtUserIdByDept getUserIdByDept(MgtUserIdByDept userIdByDept){
+        List<Long> userIdList = userMapper.getUserIdByDept(userIdByDept);
+        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