X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=portal-BE%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fportal%2Fdomain%2Fdb%2Fep%2FEpAppRoleFunction.java;h=117167aaa6c3fffe78f158f7924fe164c335e3e1;hb=ca3d9f4b725774763f12488940033a294b778244;hp=8a60688be7603fab49a8b16efc478af768cebcc5;hpb=672b45b653ef0e88b13c337e598307ad66931390;p=portal.git diff --git a/portal-BE/src/main/java/org/onap/portal/domain/db/ep/EpAppRoleFunction.java b/portal-BE/src/main/java/org/onap/portal/domain/db/ep/EpAppRoleFunction.java index 8a60688b..117167aa 100644 --- a/portal-BE/src/main/java/org/onap/portal/domain/db/ep/EpAppRoleFunction.java +++ b/portal-BE/src/main/java/org/onap/portal/domain/db/ep/EpAppRoleFunction.java @@ -53,11 +53,14 @@ import javax.persistence.Index; import javax.persistence.JoinColumn; import javax.persistence.JoinColumns; import javax.persistence.ManyToOne; +import javax.persistence.NamedQueries; +import javax.persistence.NamedQuery; import javax.persistence.Table; import javax.validation.Valid; import javax.validation.constraints.Digits; import javax.validation.constraints.NotNull; import lombok.AllArgsConstructor; +import lombok.Builder; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; @@ -82,42 +85,51 @@ CREATE TABLE `ep_app_role_function` ( ) */ +@NamedQueries({ + @NamedQuery( + name = "EpAppRoleFunction.getAppRoleFunctionOnRoleIdAndAppId", + query = "from EpAppRoleFunction where appId.id = :appId and fnRole.id = :roleId" + ) +}) + @Table(name = "ep_app_role_function", indexes = { - @Index(name = "fk_ep_app_role_function_ep_app_func_role_id", columnList = "app_id, role_id, function_cd", unique = true), - @Index(name = "fk_ep_app_role_function_ep_app_func", columnList = "app_id, function_cd"), - @Index(name = "fk_ep_app_role_function_role_id", columnList = "role_id") + @Index(name = "fk_ep_app_role_function_ep_app_func_role_id", columnList = "app_id, role_id, function_cd", unique = true), + @Index(name = "fk_ep_app_role_function_ep_app_func", columnList = "app_id, function_cd"), + @Index(name = "fk_ep_app_role_function_role_id", columnList = "role_id") }) @NoArgsConstructor @AllArgsConstructor @Getter @Setter @Entity +@Builder public class EpAppRoleFunction implements Serializable { - @Id - @GeneratedValue(strategy = GenerationType.AUTO) - @Column(name = "id", length = 11, nullable = false, columnDefinition = "int(11) NOT NULL AUTO_INCREMENT") - @Digits(integer = 11, fraction = 0) - private Integer id; - @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL) - @JoinColumn(name = "app_id", insertable = false, updatable = false) - @Valid - @NotNull - private FnApp appId; - @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL) - @JoinColumn(name = "role_id") - @Valid - @NotNull - private FnRole fnRole; - @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL) - @JoinColumns({ - @JoinColumn(name = "app_id", referencedColumnName = "app_id"), - @JoinColumn(name = "function_cd", referencedColumnName = "function_cd") - }) - @Valid - @NotNull - private EpAppFunction epAppFunction; - @Column(name = "role_app_id", length = 20) - @Digits(integer = 20, fraction = 0) - @SafeHtml - private String roleAppId; + + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + @Column(name = "id", length = 11, nullable = false, columnDefinition = "int(11) AUTO_INCREMENT") + @Digits(integer = 11, fraction = 0) + private Integer id; + @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.MERGE) + @JoinColumn(name = "app_id", insertable = false, updatable = false, columnDefinition = "bigint") + @Valid + @NotNull + private FnApp appId; + @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.MERGE) + @JoinColumn(name = "role_id", columnDefinition = "bigint") + @Valid + @NotNull + private FnRole fnRole; + @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.MERGE) + @JoinColumns({ + @JoinColumn(name = "app_id", referencedColumnName = "app_id"), + @JoinColumn(name = "function_cd", referencedColumnName = "function_cd") + }) + @Valid + @NotNull + private EpAppFunction epAppFunction; + @Column(name = "role_app_id", length = 20) + @Digits(integer = 20, fraction = 0) + @SafeHtml + private String roleAppId; }