src/Entity/Referral.php line 194

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace App\Entity;
  4. use ApiPlatform\Core\Annotation\ApiResource;
  5. use ApiPlatform\Core\Annotation\ApiSubresource;
  6. use App\Controller\Referral\DeleteReferral;
  7. use App\Controller\Referral\SubmitReferral;
  8. use App\Controller\Referral\CopyReferral;
  9. use App\Controller\ReferralDocument\UploadReferralDocument;
  10. use Doctrine\Common\Collections\ArrayCollection;
  11. use Doctrine\Common\Collections\Collection;
  12. use Doctrine\ORM\Mapping as ORM;
  13. use Symfony\Component\Serializer\Annotation\Groups;
  14. use Symfony\Component\Validator\Constraints\Type;
  15. use Symfony\Component\Validator\Constraints as Assert;
  16. /**
  17. * @ORM\Entity
  18. * @ApiResource(iri = "http://schema.org/Thing", collectionOperations = {
  19. "get" = {
  20. "access_control" = "is_granted('ROLE_USER')",
  21. "method" = "GET",
  22. "normalization_context" = {
  23. "groups" = {
  24. "output"
  25. }
  26. },
  27. "denormalization_context" = {
  28. "groups" = {
  29. "input"
  30. }
  31. }
  32. },
  33. "post" = {
  34. "access_control" = "is_granted('ROLE_USER')",
  35. "method" = "POST",
  36. "normalization_context" = {
  37. "groups" = {
  38. "output"
  39. }
  40. },
  41. "denormalization_context" = {
  42. "groups" = {
  43. "input"
  44. }
  45. }
  46. },
  47. "generate_report"={
  48. "access_control"="is_granted('ROLE_USER')",
  49. "method"="POST",
  50. "path"="/referrals/generate-report",
  51. "controller"="App\Controller\Referral\ReferralReportController::generateReport",
  52. "denormalization_context"={"groups"={"generate_report"}},
  53. "normalization_context"={"groups"={"output"}},
  54. }
  55. }, itemOperations = {
  56. "delete" = {
  57. "access_control" = "is_granted('IS_OWNER', object) or is_granted('ROLE_ADMIN') or is_granted('ROLE_SUPER_ADMIN')",
  58. "controller" = DeleteReferral::class,
  59. "normalization_context" = {
  60. "groups" = {
  61. "output"
  62. }
  63. },
  64. "denormalization_context" = {
  65. "groups" = {
  66. "input"
  67. }
  68. }
  69. },
  70. "get" = {
  71. "access_control" = "is_granted('IS_OWNER', object) or is_granted('ROLE_ADMIN') or is_granted('ROLE_SUPER_ADMIN')",
  72. "method" = "GET",
  73. "normalization_context" = {
  74. "groups" = {
  75. "output"
  76. }
  77. },
  78. "denormalization_context" = {
  79. "groups" = {
  80. "input"
  81. }
  82. }
  83. },
  84. "put" = {
  85. "access_control" = "is_granted('IS_OWNER', object) or is_granted('ROLE_ADMIN') or is_granted('ROLE_SUPER_ADMIN')",
  86. "method" = "PUT",
  87. "normalization_context" = {
  88. "groups" = {
  89. "output"
  90. }
  91. },
  92. "denormalization_context" = {
  93. "groups" = {
  94. "input"
  95. }
  96. }
  97. },
  98. "submit_referral" = {
  99. "access_control" = "is_granted('IS_OWNER', object) or is_granted('ROLE_ADMIN') or is_granted('ROLE_SUPER_ADMIN')",
  100. "method" = "POST",
  101. "path" = "/referrals/{id}/submit",
  102. "controller" = SubmitReferral::class,
  103. "normalization_context" = {
  104. "groups" = {
  105. "output"
  106. }
  107. },
  108. "denormalization_context" = {
  109. "groups" = {
  110. "input"
  111. }
  112. }
  113. },
  114. "copy_referral" = {
  115. "access_control" = "is_granted('IS_OWNER', object) or is_granted('ROLE_ADMIN') or is_granted('ROLE_SUPER_ADMIN')",
  116. "method" = "POST",
  117. "path" = "/referrals/{id}/copy",
  118. "controller" = CopyReferral::class,
  119. "normalization_context" = {
  120. "groups" = {
  121. "output"
  122. }
  123. },
  124. "denormalization_context" = {
  125. "groups" = {
  126. "input"
  127. }
  128. }
  129. },
  130. "post_referral_document" = {
  131. "access_control" = "is_granted('IS_OWNER', object)",
  132. "method" = "POST",
  133. "path" = "/referrals/{id}/referral_documents",
  134. "controller" = UploadReferralDocument::class,
  135. "deserialize" = false,
  136. "normalization_context" = {
  137. "groups" = {
  138. "output"
  139. }
  140. },
  141. "denormalization_context" = {
  142. "groups" = {
  143. "input"
  144. }
  145. },
  146. "openapi_context" = {
  147. "requestBody" = {
  148. "content" = {
  149. "multipart/form-data" = {
  150. "schema" = {
  151. "type" = "object",
  152. "properties" = {
  153. "file" = {
  154. "type" = "string",
  155. "format" = "binary",
  156. }
  157. }
  158. }
  159. }
  160. }
  161. }
  162. }
  163. }
  164. }, attributes = {
  165. "filters" = {
  166. "referral.search_filter",
  167. "referral.order_filter",
  168. "referral.date_filter",
  169. "referral.not_equals_filter",
  170. "referral.childName_filter",
  171. "referral.referrerName_filter",
  172. "referral.createdByName_filter",
  173. "referral.null_filter"
  174. },
  175. "normalization_context" = {
  176. "groups" = {
  177. ""
  178. }
  179. },
  180. "denormalization_context" = {
  181. "groups" = {
  182. ""
  183. }
  184. },
  185. "pagination_items_per_page" = 10,
  186. "pagination_client_items_per_page" = true
  187. })*
  188. * @see http://schema.org/Thing Documentation on Schema.org
  189. */
  190. class Referral extends AbstractTimestamp
  191. {
  192. const STATUS_DRAFT = 'Draft';
  193. const STATUS_SUBMITTED = 'Submitted';
  194. const STATUS_RECEIVED = 'Received';
  195. const STATUS_PROCESSED = 'Processed';
  196. const STATUS_ELIGIBLE = 'Eligible';
  197. const STATUS_NOT_ELIGIBLE = 'Not Eligible';
  198. const STATUS_REJECTED = 'Rejected';
  199. const STATUS_UNABLE_TO_CONTACT = 'Unable to Contact';
  200. /**
  201. * @ORM\Id
  202. * @ORM\GeneratedValue(strategy="AUTO")
  203. * @ORM\Column(type="integer")
  204. * @Groups({"output"})
  205. *
  206. * @var int|null
  207. */
  208. protected $id;
  209. /**
  210. * @ORM\Column(type="boolean", nullable=true)
  211. *
  212. * @var bool|null
  213. */
  214. protected $disabled;
  215. /**
  216. * @ORM\Column(type="boolean", nullable=true)
  217. * @Groups({"output", "input"})
  218. *
  219. * @var bool|null
  220. */
  221. protected $familyApproval;
  222. /**
  223. * @ORM\Column(type="boolean", nullable=true)
  224. * @Groups({"output", "input"})
  225. *
  226. * @var bool|null
  227. */
  228. protected $hasBeenCopied;
  229. /**
  230. * @ORM\Column(type="boolean", nullable=true)
  231. * @Groups({"output", "input"})
  232. *
  233. * @var bool|null
  234. */
  235. protected $isCAPTA;
  236. /**
  237. * @ORM\Column(type="boolean", nullable=true)
  238. * @Groups({"output", "input"})
  239. *
  240. * @var bool|null
  241. */
  242. protected $isAudiologistScreening;
  243. /**
  244. * @ORM\Column(type="boolean", nullable=true)
  245. * @Groups({"output", "input"})
  246. *
  247. * @var bool|null
  248. */
  249. protected $isHospitalBirth;
  250. /**
  251. * @ORM\Column(type="boolean", nullable=true)
  252. * @Groups({"output", "input"})
  253. *
  254. * @var bool|null
  255. */
  256. protected $isHispanicChild;
  257. /**
  258. * @ORM\Column(type="integer", nullable=true)
  259. * @Groups({"output", "input"})
  260. *
  261. * @var int|null
  262. */
  263. protected $childParentConsent;
  264. /**
  265. * @ORM\Column(type="string", length=100, nullable=true)
  266. * @Groups({"output", "input"})
  267. *
  268. * @var string|null
  269. */
  270. protected $submissionId;
  271. /**
  272. * @ORM\Column(type="datetime", nullable=true)
  273. * @Groups({"output", "input"})
  274. *
  275. * @var \DateTimeInterface|null
  276. *
  277. * @Assert\Type("\DateTimeInterface")
  278. */
  279. protected $submissionDate;
  280. /**
  281. * @ORM\Column(type="datetime", nullable=true)
  282. * @Groups({"output"})
  283. *
  284. * @var \DateTimeInterface|null
  285. *
  286. * @Assert\Type("\DateTimeInterface")
  287. */
  288. protected $statusUpdatedAt;
  289. /**
  290. * @ORM\Column(type="string", length=100, nullable=false)
  291. * @Groups({"output", "input"})
  292. *
  293. * @var string|null
  294. */
  295. protected $status;
  296. /**
  297. * @ORM\Column(type="string", length=2000, nullable=true)
  298. * @Groups({"output", "input"})
  299. *
  300. * @var string|null
  301. */
  302. protected $additionalDetails;
  303. /**
  304. * @ORM\Column(type="text", nullable=true)
  305. * @Groups({"output"})
  306. *
  307. * @var string|null
  308. */
  309. protected $comments;
  310. /**
  311. * @ORM\Column(type="text", nullable=true)
  312. * @Groups({"output"})
  313. *
  314. * @var string|null
  315. */
  316. protected $serviceCoordinator;
  317. /**
  318. * @ORM\Column(type="text", nullable=true)
  319. * @Groups({"output"})
  320. *
  321. * @var string|null
  322. */
  323. protected $serviceCoordinatorEs;
  324. /**
  325. * @ORM\Column(type="text", nullable=true)
  326. * @Groups({"output"})
  327. *
  328. * @var string|null
  329. */
  330. protected $eligibilityDetermination;
  331. /**
  332. * @ORM\Column(type="text", nullable=true)
  333. * @Groups({"output"})
  334. *
  335. * @var string|null
  336. */
  337. protected $eligibilityDeterminationEs;
  338. /**
  339. * @ORM\Column(type="text", nullable=true)
  340. * @Groups({"output"})
  341. *
  342. * @var string|null
  343. */
  344. protected $statusDetails;
  345. /**
  346. * @ORM\Column(type="text", nullable=true)
  347. * @Groups({"output"})
  348. *
  349. * @var string|null
  350. */
  351. protected $statusDetailsEs;
  352. /**
  353. * @ORM\Column(type="string", length=100, nullable=true)
  354. * @Groups({"output", "input"})
  355. *
  356. * @var string|null
  357. */
  358. protected $referrerFirstName;
  359. /**
  360. * @ORM\Column(type="string", length=100, nullable=true)
  361. * @Groups({"output", "input"})
  362. *
  363. * @var string|null
  364. */
  365. protected $referrerMiddleName;
  366. /**
  367. * @ORM\Column(type="string", length=100, nullable=true)
  368. * @Groups({"output", "input"})
  369. *
  370. * @var string|null
  371. */
  372. protected $referrerLastName;
  373. /**
  374. * @ORM\Column(type="integer", nullable=true)
  375. * @Groups({"output", "input"})
  376. *
  377. * @var int|null
  378. */
  379. protected $gestationalAgeInDays;
  380. /**
  381. * @ORM\Column(type="string", length=100, nullable=true)
  382. * @Groups({"output", "input"})
  383. *
  384. * @var string|null
  385. */
  386. protected $familyNeedsInterpreter;
  387. /**
  388. * @ORM\Column(type="string", length=100, nullable=true)
  389. * @Groups({"output", "input"})
  390. *
  391. * @var string|null
  392. */
  393. protected $childInFosterCare;
  394. /**
  395. * @ORM\Column(type="string", length=1000, nullable=true)
  396. * @Groups({"output", "input"})
  397. *
  398. * @var string|null
  399. */
  400. protected $referralSourceOther;
  401. /**
  402. * @ORM\Column(type="datetime", nullable=true)
  403. * @Groups({"output", "input"})
  404. *
  405. * @var \DateTimeInterface|null
  406. *
  407. * @Assert\Type("\DateTimeInterface")
  408. */
  409. protected $failedScreeningDate;
  410. /**
  411. * @ORM\Column(type="string", length=255, nullable=true)
  412. * @Groups({"output", "input"})
  413. *
  414. * @var string|null
  415. */
  416. protected $otherMedicalCondition;
  417. /**
  418. * @ORM\ManyToOne(targetEntity="App\Entity\Lookup")
  419. * @ORM\JoinColumn(referencedColumnName="id")
  420. * @Groups({"output", "input"})
  421. *
  422. * @var Lookup|null
  423. */
  424. protected $referrerRelationship;
  425. /**
  426. * @ORM\ManyToOne(targetEntity="App\Entity\Lookup")
  427. * @ORM\JoinColumn(referencedColumnName="id")
  428. * @Groups({"output", "input"})
  429. *
  430. * @var Lookup|null
  431. */
  432. protected $referrerPrefix;
  433. /**
  434. * @ORM\ManyToOne(targetEntity="App\Entity\Lookup")
  435. * @ORM\JoinColumn(referencedColumnName="id")
  436. * @Groups({"output", "input"})
  437. *
  438. * @var Lookup|null
  439. */
  440. protected $referrerSuffix;
  441. /**
  442. * @ORM\ManyToOne(targetEntity="App\Entity\Lookup")
  443. * @ORM\JoinColumn(referencedColumnName="id")
  444. * @Groups({"output", "input"})
  445. *
  446. * @var Lookup|null
  447. */
  448. protected $gender;
  449. /**
  450. * @ORM\ManyToOne(targetEntity="App\Entity\Lookup")
  451. * @ORM\JoinColumn(referencedColumnName="id")
  452. * @Groups({"output", "input"})
  453. *
  454. * @var Lookup|null
  455. */
  456. protected $primaryLanguage;
  457. /**
  458. * @ORM\ManyToOne(targetEntity="App\Entity\Lookup")
  459. * @ORM\JoinColumn(referencedColumnName="id")
  460. * @Groups({"output", "input"})
  461. *
  462. * @var Lookup|null
  463. */
  464. protected $familyPrimaryLanguage;
  465. /**
  466. * @ORM\ManyToOne(targetEntity="App\Entity\Address")
  467. * @ORM\JoinColumn(referencedColumnName="id")
  468. * @Groups({"output", "input"})
  469. *
  470. * @var Address|null
  471. */
  472. protected $address;
  473. /**
  474. * @ORM\ManyToOne(targetEntity="App\Entity\Child", inversedBy="referrals")
  475. * @Groups({"output", "input"})
  476. * @ORM\JoinColumn(referencedColumnName="id")
  477. * @var Child|null
  478. */
  479. protected $child;
  480. /**
  481. * @ORM\OneToMany(targetEntity="App\Entity\Adult", mappedBy="referral")
  482. * @ORM\JoinColumn(referencedColumnName="id")
  483. * @Groups({"output"})
  484. *
  485. * @var Collection<Adult>
  486. *
  487. * @Assert\NotNull
  488. */
  489. protected $adults;
  490. /**
  491. * @ORM\ManyToOne(targetEntity="App\Entity\User")
  492. * @ORM\JoinColumn(referencedColumnName="id")
  493. * @Groups({"output"})
  494. *
  495. * @var User|null
  496. */
  497. protected $createdBy;
  498. /**
  499. * @ORM\ManyToOne(targetEntity="App\Entity\PhoneNumber")
  500. * @ORM\JoinColumn(referencedColumnName="id")
  501. * @Groups({"output", "input"})
  502. *
  503. * @var PhoneNumber|null
  504. */
  505. protected $referrerPhoneNumber;
  506. /**
  507. * @ORM\OneToMany(targetEntity="App\Entity\ReferralDocument", mappedBy="referral")
  508. * @ORM\JoinColumn(referencedColumnName="id")
  509. * @ApiSubresource
  510. * @Groups({"output"})
  511. *
  512. * @var Collection<ReferralDocument>
  513. *
  514. * @Assert\NotNull
  515. */
  516. protected $referralDocuments;
  517. /**
  518. * @ORM\ManyToMany(targetEntity="App\Entity\Lookup")
  519. * @ORM\JoinTable(name="referral_lookup",
  520. * joinColumns={@ORM\JoinColumn(name="referral_id", referencedColumnName="id")},
  521. * inverseJoinColumns={@ORM\JoinColumn(name="lookup_id", referencedColumnName="id")}
  522. * )
  523. * @Groups({"input", "output"})
  524. *
  525. * @var Collection<Lookup>|null
  526. */
  527. protected $referralReasons;
  528. /**
  529. * @ORM\ManyToMany(targetEntity="App\Entity\Lookup")
  530. * @ORM\JoinTable(name="referral_race",
  531. * joinColumns={@ORM\JoinColumn(name="referral_id", referencedColumnName="id")},
  532. * inverseJoinColumns={@ORM\JoinColumn(name="lookup_id", referencedColumnName="id")}
  533. * )
  534. * @Groups({"input", "output"})
  535. *
  536. * @var Collection<Lookup>|null
  537. */
  538. protected $races;
  539. /**
  540. * @ORM\OneToMany(targetEntity="App\Entity\AuthenticationToken", mappedBy="referral")
  541. * @ORM\JoinColumn(referencedColumnName="id")
  542. *
  543. * @var Collection<AuthenticationToken>
  544. *
  545. * @Assert\NotNull
  546. */
  547. protected $authenticationTokens;
  548. public function __construct()
  549. {
  550. $this->adults = new ArrayCollection();
  551. $this->referralDocuments = new ArrayCollection();
  552. $this->referralReasons = new ArrayCollection();
  553. $this->races = new ArrayCollection();
  554. $this->authenticationTokens = new ArrayCollection();
  555. }
  556. public function getId(): ?int
  557. {
  558. return $this->id;
  559. }
  560. public function setDisabled(?bool $disabled): self
  561. {
  562. $this->disabled = $disabled;
  563. return $this;
  564. }
  565. public function getDisabled(): ?bool
  566. {
  567. return $this->disabled;
  568. }
  569. public function setFamilyApproval(?bool $familyApproval): self
  570. {
  571. $this->familyApproval = $familyApproval;
  572. return $this;
  573. }
  574. public function getFamilyApproval(): ?bool
  575. {
  576. return $this->familyApproval;
  577. }
  578. public function setIsCAPTA(?bool $isCAPTA): self
  579. {
  580. $this->isCAPTA = $isCAPTA;
  581. return $this;
  582. }
  583. public function getIsCAPTA(): ?bool
  584. {
  585. return $this->isCAPTA;
  586. }
  587. public function setIsAudiologistScreening(?bool $isAudiologistScreening): self
  588. {
  589. $this->isAudiologistScreening = $isAudiologistScreening;
  590. return $this;
  591. }
  592. public function getIsAudiologistScreening(): ?bool
  593. {
  594. return $this->isAudiologistScreening;
  595. }
  596. public function setIsHospitalBirth(?bool $isHospitalBirth): self
  597. {
  598. $this->isHospitalBirth = $isHospitalBirth;
  599. return $this;
  600. }
  601. public function getIsHospitalBirth(): ?bool
  602. {
  603. return $this->isHospitalBirth;
  604. }
  605. public function sethasBeenCopied(?bool $hasBeenCopied): self
  606. {
  607. $this->hasBeenCopied = $hasBeenCopied;
  608. return $this;
  609. }
  610. public function gethasBeenCopied(): ?bool
  611. {
  612. return $this->hasBeenCopied;
  613. }
  614. public function setIsHispanicChild(?bool $isHispanicChild): self
  615. {
  616. $this->isHispanicChild = $isHispanicChild;
  617. return $this;
  618. }
  619. public function getIsHispanicChild(): ?bool
  620. {
  621. return $this->isHispanicChild;
  622. }
  623. public function setChildParentConsent(?int $childParentConsent): self
  624. {
  625. $this->childParentConsent = $childParentConsent;
  626. return $this;
  627. }
  628. public function getChildParentConsent(): ?int
  629. {
  630. return $this->childParentConsent;
  631. }
  632. public function setSubmissionId(?string $submissionId): self
  633. {
  634. $this->submissionId = $submissionId;
  635. return $this;
  636. }
  637. public function getSubmissionId(): ?string
  638. {
  639. return $this->submissionId;
  640. }
  641. public function setSubmissionDate(?\DateTimeInterface $submissionDate): self
  642. {
  643. $this->submissionDate = $submissionDate;
  644. return $this;
  645. }
  646. public function getSubmissionDate(): ?\DateTimeInterface
  647. {
  648. return $this->submissionDate;
  649. }
  650. public function setStatusUpdatedAt(?\DateTimeInterface $statusUpdatedAt): self
  651. {
  652. $this->statusUpdatedAt = $statusUpdatedAt;
  653. return $this;
  654. }
  655. public function getStatusUpdatedAt(): ?\DateTimeInterface
  656. {
  657. return $this->statusUpdatedAt;
  658. }
  659. public function setStatus(?string $status): self
  660. {
  661. $this->status = $status;
  662. return $this;
  663. }
  664. public function getStatus(): ?string
  665. {
  666. return $this->status;
  667. }
  668. public function setAdditionalDetails(?string $additionalDetails): self
  669. {
  670. $this->additionalDetails = $additionalDetails;
  671. return $this;
  672. }
  673. public function getAdditionalDetails(): ?string
  674. {
  675. return $this->additionalDetails;
  676. }
  677. public function setComments(?string $comments): self
  678. {
  679. $this->comments = $comments;
  680. return $this;
  681. }
  682. public function getComments(): ?string
  683. {
  684. return $this->comments;
  685. }
  686. public function setServiceCoordinator(?string $serviceCoordinator): self
  687. {
  688. $this->serviceCoordinator = $serviceCoordinator;
  689. return $this;
  690. }
  691. public function getServiceCoordinator(): ?string
  692. {
  693. return $this->serviceCoordinator;
  694. }
  695. public function setServiceCoordinatorEs(?string $serviceCoordinatorEs): self
  696. {
  697. $this->serviceCoordinatorEs = $serviceCoordinatorEs;
  698. return $this;
  699. }
  700. public function getServiceCoordinatorEs(): ?string
  701. {
  702. return $this->serviceCoordinatorEs;
  703. }
  704. public function setEligibilityDetermination(?string $eligibilityDetermination): self
  705. {
  706. $this->eligibilityDetermination = $eligibilityDetermination;
  707. return $this;
  708. }
  709. public function getEligibilityDetermination(): ?string
  710. {
  711. return $this->eligibilityDetermination;
  712. }
  713. public function setEligibilityDeterminationEs(?string $eligibilityDeterminationEs): self
  714. {
  715. $this->eligibilityDeterminationEs = $eligibilityDeterminationEs;
  716. return $this;
  717. }
  718. public function getEligibilityDeterminationEs(): ?string
  719. {
  720. return $this->eligibilityDeterminationEs;
  721. }
  722. public function setStatusDetails(?string $statusDetails): self
  723. {
  724. $this->statusDetails = $statusDetails;
  725. return $this;
  726. }
  727. public function getStatusDetails(): ?string
  728. {
  729. return $this->statusDetails;
  730. }
  731. public function setStatusDetailsEs(?string $statusDetailsEs): self
  732. {
  733. $this->statusDetailsEs = $statusDetailsEs;
  734. return $this;
  735. }
  736. public function getStatusDetailsEs(): ?string
  737. {
  738. return $this->statusDetailsEs;
  739. }
  740. public function setReferrerFirstName(?string $referrerFirstName): self
  741. {
  742. $this->referrerFirstName = $referrerFirstName;
  743. return $this;
  744. }
  745. public function getReferrerFirstName(): ?string
  746. {
  747. return $this->referrerFirstName;
  748. }
  749. public function setReferrerMiddleName(?string $referrerMiddleName): self
  750. {
  751. $this->referrerMiddleName = $referrerMiddleName;
  752. return $this;
  753. }
  754. public function getReferrerMiddleName(): ?string
  755. {
  756. return $this->referrerMiddleName;
  757. }
  758. public function setReferrerLastName(?string $referrerLastName): self
  759. {
  760. $this->referrerLastName = $referrerLastName;
  761. return $this;
  762. }
  763. public function getReferrerLastName(): ?string
  764. {
  765. return $this->referrerLastName;
  766. }
  767. public function setGestationalAgeInDays(?int $gestationalAgeInDays): self
  768. {
  769. $this->gestationalAgeInDays = $gestationalAgeInDays;
  770. return $this;
  771. }
  772. public function getGestationalAgeInDays(): ?int
  773. {
  774. return $this->gestationalAgeInDays;
  775. }
  776. public function setFamilyNeedsInterpreter(?string $familyNeedsInterpreter): self
  777. {
  778. $this->familyNeedsInterpreter = $familyNeedsInterpreter;
  779. return $this;
  780. }
  781. public function getFamilyNeedsInterpreter(): ?string
  782. {
  783. return $this->familyNeedsInterpreter;
  784. }
  785. public function setChildInFosterCare(?string $childInFosterCare): self
  786. {
  787. $this->childInFosterCare = $childInFosterCare;
  788. return $this;
  789. }
  790. public function getChildInFosterCare(): ?string
  791. {
  792. return $this->childInFosterCare;
  793. }
  794. public function setReferralSourceOther(?string $referralSourceOther): self
  795. {
  796. $this->referralSourceOther = $referralSourceOther;
  797. return $this;
  798. }
  799. public function getReferralSourceOther(): ?string
  800. {
  801. return $this->referralSourceOther;
  802. }
  803. public function setFailedScreeningDate(?\DateTimeInterface $failedScreeningDate): self
  804. {
  805. $this->failedScreeningDate = $failedScreeningDate;
  806. return $this;
  807. }
  808. public function getFailedScreeningDate(): ?\DateTimeInterface
  809. {
  810. return $this->failedScreeningDate;
  811. }
  812. public function setOtherMedicalCondition(?string $otherMedicalCondition): self
  813. {
  814. $this->otherMedicalCondition = $otherMedicalCondition;
  815. return $this;
  816. }
  817. public function getOtherMedicalCondition(): ?string
  818. {
  819. return $this->otherMedicalCondition;
  820. }
  821. public function setReferrerRelationship(?Lookup $referrerRelationship): self
  822. {
  823. $this->referrerRelationship = $referrerRelationship;
  824. return $this;
  825. }
  826. public function getReferrerRelationship(): ?Lookup
  827. {
  828. return $this->referrerRelationship;
  829. }
  830. public function setReferrerPrefix(?Lookup $referrerPrefix): self
  831. {
  832. $this->referrerPrefix = $referrerPrefix;
  833. return $this;
  834. }
  835. public function getReferrerPrefix(): ?Lookup
  836. {
  837. return $this->referrerPrefix;
  838. }
  839. public function setReferrerSuffix(?Lookup $referrerSuffix): self
  840. {
  841. $this->referrerSuffix = $referrerSuffix;
  842. return $this;
  843. }
  844. public function getReferrerSuffix(): ?Lookup
  845. {
  846. return $this->referrerSuffix;
  847. }
  848. public function setGender(?Lookup $gender): self
  849. {
  850. $this->gender = $gender;
  851. return $this;
  852. }
  853. public function getGender(): ?Lookup
  854. {
  855. return $this->gender;
  856. }
  857. public function setPrimaryLanguage(?Lookup $primaryLanguage): self
  858. {
  859. $this->primaryLanguage = $primaryLanguage;
  860. return $this;
  861. }
  862. public function getPrimaryLanguage(): ?Lookup
  863. {
  864. return $this->primaryLanguage;
  865. }
  866. public function setFamilyPrimaryLanguage(?Lookup $familyPrimaryLanguage): self
  867. {
  868. $this->familyPrimaryLanguage = $familyPrimaryLanguage;
  869. return $this;
  870. }
  871. public function getFamilyPrimaryLanguage(): ?Lookup
  872. {
  873. return $this->familyPrimaryLanguage;
  874. }
  875. public function setAddress(?Address $address): self
  876. {
  877. $this->address = $address;
  878. return $this;
  879. }
  880. public function getAddress(): ?Address
  881. {
  882. return $this->address;
  883. }
  884. public function setChild(?Child $child): self
  885. {
  886. $this->child = $child;
  887. return $this;
  888. }
  889. public function getChild(): ?Child
  890. {
  891. return $this->child;
  892. }
  893. public function addAdult(Adult $adult): self
  894. {
  895. $this->adults[] = $adult;
  896. return $this;
  897. }
  898. public function removeAdult(Adult $adult): self
  899. {
  900. $this->adults->removeElement($adult);
  901. return $this;
  902. }
  903. public function getAdults(): Collection
  904. {
  905. return $this->adults;
  906. }
  907. public function setReferrerPhoneNumber(?PhoneNumber $referrerPhoneNumber): self
  908. {
  909. $this->referrerPhoneNumber = $referrerPhoneNumber;
  910. return $this;
  911. }
  912. public function getReferrerPhoneNumber(): ?PhoneNumber
  913. {
  914. return $this->referrerPhoneNumber;
  915. }
  916. public function addReferralDocument(ReferralDocument $referralDocument): self
  917. {
  918. $this->referralDocuments[] = $referralDocument;
  919. return $this;
  920. }
  921. public function removeReferralDocument(ReferralDocument $referralDocument): self
  922. {
  923. $this->referralDocuments->removeElement($referralDocument);
  924. return $this;
  925. }
  926. public function getReferralDocuments(): Collection
  927. {
  928. return $this->referralDocuments;
  929. }
  930. public function addReferralReason(Lookup $referralReason): self
  931. {
  932. $this->referralReasons[] = $referralReason;
  933. return $this;
  934. }
  935. public function removeReferralReason(Lookup $referralReason): self
  936. {
  937. $this->referralReasons->removeElement($referralReason);
  938. return $this;
  939. }
  940. public function getReferralReasons(): Collection
  941. {
  942. return $this->referralReasons;
  943. }
  944. public function addRace(Lookup $race): self
  945. {
  946. $this->races[] = $race;
  947. return $this;
  948. }
  949. public function removeRace(Lookup $race): self
  950. {
  951. $this->races->removeElement($race);
  952. return $this;
  953. }
  954. public function getRaces(): Collection
  955. {
  956. return $this->races;
  957. }
  958. public function addAuthenticationToken(AuthenticationToken $authenticationToken): self
  959. {
  960. $this->authenticationTokens[] = $authenticationToken;
  961. return $this;
  962. }
  963. public function removeAuthenticationToken(AuthenticationToken $authenticationToken): self
  964. {
  965. $this->authenticationTokens->removeElement($authenticationToken);
  966. return $this;
  967. }
  968. public function getAuthenticationTokens(): Collection
  969. {
  970. return $this->authenticationTokens;
  971. }
  972. }