@Query例子

This commit is contained in:
dengqichen 2024-11-27 16:24:57 +08:00
parent 6d9ce4e2fd
commit 68d42ce6f0
3 changed files with 5 additions and 10 deletions

View File

@ -59,11 +59,4 @@ public class Menu extends Entity<Long> {
@ToString.Exclude
private Set<RoleMenu> roleMenus = new HashSet<>();
// 便捷方法获取所有关联的角色
@Transient
public Set<Role> getRoles() {
return roleMenus.stream()
.map(RoleMenu::getRole)
.collect(Collectors.toSet());
}
}

View File

@ -22,7 +22,7 @@ import java.util.Set;
@Table(name = "sys_role_menu")
@LogicDelete
public class RoleMenu extends Entity<Long> {
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "role_id")
@JsonIgnore
@ -35,7 +35,8 @@ public class RoleMenu extends Entity<Long> {
@ToString.Exclude
private Menu menu;
protected RoleMenu() {}
protected RoleMenu() {
}
public RoleMenu(Role role, Menu menu) {
this.role = role;

View File

@ -11,7 +11,8 @@ import java.util.List;
@Repository
public interface IRoleMenuRepository extends IBaseRepository<RoleMenu, Long> {
// List<RoleMenu> findByRoleId(Long roleId);
@Query("SELECT rm.role FROM RoleMenu rm where rm.role.id = :roleId")
List<RoleMenu> findByRoleId(Long roleId);
//
// void deleteByRoleId(Long roleId);
//