mirror of
https://github.com/Sheldan/abstracto.git
synced 2026-04-19 05:08:02 +00:00
[AB-62] adding server id to more tables for easier joins and fixing structure at more places
This commit is contained in:
@@ -2,6 +2,7 @@ package dev.sheldan.abstracto.assignableroles.models.database;
|
||||
|
||||
import dev.sheldan.abstracto.core.models.database.AEmote;
|
||||
import dev.sheldan.abstracto.core.models.database.ARole;
|
||||
import dev.sheldan.abstracto.core.models.database.AServer;
|
||||
import lombok.*;
|
||||
import org.hibernate.annotations.CacheConcurrencyStrategy;
|
||||
|
||||
@@ -35,20 +36,18 @@ public class AssignableRole implements Serializable {
|
||||
@JoinColumn(name = "role_id", nullable = false)
|
||||
private ARole role;
|
||||
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@JoinColumn(name = "server_id", nullable = false)
|
||||
private AServer server;
|
||||
|
||||
@ManyToOne(fetch = FetchType.LAZY, cascade = {CascadeType.PERSIST, CascadeType.MERGE})
|
||||
@Getter
|
||||
@Setter
|
||||
@JoinColumn(name = "assignable_place_id", nullable = false)
|
||||
private AssignableRolePlace assignablePlace;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@ManyToOne(fetch = FetchType.LAZY, cascade = {CascadeType.PERSIST, CascadeType.MERGE})
|
||||
@JoinColumn(name = "place_post_id")
|
||||
private AssignableRolePlacePost assignableRolePlacePost;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@ManyToMany(mappedBy = "roles")
|
||||
@Builder.Default
|
||||
@org.hibernate.annotations.Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
|
||||
|
||||
@@ -31,12 +31,12 @@ public class AssignableRolePlace implements Serializable {
|
||||
@Column(name = "id")
|
||||
private Long id;
|
||||
|
||||
@OneToOne
|
||||
@OneToOne(fetch = FetchType.LAZY)
|
||||
@JoinColumn(name="channel_id")
|
||||
private AChannel channel;
|
||||
|
||||
@OneToOne
|
||||
@JoinColumn(name="server_id")
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@JoinColumn(name = "server_id", nullable = false)
|
||||
private AServer server;
|
||||
|
||||
@Column(name = "key")
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package dev.sheldan.abstracto.assignableroles.models.database;
|
||||
|
||||
import dev.sheldan.abstracto.core.models.database.AChannel;
|
||||
import dev.sheldan.abstracto.core.models.database.AServer;
|
||||
import lombok.*;
|
||||
import org.hibernate.annotations.CacheConcurrencyStrategy;
|
||||
|
||||
@@ -26,7 +27,7 @@ public class AssignableRolePlacePost implements Serializable {
|
||||
@Column(name = "id")
|
||||
private Long id;
|
||||
|
||||
@ManyToOne
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@JoinColumn(name = "channel_id")
|
||||
private AChannel usedChannel;
|
||||
|
||||
@@ -36,9 +37,11 @@ public class AssignableRolePlacePost implements Serializable {
|
||||
@Column(name = "updated")
|
||||
private Instant updated;
|
||||
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@JoinColumn(name = "server_id", nullable = false)
|
||||
private AServer server;
|
||||
|
||||
@ManyToOne(fetch = FetchType.LAZY, cascade = {CascadeType.PERSIST, CascadeType.MERGE})
|
||||
@Getter
|
||||
@Setter
|
||||
@JoinColumn(name = "assignable_place_id", nullable = false)
|
||||
private AssignableRolePlace assignablePlace;
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@ public class AssignedRoleUser implements Serializable {
|
||||
@ManyToMany
|
||||
@JoinTable(
|
||||
name = "assigned_role_in_user",
|
||||
joinColumns = @JoinColumn(name = "user_id"),
|
||||
joinColumns = @JoinColumn(name = "user_in_server_id"),
|
||||
inverseJoinColumns = @JoinColumn(name = "assigned_role_id"))
|
||||
@org.hibernate.annotations.Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
|
||||
@Builder.Default
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package dev.sheldan.abstracto.assignableroles.service.management;
|
||||
|
||||
import dev.sheldan.abstracto.assignableroles.models.database.AssignableRolePlace;
|
||||
import dev.sheldan.abstracto.assignableroles.models.database.AssignableRolePlacePost;
|
||||
|
||||
import java.util.Optional;
|
||||
@@ -7,4 +8,5 @@ import java.util.Optional;
|
||||
public interface AssignableRolePlacePostManagementService {
|
||||
Optional<AssignableRolePlacePost> findByMessageIdOptional(Long messageId);
|
||||
AssignableRolePlacePost findByMessageId(Long messageId);
|
||||
AssignableRolePlacePost createAssignableRolePlacePost(AssignableRolePlace updatedPlace, Long messageId);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user