From 981aacc8d5de2638a0f5b3eb2585e64cfaf2807d Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期六, 12 七月 2025 18:01:19 +0800 Subject: [PATCH] 修改bug --- ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/staff/SysStaffServiceImpl.java | 39 ++++++++++++++++++++++++++++----------- 1 files changed, 28 insertions(+), 11 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/staff/SysStaffServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/staff/SysStaffServiceImpl.java index c69d991..eb0be13 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/staff/SysStaffServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/staff/SysStaffServiceImpl.java @@ -89,8 +89,8 @@ * @return List<MgtDeptStaffListVo> */ @Override - public List<MgtDeptStaffListVo> listMgtDeptStaff(){ - return sysStaffMapper.listMgtDeptStaff(); + public List<MgtDeptStaffListVo> listMgtDeptStaff(Long deptId,Long userId, String name){ + return sysStaffMapper.listMgtDeptStaff(deptId,userId, name); } /** @@ -102,16 +102,31 @@ */ @Override public List<MgtDeptStaffListVo>listMgtDeptStaffByPermission(Long userId){ - SysUser sysUser = sysUserService.selectUserById(userId); - String dataScope = sysUser.getDataScope(); List<MgtDeptStaffListVo> deptStaffListVoList; - if(dataScope!=null&&dataScope.equals("4")){ - deptStaffListVoList = sysStaffMapper.listMgtDeptStaffByDept(sysUser.getDeptId(),null); - }else if(dataScope!=null&&dataScope.equals("5")){ - deptStaffListVoList = sysStaffMapper.listMgtDeptStaffByDept(sysUser.getDeptId(),sysUser.getUserId()); - }else{ - deptStaffListVoList = sysStaffMapper.listMgtDeptStaff(); + // 获取当前登陆人的可视权限 + SysUser sysUser = sysUserService.selectUserById(userId); + // 如果当前登陆人权限是查看部门数据 + Long deptId = null; + // 如果当前登陆人是查看个人数据 + Long userId1 = null; + if (sysUser!=null){ + String dataScope = sysUser.getDataScope(); + if (!sysUser.getUserName().equals("admin")){ + if (org.springframework.util.StringUtils.hasLength(dataScope)){ + switch (dataScope){ + case "3": + // 本部门数据 查询当前登陆人属于哪个部门 查询这个部门下所有员工关联的所有店铺 + deptId = sysUser.getDeptId(); + break; + case "5": + // 仅个人数据 查询当前登陆人关联店铺下的用户 + userId1 = sysUser.getUserId(); + break; + } + } + } } + deptStaffListVoList = sysStaffMapper.listMgtDeptStaff(deptId,userId1, null); return deptStaffListVoList; } @@ -161,6 +176,7 @@ sysUser.setNickName(mgtStaffEditDto.getStaffName()); sysUser.setAvatar(mgtStaffEditDto.getStaffAvatar()); sysUser.setEmail(mgtStaffEditDto.getStaffEmail()); + sysUser.setDeptId(mgtStaffEditDto.getDeptId()); sysUserService.updateOnlyUser(sysUser); }else{ if(sysStaffSame!=null){ @@ -200,7 +216,8 @@ mgtShopStaffEditDto.setStaffAvatar(sysStaff.getStaffAvatar()); remoteShopService.editMgtShopStaff(mgtShopStaffEditDto); //如果wxUserId和wxDeptId不为空 同步到企业微信 - if(mgtStaffEditDto.getWxUserId()!=null&&sysDept.getWxDeptId()!=null){ + if(sysStaff.getWxUserId()!=null&&sysDept.getWxDeptId()!=null){ + log.debug("同步员工到企业微信:"+mgtStaffEditDto.getStaffName()); MgtWxCPStaffDto mgtWxCPStaffDto = new MgtWxCPStaffDto(); mgtWxCPStaffDto.setWxDeptId(sysDept.getWxDeptId()); mgtWxCPStaffDto.setWxUserId(mgtStaffEditDto.getWxUserId()); -- Gitblit v1.7.1