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/controller/sys/SysUserController.java | 114 +++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 98 insertions(+), 16 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysUserController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysUserController.java index d7c5674..54c0ff6 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysUserController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysUserController.java @@ -1,6 +1,7 @@ package com.ruoyi.system.controller.sys; import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.core.exception.ServiceException; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.core.utils.poi.ExcelUtil; import com.ruoyi.common.core.web.controller.BaseController; @@ -11,24 +12,43 @@ import com.ruoyi.common.security.annotation.InnerAuth; import com.ruoyi.common.security.annotation.RequiresPermissions; import com.ruoyi.common.security.utils.SecurityUtils; +import com.ruoyi.system.api.constant.AppErrorConstant; import com.ruoyi.system.api.domain.dto.AppEditUserDto; +import com.ruoyi.system.api.domain.dto.MgtFrozenMemberDto; import com.ruoyi.system.api.domain.poji.sys.SysDept; import com.ruoyi.system.api.domain.poji.sys.SysRole; +import com.ruoyi.system.api.domain.poji.sys.SysStaff; import com.ruoyi.system.api.domain.poji.sys.SysUser; import com.ruoyi.system.api.model.LoginUser; +import com.ruoyi.system.api.model.QwH5LoginVo; +import com.ruoyi.system.api.model.QwUserDetailDto; import com.ruoyi.system.domain.dto.UserMenuEditDto; -import com.ruoyi.system.service.sys.*; +import com.ruoyi.system.service.staff.SysStaffService; +import com.ruoyi.system.service.sys.ISysConfigService; +import com.ruoyi.system.service.sys.ISysDeptService; +import com.ruoyi.system.service.sys.ISysPermissionService; +import com.ruoyi.system.service.sys.ISysPostService; +import com.ruoyi.system.service.sys.ISysRoleService; +import com.ruoyi.system.service.sys.ISysUserService; import io.swagger.annotations.ApiOperation; import org.apache.commons.lang3.ArrayUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletResponse; import java.io.IOException; -import java.util.ArrayList; +import java.util.Arrays; import java.util.List; +import java.util.Optional; import java.util.Set; import java.util.stream.Collectors; @@ -59,24 +79,44 @@ @Autowired private ISysConfigService configService; + @Autowired + private SysStaffService sysStaffService; + /** * 根据部门获取所有员工id + * @param userId + * @return + */ + @GetMapping("/getUserIdsByDept/{userId}") + public R<List<Long>> getUserIdsByDept(@PathVariable("userId") Long userId) + { + SysUser loginSysUser = userService.selectUserById(userId); + SysUser querySysUser = new SysUser(); + querySysUser.setDelFlag("0"); + querySysUser.setDeptId(loginSysUser.getDeptId()); + List<SysUser> userList = userService.selectUserList(querySysUser); + List<Long> userIds = userList.stream().map(sysUser->{ + return sysUser.getUserId(); + }).collect(Collectors.toList()); + return R.ok(userIds); + } + + + /** + * 根据部门id获取用户列表 * @param deptId * @return */ - @GetMapping("/dept/{deptId}") - public R<List<Long>> getUserIds(@PathVariable("deptId") Long deptId) - { + @PostMapping("/getUsersByDeptId") + R<List<SysUser>> getUsersByDeptId(@RequestBody Long deptId){ SysUser sysUser = new SysUser(); sysUser.setDeptId(deptId); - List<SysUser> userList = userService.selectUserList(sysUser); - List<Long> userIds = new ArrayList<>(); - for (int i = 0; i < userList.size(); i++) { - userIds.add(userList.get(i).getUserId()); - } - return R.ok(userIds); + List<SysUser> sysUsers = userService.selectUserList(sysUser); + return R.ok(sysUsers); } + + /** * 获取用户列表 @@ -269,6 +309,9 @@ { return error("当前用户不能删除"); } + if(Arrays.stream(userIds).anyMatch((element->element.equals(1L)))){ + throw new ServiceException("禁止删除admin"); + } return toAjax(userService.deleteUserByIds(userIds)); } @@ -332,7 +375,6 @@ /** * 获取部门树列表 */ - @RequiresPermissions("system:user:list") @GetMapping("/deptTree") public AjaxResult deptTree(SysDept dept) { @@ -407,13 +449,53 @@ * @description 冻结用户 * @author jqs * @date 2023/6/29 17:20 - * @param userId + * @param mgtFrozenMemberDto * @return R<Activeness> */ @PostMapping("/frozenUser") - public R frozenUser(@RequestBody Long userId) + public R frozenUser(@RequestBody MgtFrozenMemberDto mgtFrozenMemberDto) { - userService.frozenUser(userId); + if(mgtFrozenMemberDto.getId()==1){ + throw new ServiceException("禁止删除admin"); + } + userService.frozenUser(mgtFrozenMemberDto); return R.ok(); } + + /** + * @description 员工端登录 + * @author jqs + * @date 2023/7/14 10:04 + * @param qwUserDetail + * @return R<QwH5LoginVo> + */ + @PostMapping("/qwH5StaffLogin") + @ApiOperation(value = "员工端登录") + public R<QwH5LoginVo> qwH5StaffLogin(@RequestBody QwUserDetailDto qwUserDetail) + { + String mobile = qwUserDetail.getMobile(); + SysStaff sysStaff = sysStaffService.getByMobile(mobile); + if(sysStaff==null){ + throw new ServiceException(AppErrorConstant.USER_NO_SYSTEM); + } + Long userId = sysStaff.getUserId(); + SysUser sysUser = userService.selectUserById(userId); + Optional.ofNullable(sysUser).orElseThrow(() -> new ServiceException("登录失败,未查询到用户")); + // 构造登录返回信息 + QwH5LoginVo qwH5LoginVo = new QwH5LoginVo(); + qwH5LoginVo.setUserid(qwUserDetail.getUserid()); + qwH5LoginVo.setMobile(qwUserDetail.getMobile()); + qwH5LoginVo.setSysUser(sysUser); + return R.ok(qwH5LoginVo); + } + + + /** + * 获取当前用户权限范围内的员工id + * @return + */ + @PostMapping("/getScopeOfAuthorityUserId") + public List<Long> getScopeOfAuthorityUserId(){ + return userService.getScopeOfAuthorityUserId(); + } } -- Gitblit v1.7.1