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/controller/sys/SysUserController.java | 242 +++++++++++++++++++++++++++++++++++++++---------
1 files changed, 197 insertions(+), 45 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 b9950de..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,14 +1,35 @@
package com.ruoyi.system.controller.sys;
-import java.io.IOException;
-import java.util.List;
-import java.util.Set;
-import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletResponse;
-
-import com.ruoyi.system.api.model.AppMiniLoginDto;
-import com.ruoyi.system.api.model.AppMiniLoginVo;
-import com.ruoyi.system.service.member.MemberService;
+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;
+import com.ruoyi.common.core.web.domain.AjaxResult;
+import com.ruoyi.common.core.web.page.TableDataInfo;
+import com.ruoyi.common.log.annotation.Log;
+import com.ruoyi.common.log.enums.BusinessType;
+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.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;
@@ -22,32 +43,19 @@
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
-import com.ruoyi.common.core.domain.R;
-import com.ruoyi.common.core.utils.StringUtils;
-import com.ruoyi.common.core.utils.poi.ExcelUtil;
-import com.ruoyi.common.core.web.controller.BaseController;
-import com.ruoyi.common.core.web.domain.AjaxResult;
-import com.ruoyi.common.core.web.page.TableDataInfo;
-import com.ruoyi.common.log.annotation.Log;
-import com.ruoyi.common.log.enums.BusinessType;
-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.domain.SysDept;
-import com.ruoyi.system.api.domain.SysRole;
-import com.ruoyi.system.api.domain.SysUser;
-import com.ruoyi.system.api.model.LoginUser;
-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 javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Optional;
+import java.util.Set;
+import java.util.stream.Collectors;
/**
* 用户信息
- *
- * @author ruoyi
+ *
+ * @author jqs
*/
@RestController
@RequestMapping("/user")
@@ -72,7 +80,43 @@
private ISysConfigService configService;
@Autowired
- private MemberService memberService;
+ 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
+ */
+ @PostMapping("/getUsersByDeptId")
+ R<List<SysUser>> getUsersByDeptId(@RequestBody Long deptId){
+ SysUser sysUser = new SysUser();
+ sysUser.setDeptId(deptId);
+ List<SysUser> sysUsers = userService.selectUserList(sysUser);
+ return R.ok(sysUsers);
+ }
+
+
/**
* 获取用户列表
@@ -154,12 +198,15 @@
{
return R.fail("保存用户'" + username + "'失败,注册账号已存在");
}
- return R.ok(userService.registerUser(sysUser));
+ return R.ok(userService.registerUser(sysUser)!=null);
}
+
+
+
/**
* 获取用户信息
- *
+ *
* @return 用户信息
*/
@GetMapping("getInfo")
@@ -262,6 +309,9 @@
{
return error("当前用户不能删除");
}
+ if(Arrays.stream(userIds).anyMatch((element->element.equals(1L)))){
+ throw new ServiceException("禁止删除admin");
+ }
return toAjax(userService.deleteUserByIds(userIds));
}
@@ -325,25 +375,127 @@
/**
* 获取部门树列表
*/
- @RequiresPermissions("system:user:list")
@GetMapping("/deptTree")
public AjaxResult deptTree(SysDept dept)
{
return success(deptService.selectDeptTreeList(dept));
}
+
/**
- * 小程序登录
+ * @description: TODO
+ * @author jqs34
+ * @date 2023/4/30 15:36
+ * @version 1.0
*/
- @InnerAuth
- @GetMapping("/miniLogin")
- @ApiOperation("小程序登录")
- public R<AppMiniLoginVo> getMemberByCode(@RequestBody AppMiniLoginDto appMiniLoginDto)
+ @PostMapping("/getSysUser")
+ public R<SysUser> getSysUser(@RequestBody Long userId){
+ logger.info("userId"+userId);
+ SysUser sysUser = userService.selectUserById(userId);
+ logger.info("sysUser"+sysUser.toString());
+ return R.ok(sysUser);
+ }
+
+ /**
+ * @description: 注册新用户
+ * @author jqs34
+ * @date 2023/4/30 15:32
+ * @version 1.0
+ */
+ @PostMapping("/registerUser")
+ public R<SysUser> registerUser(@RequestBody SysUser sysUser){
+ sysUser = userService.registerUser(sysUser);
+ return R.ok(sysUser);
+ }
+
+ @PostMapping("/getSysUserByMobile")
+ public R<SysUser> getSysUserByMobile(@RequestBody String mobile){
+ SysUser sysUser = userService.getSysUserByMobile(mobile);
+ return R.ok(sysUser);
+ }
+
+ /**
+ * @description: 更新用户手机
+ * @author jqs34
+ * @date 2023/4/30 15:32
+ * @version 1.0
+ */
+ @PostMapping("/updateUserMobile")
+ public R updateUserMobile(@RequestBody SysUser sysUser){
+ userService.updateUserMobile(sysUser);
+ return R.ok();
+ }
+
+ /**
+ *
+ * @param appEditUserDto
+ * @return
+ */
+ @PostMapping("/editUserInfo")
+ public R editUserInfo(@RequestBody AppEditUserDto appEditUserDto){
+ userService.editUserInfo(appEditUserDto);
+ return R.ok();
+ }
+
+ @ApiOperation(value = "修改用户权限")
+ @Log(title = "用户管理", businessType = BusinessType.UPDATE,operContent = "修改用户权限")
+ @PostMapping("/editUserMenu")
+ public R editUserMenu(@RequestBody UserMenuEditDto userMenuEditDto){
+ userService.editUserMenu(userMenuEditDto);
+ return R.ok();
+ }
+
+ /**
+ * @description 冻结用户
+ * @author jqs
+ * @date 2023/6/29 17:20
+ * @param mgtFrozenMemberDto
+ * @return R<Activeness>
+ */
+ @PostMapping("/frozenUser")
+ public R frozenUser(@RequestBody MgtFrozenMemberDto mgtFrozenMemberDto)
{
- AppMiniLoginVo appMiniLoginVo = memberService.getMemberByCode(appMiniLoginDto);
- if(appMiniLoginVo ==null){
- return R.fail("登录失败!");
+ if(mgtFrozenMemberDto.getId()==1){
+ throw new ServiceException("禁止删除admin");
}
- return R.ok(appMiniLoginVo);
+ 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