From bc853e023ec5eec7ec9d006762d00ce34bba0cd0 Mon Sep 17 00:00:00 2001 From: geonhos Date: Fri, 17 May 2024 10:58:00 +0900 Subject: [PATCH] =?UTF-8?q?admin:=20domain=20=EA=B4=80=EC=8B=AC=EC=82=AC?= =?UTF-8?q?=20=EB=B6=84=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/{entity => base}/BaseEntity.java | 2 +- .../admin/domain/base/admin/entity/Admin.java | 8 +-- .../admin/service/AdminCreateCommand.java | 8 ++- .../base/admin/service/AdminCreateResult.java | 18 ------ .../base/admin/service/AdminService.java | 37 +---------- .../admin/service/AdminUpdateCommand.java | 8 ++- .../base/{role => menu}/entity/Menu.java | 6 +- .../base/{role => menu}/entity/MenuGroup.java | 9 +-- .../entity/MenuGroupRepository.java | 2 +- .../{role => menu}/entity/MenuRepository.java | 2 +- .../service/MenuCreateCommand.java | 4 +- .../service/MenuGroupCreateCommand.java | 4 +- .../service/MenuGroupUpdateCommand.java | 4 +- .../{role => menu}/service/MenuService.java | 16 +++-- .../service/MenuUpdateCommand.java | 4 +- .../admin/domain/base/role/entity/Role.java | 2 +- .../domain/base/role/entity/RoleMenu.java | 5 +- .../base/role/service/RoleAddMenuCommand.java | 17 +++-- .../domain/base/role/service/RoleService.java | 33 ++++------ .../web/advice/menu/MenuQueryRepository.java | 4 +- .../management/AdminManagementWebService.java | 29 +++++++-- .../admin/management/reqres/AdminCreate.java | 5 +- .../web/main/admin/menu/MenuWebService.java | 4 +- .../web/main/admin/role/RoleWebService.java | 30 +++++++-- .../main/admin/role/reqres/RoleAddMenu.java | 2 +- .../base/admin/service/AdminServiceTest.java | 62 +++++++++---------- .../base/menu/service/MenuServiceTest.java | 13 ++-- .../base/role/service/RoleServiceTest.java | 23 ++++--- 28 files changed, 175 insertions(+), 186 deletions(-) rename poc/admin/src/main/java/com/bpgroup/poc/admin/domain/{entity => base}/BaseEntity.java (93%) delete mode 100644 poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminCreateResult.java rename poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/{role => menu}/entity/Menu.java (87%) rename poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/{role => menu}/entity/MenuGroup.java (83%) rename poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/{role => menu}/entity/MenuGroupRepository.java (72%) rename poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/{role => menu}/entity/MenuRepository.java (70%) rename poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/{role => menu}/service/MenuCreateCommand.java (88%) rename poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/{role => menu}/service/MenuGroupCreateCommand.java (87%) rename poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/{role => menu}/service/MenuGroupUpdateCommand.java (88%) rename poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/{role => menu}/service/MenuService.java (84%) rename poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/{role => menu}/service/MenuUpdateCommand.java (88%) diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/entity/BaseEntity.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/BaseEntity.java similarity index 93% rename from poc/admin/src/main/java/com/bpgroup/poc/admin/domain/entity/BaseEntity.java rename to poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/BaseEntity.java index 54422f2..e739d9b 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/entity/BaseEntity.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/BaseEntity.java @@ -1,4 +1,4 @@ -package com.bpgroup.poc.admin.domain.entity; +package com.bpgroup.poc.admin.domain.base; import jakarta.persistence.Column; import jakarta.persistence.EntityListeners; diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/entity/Admin.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/entity/Admin.java index f43960e..8b01cc1 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/entity/Admin.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/entity/Admin.java @@ -1,6 +1,6 @@ package com.bpgroup.poc.admin.domain.base.admin.entity; -import com.bpgroup.poc.admin.domain.entity.BaseEntity; +import com.bpgroup.poc.admin.domain.base.BaseEntity; import jakarta.persistence.*; import lombok.Builder; import lombok.Getter; @@ -30,12 +30,13 @@ public class Admin extends BaseEntity { private AdminRole adminRole; @Builder - public static Admin of(String loginId, String password, String email, String name) { + public static Admin of(String loginId, String password, String email, String name, AdminRole adminRole) { Admin admin = new Admin(); admin.loginId = loginId; admin.password = password; admin.email = email; admin.name = name; + admin.adminRole = adminRole; return admin; } @@ -46,7 +47,4 @@ public class Admin extends BaseEntity { this.adminRole = admin.adminRole; } - public void setAdminRole(AdminRole adminRole) { - this.adminRole = adminRole; - } } diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminCreateCommand.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminCreateCommand.java index 0cb7125..d43e53e 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminCreateCommand.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminCreateCommand.java @@ -1,6 +1,7 @@ package com.bpgroup.poc.admin.domain.base.admin.service; import com.bpgroup.poc.admin.domain.base.admin.entity.Admin; +import com.bpgroup.poc.admin.domain.base.admin.entity.AdminRole; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; import lombok.Builder; @@ -19,16 +20,16 @@ public class AdminCreateCommand { @NotBlank private String name; @NotNull - private Long roleId; + private AdminRole adminRole; @Builder - public static AdminCreateCommand of(String loginId, String password, String email, String name, Long roleId) { + public static AdminCreateCommand of(String loginId, String password, String email, String name, AdminRole adminRole) { AdminCreateCommand command = new AdminCreateCommand(); command.loginId = loginId; command.password = password; command.email = email; command.name = name; - command.roleId = roleId; + command.adminRole = adminRole; return command; } @@ -38,6 +39,7 @@ public class AdminCreateCommand { .password(password) .email(email) .name(name) + .adminRole(adminRole) .build(); } diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminCreateResult.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminCreateResult.java deleted file mode 100644 index 9577da6..0000000 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminCreateResult.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.bpgroup.poc.admin.domain.base.admin.service; - -import lombok.Builder; -import lombok.Getter; -import lombok.ToString; - -@Getter -@ToString -public class AdminCreateResult { - private Long id; - - @Builder - public static AdminCreateResult of(Long id) { - AdminCreateResult result = new AdminCreateResult(); - result.id = id; - return result; - } -} diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminService.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminService.java index 0e396b2..dde845f 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminService.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminService.java @@ -2,9 +2,6 @@ package com.bpgroup.poc.admin.domain.base.admin.service; import com.bpgroup.poc.admin.domain.base.admin.entity.Admin; import com.bpgroup.poc.admin.domain.base.admin.entity.AdminRepository; -import com.bpgroup.poc.admin.domain.base.admin.entity.AdminRole; -import com.bpgroup.poc.admin.domain.base.role.entity.Role; -import com.bpgroup.poc.admin.domain.base.role.entity.RoleRepository; import jakarta.validation.Valid; import jakarta.validation.constraints.NotNull; import lombok.RequiredArgsConstructor; @@ -21,28 +18,11 @@ import java.util.Optional; public class AdminService { private final AdminRepository adminRepository; - private final RoleRepository roleRepository; - public AdminCreateResult create( + public Admin create( @NotNull @Valid AdminCreateCommand command ) { - Optional findRole = roleRepository.findById(command.getRoleId()); - if (findRole.isEmpty()) { - throw new IllegalArgumentException("Not found role"); - } - - Role role = findRole.get(); - Admin admin = command.toEntity(); - admin.setAdminRole( - AdminRole.builder() - .role(role) - .build() - ); - Admin savedAdmin = adminRepository.save(admin); - - return AdminCreateResult.builder() - .id(savedAdmin.getId()) - .build(); + return adminRepository.save(command.toEntity()); } public void update( @@ -53,19 +33,8 @@ public class AdminService { throw new IllegalArgumentException("Not found admin"); } - Optional findRole = roleRepository.findById(command.getRoleId()); - if (findRole.isEmpty()) { - throw new IllegalArgumentException("Not found role"); - } - - Role role = findRole.get(); Admin admin = findAdmin.get(); - admin.setAdminRole( - AdminRole.builder() - .role(role) - .build() - ); - admin.update(admin); + admin.update(command.toEntity()); } public void delete(@NotNull Long id) { diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminUpdateCommand.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminUpdateCommand.java index 7a38370..0df5a4b 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminUpdateCommand.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminUpdateCommand.java @@ -1,6 +1,7 @@ package com.bpgroup.poc.admin.domain.base.admin.service; import com.bpgroup.poc.admin.domain.base.admin.entity.Admin; +import com.bpgroup.poc.admin.domain.base.admin.entity.AdminRole; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; import lombok.Builder; @@ -19,16 +20,16 @@ public class AdminUpdateCommand { @NotBlank private String name; @NotNull - private Long roleId; + private AdminRole adminRole; @Builder - public static AdminUpdateCommand of(Long id, String password, String email, String name, Long roleId) { + public static AdminUpdateCommand of(Long id, String password, String email, String name, AdminRole adminRole) { AdminUpdateCommand command = new AdminUpdateCommand(); command.id = id; command.password = password; command.email = email; command.name = name; - command.roleId = roleId; + command.adminRole = adminRole; return command; } @@ -37,6 +38,7 @@ public class AdminUpdateCommand { .password(password) .email(email) .name(name) + .adminRole(adminRole) .build(); } diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/entity/Menu.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/entity/Menu.java similarity index 87% rename from poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/entity/Menu.java rename to poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/entity/Menu.java index 77ef6b4..2bc6b3c 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/entity/Menu.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/entity/Menu.java @@ -1,6 +1,6 @@ -package com.bpgroup.poc.admin.domain.base.role.entity; +package com.bpgroup.poc.admin.domain.base.menu.entity; -import com.bpgroup.poc.admin.domain.entity.BaseEntity; +import com.bpgroup.poc.admin.domain.base.BaseEntity; import jakarta.persistence.*; import lombok.Builder; import lombok.Getter; @@ -27,7 +27,7 @@ public class Menu extends BaseEntity { @JoinColumn(name = "menu_group_id", foreignKey = @ForeignKey(ConstraintMode.NO_CONSTRAINT)) private MenuGroup menuGroup; - public void setMenuGroup(MenuGroup menuGroup) { + public void addMenuGroup(MenuGroup menuGroup) { this.menuGroup = menuGroup; menuGroup.getMenus().add(this); } diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/entity/MenuGroup.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/entity/MenuGroup.java similarity index 83% rename from poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/entity/MenuGroup.java rename to poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/entity/MenuGroup.java index a06eaf6..1d99517 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/entity/MenuGroup.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/entity/MenuGroup.java @@ -1,6 +1,6 @@ -package com.bpgroup.poc.admin.domain.base.role.entity; +package com.bpgroup.poc.admin.domain.base.menu.entity; -import com.bpgroup.poc.admin.domain.entity.BaseEntity; +import com.bpgroup.poc.admin.domain.base.BaseEntity; import jakarta.persistence.*; import lombok.Builder; import lombok.Getter; @@ -38,11 +38,6 @@ public class MenuGroup extends BaseEntity { return menuGroup; } - public void addMenu(Menu entity) { - this.menus.add(entity); - entity.setMenuGroup(this); - } - public void update(MenuGroup entity) { this.uri = entity.uri; this.name = entity.name; diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/entity/MenuGroupRepository.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/entity/MenuGroupRepository.java similarity index 72% rename from poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/entity/MenuGroupRepository.java rename to poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/entity/MenuGroupRepository.java index 947bba0..844868b 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/entity/MenuGroupRepository.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/entity/MenuGroupRepository.java @@ -1,4 +1,4 @@ -package com.bpgroup.poc.admin.domain.base.role.entity; +package com.bpgroup.poc.admin.domain.base.menu.entity; import org.springframework.data.jpa.repository.JpaRepository; diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/entity/MenuRepository.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/entity/MenuRepository.java similarity index 70% rename from poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/entity/MenuRepository.java rename to poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/entity/MenuRepository.java index 0541bfe..f4f3cfd 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/entity/MenuRepository.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/entity/MenuRepository.java @@ -1,4 +1,4 @@ -package com.bpgroup.poc.admin.domain.base.role.entity; +package com.bpgroup.poc.admin.domain.base.menu.entity; import org.springframework.data.jpa.repository.JpaRepository; diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/MenuCreateCommand.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/service/MenuCreateCommand.java similarity index 88% rename from poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/MenuCreateCommand.java rename to poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/service/MenuCreateCommand.java index 6e2b9b5..3f46b67 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/MenuCreateCommand.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/service/MenuCreateCommand.java @@ -1,6 +1,6 @@ -package com.bpgroup.poc.admin.domain.base.role.service; +package com.bpgroup.poc.admin.domain.base.menu.service; -import com.bpgroup.poc.admin.domain.base.role.entity.Menu; +import com.bpgroup.poc.admin.domain.base.menu.entity.Menu; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; import lombok.Builder; diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/MenuGroupCreateCommand.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/service/MenuGroupCreateCommand.java similarity index 87% rename from poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/MenuGroupCreateCommand.java rename to poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/service/MenuGroupCreateCommand.java index 9ea2fe8..0bf15fd 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/MenuGroupCreateCommand.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/service/MenuGroupCreateCommand.java @@ -1,6 +1,6 @@ -package com.bpgroup.poc.admin.domain.base.role.service; +package com.bpgroup.poc.admin.domain.base.menu.service; -import com.bpgroup.poc.admin.domain.base.role.entity.MenuGroup; +import com.bpgroup.poc.admin.domain.base.menu.entity.MenuGroup; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; import lombok.Builder; diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/MenuGroupUpdateCommand.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/service/MenuGroupUpdateCommand.java similarity index 88% rename from poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/MenuGroupUpdateCommand.java rename to poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/service/MenuGroupUpdateCommand.java index 11f9287..cd40051 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/MenuGroupUpdateCommand.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/service/MenuGroupUpdateCommand.java @@ -1,6 +1,6 @@ -package com.bpgroup.poc.admin.domain.base.role.service; +package com.bpgroup.poc.admin.domain.base.menu.service; -import com.bpgroup.poc.admin.domain.base.role.entity.MenuGroup; +import com.bpgroup.poc.admin.domain.base.menu.entity.MenuGroup; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; import lombok.Builder; diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/MenuService.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/service/MenuService.java similarity index 84% rename from poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/MenuService.java rename to poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/service/MenuService.java index 0383bc0..41711cc 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/MenuService.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/service/MenuService.java @@ -1,9 +1,9 @@ -package com.bpgroup.poc.admin.domain.base.role.service; +package com.bpgroup.poc.admin.domain.base.menu.service; -import com.bpgroup.poc.admin.domain.base.role.entity.Menu; -import com.bpgroup.poc.admin.domain.base.role.entity.MenuGroup; -import com.bpgroup.poc.admin.domain.base.role.entity.MenuGroupRepository; -import com.bpgroup.poc.admin.domain.base.role.entity.MenuRepository; +import com.bpgroup.poc.admin.domain.base.menu.entity.Menu; +import com.bpgroup.poc.admin.domain.base.menu.entity.MenuGroup; +import com.bpgroup.poc.admin.domain.base.menu.entity.MenuGroupRepository; +import com.bpgroup.poc.admin.domain.base.menu.entity.MenuRepository; import jakarta.validation.Valid; import jakarta.validation.constraints.NotNull; import lombok.RequiredArgsConstructor; @@ -58,7 +58,7 @@ public class MenuService { MenuGroup menuGroup = findMenuGroup.get(); Menu menu = command.toEntity(); - menu.setMenuGroup(menuGroup); + menu.addMenuGroup(menuGroup); menuRepository.save(menu); } @@ -86,4 +86,8 @@ public class MenuService { public Optional findById(Long menuId) { return menuRepository.findById(menuId); } + + public Optional find(Long menuId) { + return menuRepository.findById(menuId); + } } diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/MenuUpdateCommand.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/service/MenuUpdateCommand.java similarity index 88% rename from poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/MenuUpdateCommand.java rename to poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/service/MenuUpdateCommand.java index a323c44..8b14632 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/MenuUpdateCommand.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/menu/service/MenuUpdateCommand.java @@ -1,6 +1,6 @@ -package com.bpgroup.poc.admin.domain.base.role.service; +package com.bpgroup.poc.admin.domain.base.menu.service; -import com.bpgroup.poc.admin.domain.base.role.entity.Menu; +import com.bpgroup.poc.admin.domain.base.menu.entity.Menu; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; import lombok.Builder; diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/entity/Role.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/entity/Role.java index b36170c..9ab42f0 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/entity/Role.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/entity/Role.java @@ -1,6 +1,6 @@ package com.bpgroup.poc.admin.domain.base.role.entity; -import com.bpgroup.poc.admin.domain.entity.BaseEntity; +import com.bpgroup.poc.admin.domain.base.BaseEntity; import jakarta.persistence.*; import lombok.Builder; import lombok.Getter; diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/entity/RoleMenu.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/entity/RoleMenu.java index 42e3ec3..39c79f2 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/entity/RoleMenu.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/entity/RoleMenu.java @@ -1,6 +1,7 @@ package com.bpgroup.poc.admin.domain.base.role.entity; -import com.bpgroup.poc.admin.domain.entity.BaseEntity; +import com.bpgroup.poc.admin.domain.base.BaseEntity; +import com.bpgroup.poc.admin.domain.base.menu.entity.Menu; import jakarta.persistence.*; import lombok.Builder; import lombok.Getter; @@ -27,6 +28,8 @@ public class RoleMenu extends BaseEntity { RoleMenu roleMenu = new RoleMenu(); roleMenu.role = role; roleMenu.menu = menu; + roleMenu.role.getRoleMenus().add(roleMenu); return roleMenu; } + } diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/RoleAddMenuCommand.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/RoleAddMenuCommand.java index 318d501..800b9c0 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/RoleAddMenuCommand.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/RoleAddMenuCommand.java @@ -1,5 +1,8 @@ package com.bpgroup.poc.admin.domain.base.role.service; +import com.bpgroup.poc.admin.domain.base.menu.entity.Menu; +import com.bpgroup.poc.admin.domain.base.role.entity.Role; +import com.bpgroup.poc.admin.domain.base.role.entity.RoleMenu; import jakarta.validation.constraints.NotNull; import lombok.Builder; import lombok.Getter; @@ -9,16 +12,20 @@ import lombok.ToString; @ToString public class RoleAddMenuCommand { @NotNull - private Long roleId; + private Role role; @NotNull - private Long menuId; + private Menu menu; @Builder - public static RoleAddMenuCommand of(Long roleId, Long menuId) { + public static RoleAddMenuCommand of(Role role, Menu menu) { RoleAddMenuCommand command = new RoleAddMenuCommand(); - command.roleId = roleId; - command.menuId = menuId; + command.role = role; + command.menu = menu; return command; } + public RoleMenu toEntity() { + return RoleMenu.of(role, menu); + } + } diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/RoleService.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/RoleService.java index faff852..b269d07 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/RoleService.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/role/service/RoleService.java @@ -1,10 +1,8 @@ package com.bpgroup.poc.admin.domain.base.role.service; -import com.bpgroup.poc.admin.domain.base.role.entity.RoleMenuRepository; -import com.bpgroup.poc.admin.domain.base.role.entity.Menu; -import com.bpgroup.poc.admin.domain.base.role.entity.MenuRepository; +import com.bpgroup.poc.admin.domain.base.menu.entity.MenuRepository; import com.bpgroup.poc.admin.domain.base.role.entity.Role; -import com.bpgroup.poc.admin.domain.base.role.entity.RoleMenu; +import com.bpgroup.poc.admin.domain.base.role.entity.RoleMenuRepository; import com.bpgroup.poc.admin.domain.base.role.entity.RoleRepository; import jakarta.validation.Valid; import jakarta.validation.constraints.NotNull; @@ -67,24 +65,11 @@ public class RoleService { public void addRoleMenu( @NotNull @Valid Set commands ) { - RoleAddMenuCommand command = commands.stream().findFirst().orElseThrow(); - Optional findRole = roleRepository.findById(command.getRoleId()); - if (findRole.isEmpty()) { - throw new IllegalArgumentException("Role Not Found"); - } - - Role role = findRole.get(); - commands.forEach(c -> { - Optional findMenu = menuRepository.findById(c.getMenuId()); - if (findMenu.isEmpty()) { - throw new IllegalArgumentException("Menu Not Found"); - } - - Menu menu = findMenu.get(); - RoleMenu roleMenu = RoleMenu.of(role, menu); - roleMenuRepository.save(roleMenu); - }); - + roleMenuRepository.saveAll( + commands.stream() + .map(RoleAddMenuCommand::toEntity) + .toList() + ); } public void deleteRoleMenu(@NotNull Long roleId) { @@ -96,4 +81,8 @@ public class RoleService { Role role = findRole.get(); role.deleteRoleMenus(); } + + public Optional find(Long roleId) { + return roleRepository.findById(roleId); + } } diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/web/advice/menu/MenuQueryRepository.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/web/advice/menu/MenuQueryRepository.java index e695813..46d3716 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/web/advice/menu/MenuQueryRepository.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/web/advice/menu/MenuQueryRepository.java @@ -9,8 +9,8 @@ import java.util.*; import static com.bpgroup.poc.admin.domain.base.admin.entity.QAdmin.admin; import static com.bpgroup.poc.admin.domain.base.admin.entity.QAdminRole.adminRole; -import static com.bpgroup.poc.admin.domain.base.role.entity.QMenu.menu; -import static com.bpgroup.poc.admin.domain.base.role.entity.QMenuGroup.menuGroup; +import static com.bpgroup.poc.admin.domain.base.menu.entity.QMenu.menu; +import static com.bpgroup.poc.admin.domain.base.menu.entity.QMenuGroup.menuGroup; import static com.bpgroup.poc.admin.domain.base.role.entity.QRole.role; import static com.bpgroup.poc.admin.domain.base.role.entity.QRoleMenu.roleMenu; diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/management/AdminManagementWebService.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/management/AdminManagementWebService.java index 2c4916a..a1c09ec 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/management/AdminManagementWebService.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/management/AdminManagementWebService.java @@ -1,9 +1,12 @@ package com.bpgroup.poc.admin.web.main.admin.management; +import com.bpgroup.poc.admin.domain.base.admin.entity.Admin; +import com.bpgroup.poc.admin.domain.base.admin.entity.AdminRole; import com.bpgroup.poc.admin.domain.base.admin.service.AdminCreateCommand; -import com.bpgroup.poc.admin.domain.base.admin.service.AdminCreateResult; import com.bpgroup.poc.admin.domain.base.admin.service.AdminService; import com.bpgroup.poc.admin.domain.base.admin.service.AdminUpdateCommand; +import com.bpgroup.poc.admin.domain.base.role.entity.Role; +import com.bpgroup.poc.admin.domain.base.role.service.RoleService; import com.bpgroup.poc.admin.web.main.admin.management.reqres.AdminCreate; import com.bpgroup.poc.admin.web.main.admin.management.reqres.AdminDelete; import com.bpgroup.poc.admin.web.main.admin.management.reqres.AdminFind; @@ -11,16 +14,21 @@ import com.bpgroup.poc.admin.web.main.admin.management.reqres.AdminUpdate; import lombok.RequiredArgsConstructor; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import java.util.List; +import java.util.Optional; @Service @RequiredArgsConstructor +@Transactional public class AdminManagementWebService { private final PasswordEncoder passwordEncoder; private final AdminService adminService; + private final RoleService roleService; + private final AdminManagementQueryRepository queryRepository; public List findAll() { @@ -32,25 +40,38 @@ public class AdminManagementWebService { } public AdminCreate.Response create(AdminCreate.Request request) { - AdminCreateResult adminCreateResult = adminService.create( + Optional findRole = roleService.find(request.getRoleId()); + if (findRole.isEmpty()) { + throw new IllegalArgumentException("Role Not Found"); + } + Role role = findRole.get(); + + Admin savedAdmin = adminService.create( AdminCreateCommand.builder() .loginId(request.getLoginId()) .password(passwordEncoder.encode(request.getPassword())) .email(request.getEmail()) .name(request.getName()) + .adminRole(AdminRole.of(role)) .build() ); - return AdminCreate.Response.success(adminCreateResult.getId()); + return AdminCreate.Response.success(savedAdmin.getId()); } public AdminUpdate.Response update(AdminUpdate.Request request) { + Optional findRole = roleService.find(request.getRoleId()); + if (findRole.isEmpty()) { + throw new IllegalArgumentException("Role Not Found"); + } + Role role = findRole.get(); + adminService.update( AdminUpdateCommand.builder() .id(request.getId()) - .roleId(request.getRoleId()) .email(request.getEmail()) .name(request.getName()) + .adminRole(AdminRole.of(role)) .build() ); diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/management/reqres/AdminCreate.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/management/reqres/AdminCreate.java index 0329a82..9516f38 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/management/reqres/AdminCreate.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/management/reqres/AdminCreate.java @@ -2,6 +2,7 @@ package com.bpgroup.poc.admin.web.main.admin.management.reqres; import com.bpgroup.poc.admin.web.common.CommonResponse; import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.Builder; import lombok.Data; import lombok.Getter; @@ -19,8 +20,8 @@ public class AdminCreate { private String email; @NotBlank private String name; - @NotBlank - private String roleId; + @NotNull + private Long roleId; } @Getter diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/menu/MenuWebService.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/menu/MenuWebService.java index 9db6a79..24a4309 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/menu/MenuWebService.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/menu/MenuWebService.java @@ -1,12 +1,14 @@ package com.bpgroup.poc.admin.web.main.admin.menu; -import com.bpgroup.poc.admin.domain.base.role.service.*; +import com.bpgroup.poc.admin.domain.base.menu.service.*; import com.bpgroup.poc.admin.web.main.admin.menu.reqres.*; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; @Service @RequiredArgsConstructor +@Transactional public class MenuWebService { private final MenuService menuService; diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/role/RoleWebService.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/role/RoleWebService.java index 3ce430c..122a656 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/role/RoleWebService.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/role/RoleWebService.java @@ -1,5 +1,8 @@ package com.bpgroup.poc.admin.web.main.admin.role; +import com.bpgroup.poc.admin.domain.base.menu.entity.Menu; +import com.bpgroup.poc.admin.domain.base.menu.service.MenuService; +import com.bpgroup.poc.admin.domain.base.role.entity.Role; import com.bpgroup.poc.admin.domain.base.role.service.*; import com.bpgroup.poc.admin.web.main.admin.role.reqres.RoleAddMenu; import com.bpgroup.poc.admin.web.main.admin.role.reqres.RoleCreate; @@ -9,15 +12,19 @@ import jakarta.validation.Valid; import jakarta.validation.constraints.NotNull; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import java.util.Optional; import java.util.Set; import java.util.stream.Collectors; @Service @RequiredArgsConstructor +@Transactional public class RoleWebService { private final RoleService roleService; + private final MenuService menuService; public RoleCreate.Response create(RoleCreate.Request request) { RoleCreateResult createResult = roleService.create( @@ -47,11 +54,24 @@ public class RoleWebService { public void putMenu(@NotNull @Valid RoleAddMenu.Request request) { roleService.deleteRoleMenu(request.getRoleId()); - Set commands = request.getMenuIds().stream() - .map(menuId -> RoleAddMenuCommand.builder() - .roleId(request.getRoleId()) - .menuId(menuId) - .build() + Optional findRole = roleService.find(request.getRoleId()); + if (findRole.isEmpty()) { + throw new IllegalArgumentException("Role Not Found"); + } + Role role = findRole.get(); + + Set commands = request.getMenus().stream() + .map(menuId -> { + Optional findMenu = menuService.find(menuId); + if (findMenu.isEmpty()) { + throw new IllegalArgumentException("Menu Not Found"); + } + Menu menu = findMenu.get(); + return RoleAddMenuCommand.builder() + .role(role) + .menu(menu) + .build(); + } ) .collect(Collectors.toSet()); diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/role/reqres/RoleAddMenu.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/role/reqres/RoleAddMenu.java index b3a3b2b..7e6c67b 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/role/reqres/RoleAddMenu.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/role/reqres/RoleAddMenu.java @@ -19,7 +19,7 @@ public class RoleAddMenu { private Long roleId; @NotNull @Size(min = 1) - private Set menuIds = new HashSet<>(); + private Set menus = new HashSet<>(); } diff --git a/poc/admin/src/test/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminServiceTest.java b/poc/admin/src/test/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminServiceTest.java index c7e6212..d10e6ed 100644 --- a/poc/admin/src/test/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminServiceTest.java +++ b/poc/admin/src/test/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminServiceTest.java @@ -43,21 +43,21 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy; flushAndClear(); // when - AdminCreateResult createResult = service.create( + Admin savedAdmin = service.create( AdminCreateCommand.builder() .loginId("test") .password("test") .email("test") .name("test") - .roleId(role.getId()) + .adminRole(AdminRole.of(role)) .build() ); flushAndClear(); // then - assertThat(createResult.getId()).isNotNull(); + assertThat(savedAdmin.getId()).isNotNull(); - Admin findAdmin = adminRepository.findById(createResult.getId()).orElseThrow(); + Admin findAdmin = adminRepository.findById(savedAdmin.getId()).orElseThrow(); assertThat(findAdmin.getAdminRole().getRole().getName()).isEqualTo("test"); } @@ -86,7 +86,7 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy; .password("test2") .email("test2") .name("test2") - .roleId(updateRole.getId()) + .adminRole(AdminRole.of(updateRole)) .build() ); flushAndClear(); @@ -148,44 +148,40 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy; @NotNull private Admin createAdmin(Role role) { - Admin admin = Admin.builder() - .loginId("test2") - .password("test2") - .email("test2") - .name("test2") - .build(); - admin.setAdminRole( - AdminRole.builder() - .role(role) + return adminRepository.save( + Admin.builder() + .loginId("test") + .password("test") + .email("test") + .name("test") + .adminRole(AdminRole.of(role)) .build() ); - - return adminRepository.save(admin); } @Test @DisplayName("AdminService method 호출 유효성 검사 테스트") void validationTest() { // create - assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId(null).password("password").email("email").name("name").roleId(1L).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("").password("password").email("email").name("name").roleId(1L).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("loginId").password(null).email("email").name("name").roleId(1L).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("loginId").password("").email("email").name("name").roleId(1L).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("loginId").password("password").email(null).name("name").roleId(1L).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("loginId").password("password").email("").name("name").roleId(1L).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("loginId").password("password").email("email").name(null).roleId(1L).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("loginId").password("password").email("email").name("").roleId(1L).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("loginId").password("password").email("email").name("name").roleId(null).build())).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId(null).password("password").email("email").name("name").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("").password("password").email("email").name("name").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("loginId").password(null).email("email").name("name").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("loginId").password("").email("email").name("name").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("loginId").password("password").email(null).name("name").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("loginId").password("password").email("").name("name").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("loginId").password("password").email("email").name(null).adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("loginId").password("password").email("email").name("").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("loginId").password("password").email("email").name("name").adminRole(null).build())).isInstanceOf(ConstraintViolationException.class); // update - assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(null).password("password").email("email").name("name").roleId(1L).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(1L).password(null).email("email").name("name").roleId(1L).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(1L).password("").email("email").name("name").roleId(1L).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(1L).password("password").email(null).name("name").roleId(1L).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(1L).password("password").email("").name("name").roleId(1L).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(1L).password("password").email("email").name(null).roleId(1L).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(1L).password("password").email("email").name("").roleId(1L).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(1L).password("password").email("email").name("name").roleId(null).build())).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(null).password("password").email("email").name("name").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(1L).password(null).email("email").name("name").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(1L).password("").email("email").name("name").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(1L).password("password").email(null).name("name").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(1L).password("password").email("").name("name").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(1L).password("password").email("email").name(null).adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(1L).password("password").email("email").name("").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(1L).password("password").email("email").name("name").adminRole(null).build())).isInstanceOf(ConstraintViolationException.class); // delete assertThatThrownBy(() -> service.delete(null)).isInstanceOf(ConstraintViolationException.class); diff --git a/poc/admin/src/test/java/com/bpgroup/poc/admin/domain/base/menu/service/MenuServiceTest.java b/poc/admin/src/test/java/com/bpgroup/poc/admin/domain/base/menu/service/MenuServiceTest.java index 16061e2..c513f90 100644 --- a/poc/admin/src/test/java/com/bpgroup/poc/admin/domain/base/menu/service/MenuServiceTest.java +++ b/poc/admin/src/test/java/com/bpgroup/poc/admin/domain/base/menu/service/MenuServiceTest.java @@ -1,10 +1,9 @@ package com.bpgroup.poc.admin.domain.base.menu.service; -import com.bpgroup.poc.admin.domain.base.role.entity.Menu; -import com.bpgroup.poc.admin.domain.base.role.entity.MenuGroup; -import com.bpgroup.poc.admin.domain.base.role.entity.MenuGroupRepository; -import com.bpgroup.poc.admin.domain.base.role.entity.MenuRepository; -import com.bpgroup.poc.admin.domain.base.role.service.*; +import com.bpgroup.poc.admin.domain.base.menu.entity.Menu; +import com.bpgroup.poc.admin.domain.base.menu.entity.MenuGroup; +import com.bpgroup.poc.admin.domain.base.menu.entity.MenuGroupRepository; +import com.bpgroup.poc.admin.domain.base.menu.entity.MenuRepository; import com.bpgroup.poc.admin.env.MariaDBTestEnv; import jakarta.validation.ConstraintViolationException; import org.assertj.core.api.Assertions; @@ -134,7 +133,7 @@ class MenuServiceTest extends MariaDBTestEnv { .name("name") .sortOrder(1) .build(); - menu.setMenuGroup(saveMenuGroup); + menu.addMenuGroup(saveMenuGroup); Menu saveMenu = menuRepository.save(menu); flushAndClear(); @@ -168,7 +167,7 @@ class MenuServiceTest extends MariaDBTestEnv { .name("name") .sortOrder(1) .build(); - menu.setMenuGroup(saveMenuGroup); + menu.addMenuGroup(saveMenuGroup); Menu saveMenu = menuRepository.save(menu); flushAndClear(); diff --git a/poc/admin/src/test/java/com/bpgroup/poc/admin/domain/base/role/service/RoleServiceTest.java b/poc/admin/src/test/java/com/bpgroup/poc/admin/domain/base/role/service/RoleServiceTest.java index 3290a33..2241853 100644 --- a/poc/admin/src/test/java/com/bpgroup/poc/admin/domain/base/role/service/RoleServiceTest.java +++ b/poc/admin/src/test/java/com/bpgroup/poc/admin/domain/base/role/service/RoleServiceTest.java @@ -4,11 +4,10 @@ import com.bpgroup.poc.admin.domain.base.role.entity.Role; import com.bpgroup.poc.admin.domain.base.role.entity.RoleMenu; import com.bpgroup.poc.admin.domain.base.role.entity.RoleMenuRepository; import com.bpgroup.poc.admin.domain.base.role.entity.RoleRepository; -import com.bpgroup.poc.admin.domain.base.role.service.*; -import com.bpgroup.poc.admin.domain.base.role.entity.Menu; -import com.bpgroup.poc.admin.domain.base.role.entity.MenuGroup; -import com.bpgroup.poc.admin.domain.base.role.entity.MenuGroupRepository; -import com.bpgroup.poc.admin.domain.base.role.entity.MenuRepository; +import com.bpgroup.poc.admin.domain.base.menu.entity.Menu; +import com.bpgroup.poc.admin.domain.base.menu.entity.MenuGroup; +import com.bpgroup.poc.admin.domain.base.menu.entity.MenuGroupRepository; +import com.bpgroup.poc.admin.domain.base.menu.entity.MenuRepository; import com.bpgroup.poc.admin.env.MariaDBTestEnv; import jakarta.validation.ConstraintViolationException; import org.junit.jupiter.api.BeforeEach; @@ -120,12 +119,12 @@ class RoleServiceTest extends MariaDBTestEnv { roleService.addRoleMenu( Set.of( RoleAddMenuCommand.builder() - .roleId(saveRole.getId()) - .menuId(menu1.getId()) + .role(saveRole) + .menu(menu1) .build(), RoleAddMenuCommand.builder() - .roleId(saveRole.getId()) - .menuId(menu2.getId()) + .role(saveRole) + .menu(menu2) .build() ) ); @@ -233,7 +232,7 @@ class RoleServiceTest extends MariaDBTestEnv { .name("TEST") .sortOrder(1) .build(); - menu.setMenuGroup(menuGroup); + menu.addMenuGroup(menuGroup); return menuRepository.save(menu); } @@ -253,8 +252,8 @@ class RoleServiceTest extends MariaDBTestEnv { assertThatThrownBy(() -> roleService.delete(null)).isInstanceOf(ConstraintViolationException.class); // add Role Menu - assertThatThrownBy(() -> roleService.addRoleMenu(Set.of(RoleAddMenuCommand.builder().roleId(null).menuId(null).build()))).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> roleService.addRoleMenu(Set.of(RoleAddMenuCommand.builder().roleId(1L).menuId(null).build()))).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> roleService.addRoleMenu(Set.of(RoleAddMenuCommand.builder().role(null).menu(new Menu()).build()))).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> roleService.addRoleMenu(Set.of(RoleAddMenuCommand.builder().role(new Role()).menu(null).build()))).isInstanceOf(ConstraintViolationException.class); // delete Role Menu assertThatThrownBy(() -> roleService.deleteRoleMenu(null)).isInstanceOf(ConstraintViolationException.class);