diff --git a/blade-service-api/blade-user-api/src/main/java/org/springblade/system/user/vo/UserVO.java b/blade-service-api/blade-user-api/src/main/java/org/springblade/system/user/vo/UserVO.java index de191b68..5bdf7544 100644 --- a/blade-service-api/blade-user-api/src/main/java/org/springblade/system/user/vo/UserVO.java +++ b/blade-service-api/blade-user-api/src/main/java/org/springblade/system/user/vo/UserVO.java @@ -40,6 +40,11 @@ public class UserVO extends User { @JsonSerialize(using = ToStringSerializer.class) private Long id; + /** + * 租户名 + */ + private String tenantName; + /** * 角色名 */ diff --git a/blade-service/blade-user/src/main/java/org/springblade/system/user/service/impl/UserServiceImpl.java b/blade-service/blade-user/src/main/java/org/springblade/system/user/service/impl/UserServiceImpl.java index 63f191de..5773a91c 100644 --- a/blade-service/blade-user/src/main/java/org/springblade/system/user/service/impl/UserServiceImpl.java +++ b/blade-service/blade-user/src/main/java/org/springblade/system/user/service/impl/UserServiceImpl.java @@ -85,12 +85,21 @@ public class UserServiceImpl extends BaseServiceImpl implement @Override @Transactional(rollbackFor = Exception.class) public boolean updateUser(User user) { - user.setPassword(null); - return updateById(user) && submitUserDept(user); + return updateUserInfo(user) && submitUserDept(user); } @Override public boolean updateUserInfo(User user) { + String tenantId = user.getTenantId(); + Integer userCount = baseMapper.selectCount( + Wrappers.query().lambda() + .eq(User::getTenantId, tenantId) + .eq(User::getAccount, user.getAccount()) + .notIn(User::getId, user.getId()) + ); + if (userCount > 0) { + throw new ServiceException("当前用户已存在!"); + } user.setPassword(null); return updateById(user); } diff --git a/blade-service/blade-user/src/main/java/org/springblade/system/user/wrapper/UserWrapper.java b/blade-service/blade-user/src/main/java/org/springblade/system/user/wrapper/UserWrapper.java index dce9731d..10b2478e 100644 --- a/blade-service/blade-user/src/main/java/org/springblade/system/user/wrapper/UserWrapper.java +++ b/blade-service/blade-user/src/main/java/org/springblade/system/user/wrapper/UserWrapper.java @@ -21,6 +21,7 @@ import org.springblade.core.tool.utils.BeanUtil; import org.springblade.core.tool.utils.Func; import org.springblade.system.cache.DictCache; import org.springblade.system.cache.SysCache; +import org.springblade.system.entity.Tenant; import org.springblade.system.user.entity.User; import org.springblade.system.user.vo.UserVO; @@ -41,8 +42,10 @@ public class UserWrapper extends BaseEntityWrapper { @Override public UserVO entityVO(User user) { UserVO userVO = Objects.requireNonNull(BeanUtil.copy(user, UserVO.class)); + Tenant tenant = SysCache.getTenant(user.getTenantId()); List roleName = SysCache.getRoleNames(user.getRoleId()); List deptName = SysCache.getDeptNames(user.getDeptId()); + userVO.setTenantName(tenant.getTenantName()); userVO.setRoleName(Func.join(roleName)); userVO.setDeptName(Func.join(deptName)); String sex = DictCache.getValue("sex", Func.toInt(user.getSex()));