diff --git a/ass1-jpa/src/main/java/dst/ass1/jpa/model/impl/Organization.java b/ass1-jpa/src/main/java/dst/ass1/jpa/model/impl/Organization.java index bfce4f3..83619ca 100644 --- a/ass1-jpa/src/main/java/dst/ass1/jpa/model/impl/Organization.java +++ b/ass1-jpa/src/main/java/dst/ass1/jpa/model/impl/Organization.java @@ -7,17 +7,30 @@ import dst.ass1.jpa.model.IVehicle; import javax.persistence.*; import java.util.Collection; +import static dst.ass1.jpa.util.Constants.*; + @Entity public class Organization implements IOrganization { - @Id - @GeneratedValue(strategy = GenerationType.SEQUENCE) - private Long id; + @Id @GeneratedValue private Long id; private String name; - @ManyToMany + + @ManyToMany(targetEntity = Organization.class) + @JoinTable( + name = J_ORGANIZATION_PARTS, + joinColumns = @JoinColumn(name = I_ORGANIZATION_PART_OF), + inverseJoinColumns = @JoinColumn(name = I_ORGANIZATION_PARTS) + ) private Collection parts; - @ManyToMany(mappedBy = "parts") + + @ManyToMany(mappedBy = "parts", targetEntity = Organization.class) private Collection partOf; + @ManyToMany(targetEntity = Vehicle.class) + private Collection vehicles; + + @OneToMany(targetEntity = Employment.class) + private Collection employments; + public Organization() { }