liujie
2026-06-09 c96fbe6b0aeb413a17c429133ee6d81d138144b9
xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/SysUserController.java
@@ -25,6 +25,8 @@
import com.xiaopeng.common.log.enums.AdminOperationType;
import com.xiaopeng.common.log.enums.BusinessType;
import com.xiaopeng.common.redis.service.RedisService;
import com.xiaopeng.common.security.annotation.Logical;
import com.xiaopeng.common.security.annotation.RequiresPermissions;
import com.xiaopeng.common.security.service.TokenService;
import com.xiaopeng.common.security.utils.SecurityUtils;
import io.swagger.annotations.ApiOperation;
@@ -87,6 +89,7 @@
    /**
     * 获取用户列表
     */
    @RequiresPermissions(value = {"sysUser:list"}, logical = Logical.OR)
    @GetMapping("/api/v1/sys-user/pageList")
    @ApiOperation(value = "账号管理分页列表", tags = {"管理后台-账号管理"})
    public AjaxResult<PageInfo<SysUser>> list(final SysUserListQuery sysUserListQuery) {
@@ -102,6 +105,9 @@
        });
        return AjaxResult.success(page);
    }
    /**
     * 获取用户不分页列表
     */
@@ -124,7 +130,7 @@
    /**
     * 新增用户
     */
    @Log(title = "帐号管理", businessType = BusinessType.INSERT)
    @RequiresPermissions(value = {"sysUser:add"}, logical = Logical.OR)
    @PostMapping("/api/v1/sys-user/add")
    @ApiOperation(value = "添加帐号", tags = {"管理后台-帐号管理"})
    @AdminOperationLog(
@@ -142,7 +148,7 @@
        }
        user.setUniqueNumber(generateUniqueNumber());
        user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
        //TODO 手机号脱敏存储
        user.setPhoneNumber(SensitiveDataCryptoUtil.encrypt(user.getPhoneNumber()));
        userService.insertUser(user);
        SysUserRole sysUserRole = new SysUserRole();
        sysUserRole.setRoleId(user.getRoleId());
@@ -192,12 +198,20 @@
        }
        return success();
    }
    /**
     * 根据用户编号获取详细信息
     */
    @ApiOperation(value = "获取用户详情", tags = {"管理后台-系统用户管理"})
    @GetMapping("/api/v1/getSysUserInfo")
    public AjaxResult getSysUserInfo() {
        LoginUser loginUser = tokenService.getLoginUser();
        return AjaxResult.success(loginUser);
    }
    
    /**
     * 根据用户编号获取详细信息
     */
@@ -226,7 +240,7 @@
    /**
     * 修改用户
     */
    @Log(title = "帐号管理", businessType = BusinessType.UPDATE)
    @RequiresPermissions(value = {"sysUser:edit"}, logical = Logical.OR)
    @PutMapping("/api/v1/sys-user/edit")
    @ApiOperation(value = "编辑帐号", tags = {"管理后台-帐号管理"})
    @AdminOperationLog(
@@ -254,6 +268,9 @@
        if (user.getPassword() != null && !user.getPassword().isEmpty()) {
            user.setPassword(null);
        }
        user.setPhoneNumber(SensitiveDataCryptoUtil.encrypt(user.getPhoneNumber()));
        userService.updateById(user);
        
        //删除旧的角色数据,添加新的角色
@@ -268,10 +285,12 @@
    @Resource
    private TokenService tokenService;
    /**
     * 删除用户
     */
    @Log(title = "帐号管理", businessType = BusinessType.DELETE)
    @RequiresPermissions(value = {"sysUser:delete"}, logical = Logical.OR)
    @DeleteMapping("/api/v1/sys-user/{userIds}")
    @ApiOperation(value = "删除账号", tags = {"管理后台-帐号管理"})
    @AdminOperationLog(
@@ -287,9 +306,10 @@
        return toAjax(userService.deleteUserByIds(userIds));
    }
    @RequiresPermissions(value = {"sysUser:disable"}, logical = Logical.OR)
    @PostMapping("/api/v1/sys-user/switchStatus/{id}")
    @ApiOperation(value = "账号管理--禁用/启用", tags = {"管理后台-帐号管理"})
    @AdminOperationLog(
@@ -371,7 +391,7 @@
    /**
     * 重置密码
     */
    @Log(title = "帐号管理", businessType = BusinessType.UPDATE)
    @RequiresPermissions(value = {"sysUser:resetPassword"}, logical = Logical.OR)
    @PutMapping("/api/v1/sys-user/rePassword")
    @ApiOperation(value = "重置密码", tags = {"管理后台-帐号管理"})
    @AdminOperationLog(
@@ -393,7 +413,6 @@
    /**
     * 状态修改
     */
    @Log(title = "用户管理", businessType = BusinessType.UPDATE)
    @PutMapping("/changeStatus")
    public AjaxResult changeStatus(@RequestBody SysUser user) {
        userService.checkUserAllowed(user);
@@ -418,7 +437,6 @@
    /**
     * 用户授权角色
     */
    @Log(title = "用户管理", businessType = BusinessType.GRANT)
    @PutMapping("/authRole")
    public AjaxResult insertAuthRole(Long userId, Long[] roleIds) {
        userService.checkUserDataScope(userId);