diff --git a/mhd-user-center/src/main/java/com/mhd/user/application/service/UserApplicationService.java b/mhd-user-center/src/main/java/com/mhd/user/application/service/UserApplicationService.java index a0862fedd..f110fb4f1 100644 --- a/mhd-user-center/src/main/java/com/mhd/user/application/service/UserApplicationService.java +++ b/mhd-user-center/src/main/java/com/mhd/user/application/service/UserApplicationService.java @@ -1878,6 +1878,33 @@ public class UserApplicationService { } catch (Exception e) { log.warn("同步YMS平台员工信息失败,但不影响用户保存: {}", e.getMessage()); } + //给小程序注册用户分配默认普通用户角色(must) + try { + RoleDo mustRoleDo = new RoleDo(); + mustRoleDo.setRoleCode(RoleEnum.MUST.getCode()); + mustRoleDo.setOrganizationId(userEntity.getOrganizationId()); + RoleEntity mustRoleEntity = roleDomainService.selectByOrganizationIdAndRoleCode(mustRoleDo); + if (null != mustRoleEntity) { + UserRoleDo mustUserRoleDo = new UserRoleDo(); + mustUserRoleDo.setUserId(userEntity.getUserId()); + mustUserRoleDo.setRoleId(mustRoleEntity.getRoleId()); + LoginUser loginUser = SecurityUtils.getLoginUser(); + if (ObjectUtil.isNull(loginUser)) { + userRoleDomainService.addUserRole(mustUserRoleDo, userEntity); + } else { + userRoleDomainService.addUserRole(mustUserRoleDo); + } + userDO.setRoleCode(RoleEnum.MUST.getCode()); + userDO.setRoleName(RoleEnum.MUST.getName()); + } + } catch (Exception e) { + log.warn("分配默认角色失败,但不影响用户保存: {}", e.getMessage()); + } + //更新user表role_code和role_name(用mapper直接更新,避免需要loginUser) + userMapper.update(null, new LambdaUpdateWrapper() + .set(UserEntity::getRoleCode, userDO.getRoleCode()) + .set(UserEntity::getRoleName, userDO.getRoleName()) + .eq(UserEntity::getUserId, userEntity.getUserId())); //2024年3月27日16:40:15 处理用户验证码注册,首次登录redis用户数据不更新问题 //此处根据id重新查询 return userDomainService.selectByUserId(userEntity.getUserId()); @@ -1941,12 +1968,11 @@ public class UserApplicationService { driverUserRoleDo.setUserId(userPo.getUserId()); driverUserRoleDo.setRoleId(driverRoleEntity.getRoleId()); userRoleDomainService.addUserRole(driverUserRoleDo); - // 更新user表role_code追加driver - UserDO updateRoleDO = new UserDO(); - updateRoleDO.setUserId(userPo.getUserId()); - updateRoleDO.setRoleCode((userPo.getRoleCode() != null ? userPo.getRoleCode() + "," : "") + RoleEnum.DRIVER.getCode()); - updateRoleDO.setRoleName((userPo.getRoleName() != null ? userPo.getRoleName() + "," : "") + RoleEnum.DRIVER.getName()); - userDomainService.updateUser(updateRoleDO); + // 更新user表role_code和role_name为driver(承运企业司机不需要must) + userMapper.update(null, new LambdaUpdateWrapper() + .set(UserEntity::getRoleCode, RoleEnum.DRIVER.getCode()) + .set(UserEntity::getRoleName, RoleEnum.DRIVER.getName()) + .eq(UserEntity::getUserId, userPo.getUserId())); } //20240314 运输企业添加司机,默认生成一条空的司机信息方便列表查询 diff --git a/mhd-user-center/src/main/java/com/mhd/user/interfaces/facade/UserAPI.java b/mhd-user-center/src/main/java/com/mhd/user/interfaces/facade/UserAPI.java index 524d19793..29bf15f6e 100644 --- a/mhd-user-center/src/main/java/com/mhd/user/interfaces/facade/UserAPI.java +++ b/mhd-user-center/src/main/java/com/mhd/user/interfaces/facade/UserAPI.java @@ -16,9 +16,7 @@ import com.mhd.user.domain.roleAggregate.repository.todo.RoleDo; import com.mhd.user.domain.userAggregate.repository.po.UserDocumentWarningQueryPo; import com.mhd.user.domain.userAggregate.repository.todo.*; import com.mhd.user.domain.userAggregate.service.UserRoleDomainService; -import com.mhd.user.domain.roleAggregate.service.RoleDomainService; -import com.mhd.user.domain.roleAggregate.entity.RoleEntity; -import com.mhd.common.core.enums.RoleEnum; + import com.mhd.user.interfaces.assember.*; import com.mhd.user.interfaces.dto.addDTO.*; import com.mhd.user.interfaces.dto.queryDTO.UserDataPermissionQueryDTO; @@ -79,9 +77,6 @@ public class UserAPI extends BaseController { @Autowired private UserRoleDomainService userRoleDomainService; - @Resource - private RoleDomainService roleDomainService; - @Resource private TokenService tokenService; @@ -342,27 +337,6 @@ public class UserAPI extends BaseController { if (ObjectUtil.isNotNull(userPo)) { sysUserVo.setUserid(userPo.getUserId()); } - // 小程序注册用户默认分配普通用户角色(must) - try { - RoleDo mustRoleDo = new RoleDo(); - mustRoleDo.setRoleCode(RoleEnum.MUST.getCode()); - mustRoleDo.setOrganizationId(userPo.getOrganizationId()); - RoleEntity mustRoleEntity = roleDomainService.selectByOrganizationIdAndRoleCode(mustRoleDo); - if (null != mustRoleEntity) { - UserRoleDo mustUserRoleDo = new UserRoleDo(); - mustUserRoleDo.setUserId(userPo.getUserId()); - mustUserRoleDo.setRoleId(mustRoleEntity.getRoleId()); - userRoleDomainService.addUserRole(mustUserRoleDo); - // 更新user表role_code和role_name - UserDO updateRoleDO = new UserDO(); - updateRoleDO.setUserId(userPo.getUserId()); - updateRoleDO.setRoleCode(RoleEnum.MUST.getCode()); - updateRoleDO.setRoleName(RoleEnum.MUST.getName()); - userApplicationService.updateUser(updateRoleDO); - } - } catch (Exception e) { - log.warn("小程序注册分配默认角色失败: {}", e.getMessage()); - } sysUserVo.setUserPo(userPo); return R.ok(sysUserVo, "操作成功"); }