Pu Zhibing
2024-09-26 22a9b4588c8eeefdb9e16fda9125af8c0b846b49
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java
@@ -1,12 +1,9 @@
package com.ruoyi.system.controller;
import java.io.IOException;
import java.util.*;
import java.util.stream.Collectors;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import com.alibaba.nacos.shaded.org.checkerframework.checker.units.qual.A;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.chargingPile.api.feignClient.SiteClient;
@@ -16,31 +13,21 @@
import com.ruoyi.other.api.domain.TUserSite;
import com.ruoyi.other.api.feignClient.RoleSiteClient;
import com.ruoyi.other.api.feignClient.UserSiteClient;
import com.ruoyi.system.domain.dto.IndexDto;
import com.ruoyi.system.domain.vo.UserRoleVO;
import com.ruoyi.system.api.query.ChangeUserQuery;
import com.ruoyi.system.api.model.*;
import com.ruoyi.system.domain.SysUserRole;
import com.ruoyi.system.domain.dto.AddCompanyUserDto;
import com.ruoyi.system.domain.vo.CompanyUserVo;
import com.ruoyi.system.domain.vo.TCompanyToUserVo;
import com.ruoyi.system.query.GetSysUserList;
import com.ruoyi.system.query.ShopUserStart;
import com.ruoyi.system.service.*;
import io.seata.core.context.RootContext;
import io.seata.spring.annotation.GlobalTransactional;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.ArrayUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import com.ruoyi.common.core.domain.R;
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.log.annotation.Log;
@@ -110,6 +97,15 @@
    }
    /**
     * 获取用户选择列表
     */
    @PostMapping("/getChangeUserList")
    @ApiOperation(value = "获取用户选择列表", tags = {"管理后台-获取用户选择列表"})
    public AjaxResult<PageInfo<SysUser>> getChangeUserList(@RequestBody ChangeUserQuery query) {
        return AjaxResult.success(userService.getChangeUserList(query));
    }
    /**
     * 新增用户
     */
    @Log(title = "用户管理", businessType = BusinessType.INSERT)
@@ -164,6 +160,9 @@
    public AjaxResult<List<String>> getRoleSiteName(@PathVariable Integer roleId){
        List<Integer> ids = roleSiteClient.getSiteIds(roleId.longValue()).getData();
        List<Site> data = siteClient.getSiteByIds(ids).getData();
        if(null == data){
            return AjaxResult.success(new ArrayList<>());
        }
        List<String> siteNames = data.stream().map(Site::getName).collect(Collectors.toList());
        return AjaxResult.success(siteNames);
    }
@@ -241,7 +240,6 @@
        if (user.getPhonenumber() != null) {
            user.setUserName(user.getPhonenumber());
        }
        user.setPassword(null);
        user.setUpdateBy(SecurityUtils.getUsername());
        user.setUpdateTime(new Date());
        userService.updateUser(user);
