Person.java 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185
  1. /*
  2. * Copyright (c) Andrew Grant of Carrick Software 18/03/2025, 01:50. All rights reserved.
  3. *
  4. */
  5. package scot.carricksoftware.grants.domains.people;
  6. import jakarta.persistence.CascadeType;
  7. import jakarta.persistence.Column;
  8. import jakarta.persistence.Entity;
  9. import jakarta.persistence.OneToMany;
  10. import scot.carricksoftware.grants.BaseEntity;
  11. import scot.carricksoftware.grants.domains.census.CensusEntry;
  12. import scot.carricksoftware.grants.domains.certificates.BirthCertificate;
  13. import scot.carricksoftware.grants.domains.certificates.DeathCertificate;
  14. import scot.carricksoftware.grants.domains.certificates.DivorceCertificate;
  15. import scot.carricksoftware.grants.domains.certificates.MarriageCertificate;
  16. import scot.carricksoftware.grants.domains.images.PersonImage;
  17. import scot.carricksoftware.grants.domains.text.PersonText;
  18. import java.util.ArrayList;
  19. import java.util.List;
  20. @Entity
  21. public class Person extends BaseEntity {
  22. @Column(name = "`first_name`")
  23. private String firstName;
  24. @Column(name = "`last_name`")
  25. String lastName;
  26. @Column(name = "`recorded_year_of_birth`")
  27. String recordedYearOfBirth;
  28. @Column(name = "`certified_year_of_birth`")
  29. String certifiedYearOfBirth;
  30. @Column(name = "`certified_year_of_death`")
  31. String certifiedYearOfDeath;
  32. @OneToMany(mappedBy = "id", cascade = CascadeType.ALL, orphanRemoval = true)
  33. private List<BirthCertificate> birthCertificates = new ArrayList<>();
  34. @OneToMany(mappedBy = "id", cascade = CascadeType.ALL, orphanRemoval = true)
  35. private List<DeathCertificate> deathCertificates = new ArrayList<>();
  36. @OneToMany(mappedBy = "id", cascade = CascadeType.ALL, orphanRemoval = true)
  37. private List<MarriageCertificate> marriageCertificates = new ArrayList<>();
  38. @OneToMany(mappedBy = "id", cascade = CascadeType.ALL, orphanRemoval = true)
  39. private List<DivorceCertificate> divorceCertificates = new ArrayList<>();
  40. @OneToMany(mappedBy = "id", cascade = CascadeType.ALL, orphanRemoval = true)
  41. private List<CensusEntry> censusEntries = new ArrayList<>();
  42. @OneToMany(mappedBy = "id", cascade = CascadeType.ALL, orphanRemoval = true)
  43. private List<PersonImage> personImages = new ArrayList<>();
  44. @OneToMany(mappedBy = "id", cascade = CascadeType.ALL, orphanRemoval = true)
  45. private List<PersonText> personTexts = new ArrayList<>();
  46. public String getFirstName() {
  47. return firstName;
  48. }
  49. public void setFirstName(String firstName) {
  50. this.firstName = firstName;
  51. }
  52. public String getLastName() {
  53. return lastName;
  54. }
  55. public void setLastName(String lastName) {
  56. this.lastName = lastName;
  57. }
  58. @Override
  59. public String toString() {
  60. StringBuilder builder = new StringBuilder();
  61. builder.append(this.lastName);
  62. builder.append(", ");
  63. builder.append(this.firstName);
  64. builder.append(", ");
  65. if (certifiedYearOfBirth != null && !certifiedYearOfBirth.isEmpty()) {
  66. builder.append(certifiedYearOfBirth);
  67. builder.append(" ");
  68. } else {
  69. if (recordedYearOfBirth != null && !recordedYearOfBirth.isEmpty()) {
  70. builder.append("(");
  71. builder.append(recordedYearOfBirth);
  72. builder.append(")");
  73. builder.append(" ");
  74. }
  75. }
  76. builder.append("-");
  77. if (certifiedYearOfDeath != null && !certifiedYearOfDeath.isEmpty()) {
  78. builder.append(certifiedYearOfDeath);
  79. builder.append(" ");
  80. }
  81. return builder.toString();
  82. }
  83. public String getRecordedYearOfBirth() {
  84. return recordedYearOfBirth;
  85. }
  86. public void setRecordedYearOfBirth(String recordedYearOfBirth) {
  87. this.recordedYearOfBirth = recordedYearOfBirth;
  88. }
  89. public String getCertifiedYearOfBirth() {
  90. return certifiedYearOfBirth;
  91. }
  92. public void setCertifiedYearOfBirth(String certifiedYearOfBirth) {
  93. this.certifiedYearOfBirth = certifiedYearOfBirth;
  94. }
  95. public List<BirthCertificate> getBirthCertificates() {
  96. return birthCertificates;
  97. }
  98. public void setBirthCertificates(List<BirthCertificate> birthCertificates) {
  99. this.birthCertificates = birthCertificates;
  100. }
  101. public List<DeathCertificate> getDeathCertificates() {
  102. return deathCertificates;
  103. }
  104. public void setDeathCertificates(List<DeathCertificate> deathCertificates) {
  105. this.deathCertificates = deathCertificates;
  106. }
  107. public List<MarriageCertificate> getMarriageCertificates() {
  108. return marriageCertificates;
  109. }
  110. public void setMarriageCertificates(List<MarriageCertificate> marriageCertificates) {
  111. this.marriageCertificates = marriageCertificates;
  112. }
  113. public List<DivorceCertificate> getDivorceCertificates() {
  114. return divorceCertificates;
  115. }
  116. public void setDivorceCertificates(List<DivorceCertificate> divorceCertificates) {
  117. this.divorceCertificates = divorceCertificates;
  118. }
  119. public List<CensusEntry> getCensusEntries() {
  120. return censusEntries;
  121. }
  122. public void setCensusEntries(List<CensusEntry> censusEntries) {
  123. this.censusEntries = censusEntries;
  124. }
  125. public List<PersonImage> getPersonImages() {
  126. return personImages;
  127. }
  128. public void setPersonImages(List<PersonImage> personImages) {
  129. this.personImages = personImages;
  130. }
  131. public List<PersonText> getPersonTexts() {
  132. return personTexts;
  133. }
  134. public void setPersonTexts(List<PersonText> personTexts) {
  135. this.personTexts = personTexts;
  136. }
  137. public String getCertifiedYearOfDeath() {
  138. return certifiedYearOfDeath;
  139. }
  140. public void setCertifiedYearOfDeath(String certifiedYearOfDeath) {
  141. this.certifiedYearOfDeath = certifiedYearOfDeath;
  142. }
  143. }