Pu Zhibing
2025-04-10 eaa4e5993195fc8f01daacfc827f7f350f28962e
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java
@@ -130,6 +130,8 @@
        if(!org.springframework.util.StringUtils.hasLength(user.getNickName())){
            user.setNickName(user.getPhonenumber());
        }
        user.setRoleType(sysUser1.getRoleType());
        user.setObjectId(sysUser1.getObjectId());
        if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user)) {
            return error("手机号已开通账号");
        }
@@ -214,8 +216,12 @@
    @GetMapping("/verifyUserNameRepeat/{username}")
    @ApiOperation(value = "校验账号是否重复", tags = {"管理后台-账号管理"})
    public AjaxResult verifyUserNameRepeat(@PathVariable String username){
        Long userid = tokenService.getLoginUser().getUserid();
        SysUser sysUser1 = userService.getById(userid);
        SysUser user = new SysUser();
        user.setUserName(username);
        user.setRoleType(sysUser1.getRoleType());
        user.setObjectId(sysUser1.getObjectId());
        if (StringUtils.isNotEmpty(username) && !userService.checkUserNameUnique(user)) {
            return error("账号不可重复");
        }
@@ -266,21 +272,18 @@
    @PutMapping("/update")
    @ApiOperation(value = "编辑系统用户", tags = {"管理后台-账号管理", "门店后台-部门管理"})
    public AjaxResult edit(@Validated @RequestBody SysUser user) {
        Long userid = tokenService.getLoginUser().getUserid();
        SysUser sysUser1 = userService.getById(userid);
        user.setUserName(user.getPhonenumber());
        if(!org.springframework.util.StringUtils.hasLength(user.getNickName())){
            user.setNickName(user.getPhonenumber());
        }
        R<Integer> admin = this.isAdmin(user.getUserId());
        Integer data = admin.getData();
        if(data == null || data != 1){
            SysUserRole one = sysUserRoleService.getOne(new LambdaQueryWrapper<SysUserRole>().eq(SysUserRole::getUserId, user.getUserId()));
            one.setRoleId(user.getRoleId());
            sysUserRoleService.updateSysUserRole(one);
        }
        userService.checkUserAllowed(user);
        userService.checkUserDataScope(user.getUserId());
        SysUser sysUser = userService.getOne(Wrappers.lambdaQuery(SysUser.class)
                .eq(SysUser::getPhonenumber, user.getPhonenumber())
                        .eq(SysUser::getRoleType, sysUser1.getRoleType())
                        .eq(SysUser::getObjectId, sysUser1.getObjectId())
                .eq(SysUser::getDelFlag,0)
                .last("LIMIT 1"));
@@ -289,6 +292,8 @@
        }
        sysUser = userService.getOne(Wrappers.lambdaQuery(SysUser.class)
                .eq(SysUser::getUserName, user.getUserName())
                .eq(SysUser::getRoleType, sysUser1.getRoleType())
                .eq(SysUser::getObjectId, sysUser1.getObjectId())
                .eq(SysUser::getDelFlag,0)
                .last("LIMIT 1"));
        if (StringUtils.isNotEmpty(user.getUserName()) && (Objects.nonNull(sysUser) && !user.getUserId().equals(sysUser.getUserId()) )) {
@@ -307,10 +312,18 @@
        user.setUpdateBy(SecurityUtils.getUsername());
        user.setUpdateTime(new Date());
        userService.updateUser(user);
        //修改角色数据
        SysUserRole userRole = sysUserRoleService.getOne(new LambdaQueryWrapper<SysUserRole>().eq(SysUserRole::getUserId, user.getUserId()));
        userRole.setRoleId(user.getRoleId());
        sysUserRoleService.updateSysUserRole(userRole);
        //修改角色数据
        user = userService.getById(user.getUserId());
        //添加门店员工关系数据
        if(2 == user.getRoleType()){
            UserShop one = userShopService.getOne(new LambdaQueryWrapper<UserShop>().eq(UserShop::getUserId, user.getUserId()).eq(UserShop::getShopId, user.getObjectId()));
            UserShop one = userShopService.getOne(new LambdaQueryWrapper<UserShop>().eq(UserShop::getUserId, user.getUserId())
                    .eq(UserShop::getShopId, user.getObjectId()));
            one.setUserId(user.getUserId());
            one.setShopId(user.getObjectId());
            one.setRoleType(one.getRoleType());