@@ -279,17 +277,17 @@
    @PostMapping("/shopUserStart")
    @ApiOperation(value = "账号管理--禁用/启用", tags = {"管理后台-系统用户管理"})
    public AjaxResult shopUserStart(@RequestParam("userId") Long userId, @RequestParam("remark") String remark) {
        if (userId == null) {
    public AjaxResult shopUserStart(@RequestBody ShopUserStart shopUserStart) {
        if (shopUserStart.getUserId() == null) {
            return AjaxResult.error("userId不能为空");
        }
        SysUser sysUser = userService.selectUserById(userId);
        SysUser sysUser = userService.selectUserById(shopUserStart.getUserId());
        if (sysUser.getStatus().equals("0")) {
            sysUser.setStatus("1");
            sysUser.setRemark(remark);
            sysUser.setForbiddenRemark(shopUserStart.getRemark());
        } else {
            sysUser.setStatus("0");
            sysUser.setRemark("");
            sysUser.setForbiddenRemark("");
        }
        return toAjax(userService.updateUser(sysUser));
    }
@@ -373,11 +371,13 @@
            sysUser.setUpdateBy(SecurityUtils.getUsername());
            sysUser.setUpdateTime(new Date());
            userService.updateUser(sysUser);
            userRoleService.deleteSysUserRoleByUserId(sysUser.getUserId());
            SysUserRole sysUserRole = new SysUserRole();
            sysUserRole.setRoleId(sysUser.getRoleId());
            sysUserRole.setUserId(sysUser.getUserId());
            userRoleService.insertSysUserRole(sysUserRole);
            if(null != sysUser.getRoleId()){
                userRoleService.deleteSysUserRoleByUserId(sysUser.getUserId());
                SysUserRole sysUserRole = new SysUserRole();
                sysUserRole.setRoleId(sysUser.getRoleId());
                sysUserRole.setUserId(sysUser.getUserId());
                userRoleService.insertSysUserRole(sysUserRole);
            }
            return R.ok(true);
        } catch (Exception e) {
            e.printStackTrace();
@@ -525,7 +525,6 @@
    /**
     * 重置密码
     */
    @RequiresPermissions("system:user:edit")
    @Log(title = "用户管理", businessType = BusinessType.UPDATE)
    @PutMapping("/resetPwd")
    @ApiOperation(value = "重置密码", tags = {"管理后台-系统用户管理"})
@@ -540,7 +539,6 @@
    /**
     * 状态修改
     */
    @RequiresPermissions("system:user:edit")
    @Log(title = "用户管理", businessType = BusinessType.UPDATE)
    @PutMapping("/changeStatus")
    public AjaxResult changeStatus(@RequestBody SysUser user) {
@@ -553,7 +551,6 @@
    /**
     * 根据用户编号获取授权角色
     */
    @RequiresPermissions("system:user:query")
    @GetMapping("/authRole/{userId}")
    public AjaxResult authRole(@PathVariable("userId") Long userId) {
        AjaxResult ajax = AjaxResult.success();
@@ -567,7 +564,6 @@
    /**
     * 用户授权角色
     */
    @RequiresPermissions("system:user:edit")
    @Log(title = "用户管理", businessType = BusinessType.GRANT)
    @PutMapping("/authRole")
    public AjaxResult insertAuthRole(Long userId, Long[] roleIds) {
@@ -579,7 +575,6 @@
    /**
     * 获取部门树列表
     */
    @RequiresPermissions("system:user:list")
    @GetMapping("/deptTree")
    public AjaxResult deptTree(SysDept dept) {
        return success(deptService.selectDeptTreeList(dept));
@@ -595,7 +590,7 @@
     * @param userId
     * @return
     */
    @GetMapping("/queryRoleByUserId/{userId}")
    @PostMapping("/queryRoleByUserId/{userId}")
    public R<SysRole> queryRoleByUserId(@PathVariable("userId") Long userId){
        SysUserRole one = sysUserRoleService.getOne(Wrappers.lambdaQuery(SysUserRole.class)
                .eq(SysUserRole::getUserId, userId)
@@ -611,7 +606,7 @@
    }
    @GetMapping("/queryRoleByRoleId/{roleId}")
    @PostMapping("/queryRoleByRoleId/{roleId}")
    public R<SysRole> queryRoleByRoleId(@PathVariable("roleId") Long roleId){
        return R.ok( roleService.getOne(Wrappers.lambdaQuery(SysRole.class)
                .eq(SysRole::getRoleId, roleId)
@@ -684,8 +679,10 @@
    @ResponseBody
    @PostMapping("/addSysUser")
    @Transactional(rollbackFor = Exception.class)
    public R addSysUser(@RequestBody SysUser user){
        user.setUserName(user.getPhonenumber());
    public R addSysUser(@RequestBody SysUser user) {
        if(StringUtils.isEmpty(user.getUserName())){
            user.setUserName(user.getPhonenumber());
        }
        if(!org.springframework.util.StringUtils.hasLength(user.getNickName())){
            user.setNickName(user.getPhonenumber());
        }
@@ -697,7 +694,9 @@
        }
        user.setCreateBy(SecurityUtils.getUsername());
        user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
        user.setRoleType(1);
        if(null == user.getRoleType()){
            user.setRoleType(1);
        }
        userService.insertUser(user);
        SysUserRole sysUserRole = new SysUserRole();
        sysUserRole.setRoleId(user.getRoleId());
@@ -715,4 +714,11 @@
        userService.resetPwd(user);
        return R.ok();
    }
    @ResponseBody
    @PostMapping("/getSysUserById")
    public SysUser getSysUserById(@RequestParam("userId") Long userId){
        return userService.getById(userId);
    }
}