From b22df417e0bc423c788b013feaad686531d69eed Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期三, 08 一月 2025 09:51:37 +0800 Subject: [PATCH] 修改bug --- ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java | 75 ++++++++++++++++++++++++++----------- 1 files changed, 52 insertions(+), 23 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java index aa126fd..f801929 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java @@ -33,6 +33,7 @@ import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; +import java.time.LocalDateTime; import java.util.*; import java.util.stream.Collectors; @@ -112,9 +113,6 @@ user.setUserName(user.getPhonenumber()); Long userid = tokenService.getLoginUser().getUserid(); SysUser sysUser1 = userService.getById(userid); - if(sysUser1.getRoleType() == 2){ - user.setObjectId(sysUser1.getObjectId()); - } if(!org.springframework.util.StringUtils.hasLength(user.getNickName())){ user.setNickName(user.getPhonenumber()); } @@ -124,22 +122,41 @@ if (StringUtils.isNotEmpty(user.getUserName()) && !userService.checkUserNameUnique(user)) { return error("登录账号重复"); } - user.setCreateBy(SecurityUtils.getUsername()); - user.setPassword(SecurityUtils.encryptPassword("a123456")); - user.setRoleType(sysUser1.getRoleType()); - userService.insertUser(user); - SysUserRole sysUserRole = new SysUserRole(); - sysUserRole.setRoleId(user.getRoleId()); - sysUserRole.setUserId(user.getUserId()); - userRoleService.insertSysUserRole(sysUserRole); - //添加门店员工关系数据 - if(2 == user.getRoleType()){ + //门店员工添加数据,需要判断账号是否存在,共用同一个账号 + if(2 == sysUser1.getRoleType()){ + SysUser one = userService.getOne(new LambdaQueryWrapper<SysUser>().eq(SysUser::getUserName, user.getPhonenumber()) + .eq(SysUser::getDelFlag, "0").eq(SysUser::getStatus, "0").eq(SysUser::getRoleType, 2)); + if(null == one){ + user.setCreateBy(SecurityUtils.getUsername()); + user.setPassword(SecurityUtils.encryptPassword("a123456")); + user.setRoleType(sysUser1.getRoleType()); + user.setObjectId(sysUser1.getObjectId()); + userService.insertUser(user); + one = user; + SysUserRole sysUserRole = new SysUserRole(); + sysUserRole.setRoleId(user.getRoleId()); + sysUserRole.setUserId(user.getUserId()); + userRoleService.insertSysUserRole(sysUserRole); + } + //添加门店员工关系数据 UserShop userShop = new UserShop(); - userShop.setUserId(user.getUserId()); - userShop.setShopId(user.getObjectId()); + userShop.setUserId(one.getUserId()); + userShop.setShopId(sysUser1.getObjectId()); userShop.setRoleType(2); userShop.setRoleId(user.getRoleId()); + userShop.setDeptId(user.getDeptId()); + userShop.setNickName(user.getNickName()); + userShop.setCreateTime(LocalDateTime.now()); userShopService.save(userShop); + }else{ + user.setCreateBy(SecurityUtils.getUsername()); + user.setPassword(SecurityUtils.encryptPassword("a123456")); + user.setRoleType(sysUser1.getRoleType()); + userService.insertUser(user); + SysUserRole sysUserRole = new SysUserRole(); + sysUserRole.setRoleId(user.getRoleId()); + sysUserRole.setUserId(user.getUserId()); + userRoleService.insertSysUserRole(sysUserRole); } return AjaxResult.success(); } @@ -174,6 +191,17 @@ ajax.put("posts", postService.selectPostAll()); if (StringUtils.isNotNull(userId)) { SysUser sysUser = userService.selectUserById(userId); + if(sysUser.getRoleType() == 2){ + Long userid = tokenService.getLoginUser().getUserid(); + SysUser sysUser1 = userService.selectUserById(userid); + UserShop one = userShopService.getOne(new LambdaQueryWrapper<UserShop>().eq(UserShop::getUserId, sysUser.getUserId()).eq(UserShop::getShopId, sysUser1.getObjectId())); + sysUser.setDeptId(one.getDeptId()); + sysUser.setNickName(one.getNickName()); + SysDept sysDept = deptService.selectDeptById(one.getDeptId()); + sysUser.setDept(sysDept); + sysUser.setRoleId(one.getRoleId()); + } + ajax.put("data", sysUser); ajax.put("postIds", postService.selectPostListByUserId(userId)); ajax.put("roleIds", sysUser.getRoles().stream().map(SysRole::getRoleId).collect(Collectors.toList())); @@ -231,13 +259,14 @@ //添加门店员工关系数据 if(2 == user.getRoleType()){ - userShopService.remove(new LambdaQueryWrapper<UserShop>().eq(UserShop::getUserId, user.getUserId()).eq(UserShop::getShopId, user.getObjectId())); - UserShop userShop = new UserShop(); - userShop.setUserId(user.getUserId()); - userShop.setShopId(user.getObjectId()); - userShop.setRoleType(2); - userShop.setRoleId(user.getRoleId()); - userShopService.save(userShop); + 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()); + one.setRoleId(user.getRoleId()); + one.setDeptId(user.getDeptId()); + one.setNickName(user.getNickName()); + userShopService.updateById(one); } return success(); } @@ -614,7 +643,7 @@ @ResponseBody - @GetMapping("/switchShop") + @PutMapping("/switchShop/{shopId}") @ApiOperation(value = "切换门店", tags = {"门店后台-首页"}) public R<Set<String>> switchShop(@PathVariable("shopId") Integer shopId){ Long userid = tokenService.getLoginUser().getUserid(); -- Gitblit v1.7.1