员工重复账号

员工登录
角色重复
This commit is contained in:
2024-08-01 18:13:12 +08:00
parent 25b4a4ca2f
commit 9fcc5df6b9
5 changed files with 21 additions and 11 deletions

View File

@@ -36,6 +36,7 @@ public interface RoleRepository extends JpaRepository<Role, Long>, JpaSpecificat
* @return /
*/
Role findByName(String name);
Role findByNameAndShopId(String name,Integer shopId);
/**
* 删除多个角色

View File

@@ -91,8 +91,8 @@ public class RoleServiceImpl implements RoleService {
@Override
@Transactional(rollbackFor = Exception.class)
public void create(Role resources) {
if (roleRepository.findByName(resources.getName()) != null) {
throw new EntityExistException(Role.class, "username", resources.getName());
if (roleRepository.findByNameAndShopId(resources.getName(),resources.getShopId()) != null) {
throw new BadRequestException("角色已存在");
}
roleRepository.save(resources);
}
@@ -101,13 +101,12 @@ public class RoleServiceImpl implements RoleService {
@Transactional(rollbackFor = Exception.class)
public void update(Role resources) {
Role role = roleRepository.findById(resources.getId()).orElseGet(Role::new);
ValidationUtil.isNull(role.getId(), "Role", "id", resources.getId());
Role role1 = roleRepository.findByName(resources.getName());
if (role1 != null && !role1.getId().equals(role.getId())) {
throw new EntityExistException(Role.class, "username", resources.getName());
if (!resources.getName().equals(role.getName())) {
if (roleRepository.findByNameAndShopId(resources.getName(),resources.getShopId()) != null) {
throw new BadRequestException("修改失败,角色名称不可重复");
}
}
ValidationUtil.isNull(role.getId(), "Role", "id", resources.getId());
role.setName(resources.getName());
role.setDescription(resources.getDescription());
role.setDataScope(resources.getDataScope());