diff --git a/src/main/java/Entities/Appointment.java b/src/main/java/Entities/Appointment.java index 9565383..4815c0d 100644 --- a/src/main/java/Entities/Appointment.java +++ b/src/main/java/Entities/Appointment.java @@ -7,16 +7,18 @@ @Table(name="Appointment") public class Appointment { @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) private int AppointmentID; @ManyToOne - @JoinColumn(name="PetOwnerID",referencedColumnName = "PetOwnerID") + @JoinColumn(name = "PetOwnerID", referencedColumnName = "PetOwnerID") private PetOwner PetOwnerID; - @ManyToOne - @JoinColumn(name="VetID",referencedColumnName = "VetID") + @JoinColumn(name = "VetID", referencedColumnName = "VetID") private Veterinarian VetID; private DateTimeLiteralExpression.DateTime AppointmentDate; - private int PetID; + @ManyToOne + @JoinColumn(name = "PetID", referencedColumnName = "PetID") + private Pet PetID; public int getAppointmentID() { return AppointmentID; } @@ -48,16 +50,10 @@ public DateTimeLiteralExpression.DateTime getAppointmentDate() { public void setAppointmentDate(DateTimeLiteralExpression.DateTime appointmentDate) { AppointmentDate = appointmentDate; } - - public int getPetID() { + public Pet getPetID() { return PetID; } - - public void setPetID(int petID) { + public void setPetID(Pet petID) { PetID = petID; } - - - - } diff --git a/src/main/java/Entities/Pet.java b/src/main/java/Entities/Pet.java new file mode 100644 index 0000000..49a8e39 --- /dev/null +++ b/src/main/java/Entities/Pet.java @@ -0,0 +1,52 @@ +package Entities; + +import jakarta.persistence.*; + +import java.util.List; + +@Entity +@Table(name = "Pet") +public class Pet { + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + private int PetID; + private String PetName; + private int Age; + @ManyToOne + @JoinColumn(name = "PetTypeID", referencedColumnName = "PetTypeID") + private PetType PetTypeID; + private String Description; + @OneToMany(mappedBy = "Appointments") + private List Appointments; + + public int getPetID() { + return PetID; + } + public void setPetID(int petID) { + PetID = petID; + } + public String getPetName() { + return PetName; + } + public void setPetName(String petName) { + PetName = petName; + } + public int getAge() { + return Age; + } + public void setAge(int age) { + Age = age; + } + public PetType getPetTypeID() { + return PetTypeID; + } + public void setPetTypeID(PetType petTypeID) { + PetTypeID = petTypeID; + } + public String getDescription() { + return Description; + } + public void setDescription(String description) { + Description = description; + } +} diff --git a/src/main/java/Entities/PetOwner.java b/src/main/java/Entities/PetOwner.java index 3537309..c19c09c 100644 --- a/src/main/java/Entities/PetOwner.java +++ b/src/main/java/Entities/PetOwner.java @@ -2,15 +2,21 @@ import jakarta.persistence.*; +import java.util.List; + @Entity @Table(name = "PetOwner") public class PetOwner{ @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) private int PetOwnerID; @OneToOne(cascade = CascadeType.ALL) @JoinColumn(name = "UserID", referencedColumnName = "UserID") - private User UserID; + private User User; private int PetID; - - private int VetID; + @ManyToOne + @JoinColumn(name = "VetID", referencedColumnName = "VetID") + private Veterinarian Vet; + @OneToMany(mappedBy = "Appointment") + private List Appointments; } diff --git a/src/main/java/Entities/User.java b/src/main/java/Entities/User.java index 61c7a63..4b01784 100644 --- a/src/main/java/Entities/User.java +++ b/src/main/java/Entities/User.java @@ -6,6 +6,7 @@ @Table(name = "User") public class User { @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) private int UserID; private String Name; private String Surname; @@ -14,9 +15,9 @@ public class User { @ManyToOne @JoinColumn(name = "UserTypeID", referencedColumnName = "UserTypeID") private UserType UserTypeID; - @OneToOne(mappedBy = "Veterinarian", cascade = CascadeType.ALL) + @OneToOne(mappedBy = "Veterinarian") private Veterinarian Vet; - @OneToOne(mappedBy = "PetOwner", cascade = CascadeType.ALL) + @OneToOne(mappedBy = "PetOwner") private PetOwner Owner; public int getUserID() { @@ -25,9 +26,11 @@ public int getUserID() { public void setUserID(int userID) { UserID = userID; } + public String getName() { return Name; } + public void setName(String name) { Name = name; } diff --git a/src/main/java/Entities/Veterinarian.java b/src/main/java/Entities/Veterinarian.java index b224962..4d9b5d2 100644 --- a/src/main/java/Entities/Veterinarian.java +++ b/src/main/java/Entities/Veterinarian.java @@ -2,15 +2,19 @@ import jakarta.persistence.*; +import java.util.List; + @Entity @Table(name = "Veterinarian") public class Veterinarian{ @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private int VetID; - @OneToOne - private User UserID; + @OneToMany(mappedBy = "PetOwner") + private List PetOwners; private String Clinic; + @OneToMany(mappedBy = "Appointment") + private List Appointments; public String getClinic() { return Clinic; @@ -18,16 +22,16 @@ public String getClinic() { public void setClinic(String clinic) { Clinic = clinic; } - public User getUserID() { - return UserID; - } - public void setUserID(User userID) { - UserID = userID; - } public int getVetID() { return VetID; } public void setVetID(int vetID) { VetID = vetID; } + public List getPetOwners() { + return PetOwners; + } + public void setPetOwners(List petOwners) { + PetOwners = petOwners; + } }