src/Entity/Clinics.php line 162

  1. <?php
  2. namespace App\Entity;
  3. use App\Repository\ClinicsRepository;
  4. use Doctrine\Common\Collections\ArrayCollection;
  5. use Doctrine\Common\Collections\Collection;
  6. use Doctrine\ORM\Mapping as ORM;
  7. #[ORM\Entity(repositoryClass: ClinicsRepository::class)]
  8. class Clinics
  9. {
  10. #[ORM\Id]
  11. #[ORM\GeneratedValue]
  12. #[ORM\Column(type: 'integer')]
  13. private $id;
  14. #[ORM\Column(type: 'string', length: 255)]
  15. private $clinicName;
  16. #[ORM\Column(type: 'string', length: 255)]
  17. private $telephone;
  18. #[ORM\Column(type: 'string', length: 255)]
  19. private $email;
  20. #[ORM\Column(type: 'datetime')]
  21. private $modified;
  22. #[ORM\Column(type: 'datetime')]
  23. private $created;
  24. #[ORM\OneToMany(targetEntity: Addresses::class, mappedBy: 'clinic')]
  25. private $addresses;
  26. #[ORM\OneToMany(targetEntity: Baskets::class, mappedBy: 'clinic')]
  27. private $baskets;
  28. #[ORM\OneToMany(targetEntity: ClinicCommunicationMethods::class, mappedBy: 'clinic')]
  29. private $clinicCommunicationMethods;
  30. #[ORM\OneToMany(targetEntity: ClinicUsers::class, mappedBy: 'clinic', cascade: ['persist'])]
  31. private $clinicUsers;
  32. #[ORM\OneToMany(targetEntity: DistributorClinicPrices::class, mappedBy: 'clinic')]
  33. private $distributorClinicPrices;
  34. #[ORM\OneToMany(targetEntity: Orders::class, mappedBy: 'clinic')]
  35. private $orders;
  36. #[ORM\OneToMany(targetEntity: EventLog::class, mappedBy: 'clinic')]
  37. private $eventLogs;
  38. #[ORM\OneToMany(targetEntity: Lists::class, mappedBy: 'clinic')]
  39. private $lists;
  40. #[ORM\OneToMany(targetEntity: ProductNotes::class, mappedBy: 'clinic')]
  41. private $productNotes;
  42. #[ORM\OneToMany(targetEntity: AvailabilityTracker::class, mappedBy: 'clinic')]
  43. private $availabilityTrackers;
  44. #[ORM\OneToMany(targetEntity: ClinicProducts::class, mappedBy: 'clinic')]
  45. private $clinicProducts;
  46. #[ORM\OneToMany(targetEntity: ProductReviewComments::class, mappedBy: 'clinic')]
  47. private $productReviewComments;
  48. #[ORM\OneToMany(targetEntity: Notifications::class, mappedBy: 'clinic')]
  49. private $notifications;
  50. #[ORM\OneToMany(targetEntity: ProductFavourites::class, mappedBy: 'clinic')]
  51. private $productFavourites;
  52. #[ORM\OneToMany(targetEntity: ChatParticipants::class, mappedBy: 'clinic')]
  53. private $chatParticipants;
  54. #[ORM\Column(type: 'string', length: 255, nullable: true)]
  55. private $isoCode;
  56. #[ORM\Column(type: 'string', length: 255, nullable: true)]
  57. private $intlCode;
  58. #[ORM\OneToMany(targetEntity: ClinicUserPermissions::class, mappedBy: 'clinic')]
  59. private $clinicUserPermissions;
  60. #[ORM\OneToMany(targetEntity: DistributorClinics::class, mappedBy: 'clinic')]
  61. private $distributorClinics;
  62. #[ORM\ManyToOne(targetEntity: Countries::class, inversedBy: 'clinics')]
  63. private $country;
  64. #[ORM\Column(type: 'string', length: 255, nullable: true)]
  65. private $hashedEmail;
  66. #[ORM\Column(type: 'string', length: 255, nullable: true)]
  67. private $domainName;
  68. #[ORM\Column(type: 'integer', nullable: true)]
  69. private $isApproved;
  70. #[ORM\Column(type: 'string', length: 255, nullable: true)]
  71. private $managerFirstName;
  72. #[ORM\Column(type: 'string', length: 255, nullable: true)]
  73. private $managerLastName;
  74. #[ORM\Column(type: 'string', length: 255, nullable: true)]
  75. private $tradeLicense;
  76. #[ORM\Column(type: 'string', length: 255, nullable: true)]
  77. private $tradeLicenseNo;
  78. #[ORM\Column(type: 'date', nullable: true)]
  79. private $tradeLicenseExpDate;
  80. #[ORM\Column(type: 'string', length: 255, nullable: true)]
  81. private $managerIdNo;
  82. #[ORM\Column(type: 'date', nullable: true)]
  83. private $managerIdExpDate;
  84. #[ORM\OneToMany(targetEntity: RetailUsers::class, mappedBy: 'clinic')]
  85. private $retailUsers;
  86. #[ORM\Column(type: 'string', length: 255, nullable: true)]
  87. private $logo;
  88. #[ORM\OneToMany(targetEntity: ClinicRetailUsers::class, mappedBy: 'clinic')]
  89. private $clinicRetailUsers;
  90. #[ORM\OneToMany(targetEntity: ProductRetail::class, mappedBy: 'clinic')]
  91. private $productRetails;
  92. #[ORM\Column(type: 'string', length: 255, nullable: true)]
  93. private $PoNumberPrefix;
  94. #[ORM\Column(type: 'text', nullable: true)]
  95. private $about;
  96. #[ORM\Column(type: 'text', nullable: true)]
  97. private $operatingHours;
  98. #[ORM\Column(type: 'text', nullable: true)]
  99. private $refundPolicy;
  100. #[ORM\Column(type: 'text', nullable: true)]
  101. private $salesTaxPolicy;
  102. #[ORM\Column(type: 'text', nullable: true)]
  103. private $shippingPolicy;
  104. /**
  105. * @var Collection<int, CustomPriceLists>
  106. */
  107. #[ORM\OneToMany(mappedBy: 'clinic', targetEntity: CustomPriceLists::class)]
  108. private Collection $customPriceLists;
  109. /**
  110. * @var Collection<int, ClinicDistributorContacts>
  111. */
  112. #[ORM\OneToMany(mappedBy: 'clinic', targetEntity: ClinicDistributorContacts::class)]
  113. private Collection $clinicDistributorContacts;
  114. /**
  115. * @var Collection<int, SearchLog>
  116. */
  117. #[ORM\OneToMany(mappedBy: 'clinic', targetEntity: SearchLog::class)]
  118. private Collection $searchLogs;
  119. /**
  120. * @var Collection<int, AiProductFavourites>
  121. */
  122. #[ORM\OneToMany(mappedBy: 'clinic', targetEntity: AiProductFavourites::class)]
  123. private Collection $aiProductFavourites;
  124. /**
  125. * @var Collection<int, AiProductNotes>
  126. */
  127. #[ORM\OneToMany(mappedBy: 'clinic', targetEntity: AiProductNotes::class)]
  128. private Collection $aiProductNotes;
  129. /**
  130. * @var Collection<int, AiProductReviewComments>
  131. */
  132. #[ORM\OneToMany(mappedBy: 'clinic', targetEntity: AiProductReviewComments::class)]
  133. private Collection $aiProductReviewComments;
  134. /**
  135. * @var Collection<int, AiLists>
  136. */
  137. #[ORM\OneToMany(mappedBy: 'clinic', targetEntity: AiLists::class)]
  138. private Collection $aiLists;
  139. /**
  140. * @var Collection<int, AiProductRetail>
  141. */
  142. #[ORM\OneToMany(mappedBy: 'clinic', targetEntity: AiProductRetail::class)]
  143. private Collection $aiProductRetails;
  144. /**
  145. * @var Collection<int, AiAddresses>
  146. */
  147. #[ORM\OneToMany(mappedBy: 'clinic', targetEntity: AiAddresses::class)]
  148. private Collection $aiAddresses;
  149. /**
  150. * @var Collection<int, AiBaskets>
  151. */
  152. #[ORM\OneToMany(mappedBy: 'clinic', targetEntity: AiBaskets::class)]
  153. private Collection $aiBaskets;
  154. /**
  155. * @var Collection<int, AiOrders>
  156. */
  157. #[ORM\OneToMany(mappedBy: 'clinic', targetEntity: AiOrders::class)]
  158. private Collection $aiOrders;
  159. /**
  160. * @var Collection<int, AiClinicProducts>
  161. */
  162. #[ORM\OneToMany(mappedBy: 'clinic', targetEntity: AiClinicProducts::class)]
  163. private Collection $aiClinicProducts;
  164. /**
  165. * @var Collection<int, AiCustomPriceLists>
  166. */
  167. #[ORM\OneToMany(mappedBy: 'clinic', targetEntity: AiCustomPriceLists::class)]
  168. private Collection $aiCustomPriceLists;
  169. #[ORM\Column(length: 255, nullable: true)]
  170. private ?string $name = null;
  171. public function __construct()
  172. {
  173. $date = new \DateTime("now", new \DateTimeZone('Asia/Dubai'));
  174. $this->setModified($date);
  175. if ($this->getCreated() == null)
  176. {
  177. $this->setCreated($date);
  178. }
  179. $this->addresses = new ArrayCollection();
  180. $this->baskets = new ArrayCollection();
  181. $this->distributors = new ArrayCollection();
  182. $this->clinicCommunicationMethods = new ArrayCollection();
  183. $this->clinicUsers = new ArrayCollection();
  184. $this->distributorClinicPrices = new ArrayCollection();
  185. $this->orders = new ArrayCollection();
  186. $this->eventLogs = new ArrayCollection();
  187. $this->lists = new ArrayCollection();
  188. $this->productNotes = new ArrayCollection();
  189. $this->availabilityTrackers = new ArrayCollection();
  190. $this->clinicProducts = new ArrayCollection();
  191. $this->productReviewComments = new ArrayCollection();
  192. $this->notifications = new ArrayCollection();
  193. $this->productFavourites = new ArrayCollection();
  194. $this->chatParticipants = new ArrayCollection();
  195. $this->clinicUserPermissions = new ArrayCollection();
  196. $this->distributorClinics = new ArrayCollection();
  197. $this->retailUsers = new ArrayCollection();
  198. $this->clinicRetailUsers = new ArrayCollection();
  199. $this->productRetails = new ArrayCollection();
  200. $this->customPriceLists = new ArrayCollection();
  201. $this->clinicDistributorContacts = new ArrayCollection();
  202. $this->searchLogs = new ArrayCollection();
  203. $this->aiProductFavourites = new ArrayCollection();
  204. $this->aiProductNotes = new ArrayCollection();
  205. $this->aiProductReviewComments = new ArrayCollection();
  206. $this->aiLists = new ArrayCollection();
  207. $this->aiProductRetails = new ArrayCollection();
  208. $this->aiAddresses = new ArrayCollection();
  209. $this->aiBaskets = new ArrayCollection();
  210. $this->aiOrders = new ArrayCollection();
  211. $this->aiClinicProducts = new ArrayCollection();
  212. $this->aiCustomPriceLists = new ArrayCollection();
  213. }
  214. public function getId(): ?int
  215. {
  216. return $this->id;
  217. }
  218. public function getClinicName(): ?string
  219. {
  220. return $this->clinicName;
  221. }
  222. public function setClinicName(string $clinicName): self
  223. {
  224. $this->clinicName = $clinicName;
  225. return $this;
  226. }
  227. public function getTelephone(): ?string
  228. {
  229. return $this->telephone;
  230. }
  231. public function setTelephone(string $telephone): self
  232. {
  233. $this->telephone = $telephone;
  234. return $this;
  235. }
  236. public function getModified(): ?\DateTimeInterface
  237. {
  238. return $this->modified;
  239. }
  240. public function setModified(\DateTimeInterface $modified): self
  241. {
  242. $this->modified = $modified;
  243. return $this;
  244. }
  245. public function getCreated(): ?\DateTimeInterface
  246. {
  247. return $this->created;
  248. }
  249. public function setCreated(\DateTimeInterface $created): self
  250. {
  251. $this->created = $created;
  252. return $this;
  253. }
  254. /**
  255. * @return Collection|Addresses[]
  256. */
  257. public function getAddresses(): Collection
  258. {
  259. return $this->addresses;
  260. }
  261. public function addAddress(Addresses $address): self
  262. {
  263. if (!$this->addresses->contains($address)) {
  264. $this->addresses[] = $address;
  265. $address->setClinic($this);
  266. }
  267. return $this;
  268. }
  269. public function removeAddress(Addresses $address): self
  270. {
  271. if ($this->addresses->removeElement($address)) {
  272. // set the owning side to null (unless already changed)
  273. if ($address->getClinic() === $this) {
  274. $address->setClinic(null);
  275. }
  276. }
  277. return $this;
  278. }
  279. /**
  280. * @return Collection|Baskets[]
  281. */
  282. public function getBaskets(): Collection
  283. {
  284. return $this->baskets;
  285. }
  286. public function addBasket(Baskets $basket): self
  287. {
  288. if (!$this->baskets->contains($basket)) {
  289. $this->baskets[] = $basket;
  290. $basket->setClinic($this);
  291. }
  292. return $this;
  293. }
  294. public function removeBasket(Baskets $basket): self
  295. {
  296. if ($this->baskets->removeElement($basket)) {
  297. // set the owning side to null (unless already changed)
  298. if ($basket->getClinic() === $this) {
  299. $basket->setClinic(null);
  300. }
  301. }
  302. return $this;
  303. }
  304. /**
  305. * @return Collection|ClinicCommunicationMethods[]
  306. */
  307. public function getClinicCommunicationMethods(): Collection
  308. {
  309. return $this->clinicCommunicationMethods;
  310. }
  311. public function addClinicCommunicationMethod(ClinicCommunicationMethods $clinicCommunicationMethod): self
  312. {
  313. if (!$this->clinicCommunicationMethods->contains($clinicCommunicationMethod)) {
  314. $this->clinicCommunicationMethods[] = $clinicCommunicationMethod;
  315. $clinicCommunicationMethod->setClinic($this);
  316. }
  317. return $this;
  318. }
  319. public function removeClinicCommunicationMethod(ClinicCommunicationMethods $clinicCommunicationMethod): self
  320. {
  321. if ($this->clinicCommunicationMethods->removeElement($clinicCommunicationMethod)) {
  322. // set the owning side to null (unless already changed)
  323. if ($clinicCommunicationMethod->getClinic() === $this) {
  324. $clinicCommunicationMethod->setClinic(null);
  325. }
  326. }
  327. return $this;
  328. }
  329. /**
  330. * @return Collection|ClinicUsers[]
  331. */
  332. public function getClinicUsers(): Collection
  333. {
  334. return $this->clinicUsers;
  335. }
  336. public function addClinicUser(ClinicUsers $clinicUser): self
  337. {
  338. if (!$this->clinicUsers->contains($clinicUser)) {
  339. $this->clinicUsers[] = $clinicUser;
  340. $clinicUser->setClinic($this);
  341. }
  342. return $this;
  343. }
  344. public function removeClinicUser(ClinicUsers $clinicUser): self
  345. {
  346. if ($this->clinicUsers->removeElement($clinicUser)) {
  347. // set the owning side to null (unless already changed)
  348. if ($clinicUser->getClinic() === $this) {
  349. $clinicUser->setClinic(null);
  350. }
  351. }
  352. return $this;
  353. }
  354. /**
  355. * @return Collection|DistributorClinicPrices[]
  356. */
  357. public function getDistributorClinicPrices(): Collection
  358. {
  359. return $this->distributorClinicPrices;
  360. }
  361. public function addDistributorClinicPrice(DistributorClinicPrices $distributorClinicPrice): self
  362. {
  363. if (!$this->distributorClinicPrices->contains($distributorClinicPrice)) {
  364. $this->distributorClinicPrices[] = $distributorClinicPrice;
  365. $distributorClinicPrice->setClinic($this);
  366. }
  367. return $this;
  368. }
  369. public function removeDistributorClinicPrice(DistributorClinicPrices $distributorClinicPrice): self
  370. {
  371. if ($this->distributorClinicPrices->removeElement($distributorClinicPrice)) {
  372. // set the owning side to null (unless already changed)
  373. if ($distributorClinicPrice->getClinic() === $this) {
  374. $distributorClinicPrice->setClinic(null);
  375. }
  376. }
  377. return $this;
  378. }
  379. /**
  380. * @return Collection|Orders[]
  381. */
  382. public function getOrders(): Collection
  383. {
  384. return $this->orders;
  385. }
  386. public function addOrder(Orders $order): self
  387. {
  388. if (!$this->orders->contains($order)) {
  389. $this->orders[] = $order;
  390. $order->setClinic($this);
  391. }
  392. return $this;
  393. }
  394. public function removeOrder(Orders $order): self
  395. {
  396. if ($this->orders->removeElement($order)) {
  397. // set the owning side to null (unless already changed)
  398. if ($order->getClinic() === $this) {
  399. $order->setClinic(null);
  400. }
  401. }
  402. return $this;
  403. }
  404. /**
  405. * @return Collection|EventLog[]
  406. */
  407. public function getEventLogs(): Collection
  408. {
  409. return $this->eventLogs;
  410. }
  411. public function addEventLog(EventLog $eventLog): self
  412. {
  413. if (!$this->eventLogs->contains($eventLog)) {
  414. $this->eventLogs[] = $eventLog;
  415. $eventLog->setClinic($this);
  416. }
  417. return $this;
  418. }
  419. public function removeEventLog(EventLog $eventLog): self
  420. {
  421. if ($this->eventLogs->removeElement($eventLog)) {
  422. // set the owning side to null (unless already changed)
  423. if ($eventLog->getClinic() === $this) {
  424. $eventLog->setClinic(null);
  425. }
  426. }
  427. return $this;
  428. }
  429. /**
  430. * @return Collection|Lists[]
  431. */
  432. public function getLists(): Collection
  433. {
  434. return $this->lists;
  435. }
  436. public function addList(Lists $list): self
  437. {
  438. if (!$this->lists->contains($list)) {
  439. $this->lists[] = $list;
  440. $list->setClinic($this);
  441. }
  442. return $this;
  443. }
  444. public function removeList(Lists $list): self
  445. {
  446. if ($this->lists->removeElement($list)) {
  447. // set the owning side to null (unless already changed)
  448. if ($list->getClinic() === $this) {
  449. $list->setClinic(null);
  450. }
  451. }
  452. return $this;
  453. }
  454. /**
  455. * @return Collection|ProductNotes[]
  456. */
  457. public function getProductNotes(): Collection
  458. {
  459. return $this->productNotes;
  460. }
  461. public function addProductNote(ProductNotes $productNote): self
  462. {
  463. if (!$this->productNotes->contains($productNote)) {
  464. $this->productNotes[] = $productNote;
  465. $productNote->setClinic($this);
  466. }
  467. return $this;
  468. }
  469. public function removeProductNote(ProductNotes $productNote): self
  470. {
  471. if ($this->productNotes->removeElement($productNote)) {
  472. // set the owning side to null (unless already changed)
  473. if ($productNote->getClinic() === $this) {
  474. $productNote->setClinic(null);
  475. }
  476. }
  477. return $this;
  478. }
  479. /**
  480. * @return Collection|AvailabilityTracker[]
  481. */
  482. public function getAvailabilityTrackers(): Collection
  483. {
  484. return $this->availabilityTrackers;
  485. }
  486. public function addAvailabilityTracker(AvailabilityTracker $availabilityTracker): self
  487. {
  488. if (!$this->availabilityTrackers->contains($availabilityTracker)) {
  489. $this->availabilityTrackers[] = $availabilityTracker;
  490. $availabilityTracker->setClinic($this);
  491. }
  492. return $this;
  493. }
  494. public function removeAvailabilityTracker(AvailabilityTracker $availabilityTracker): self
  495. {
  496. if ($this->availabilityTrackers->removeElement($availabilityTracker)) {
  497. // set the owning side to null (unless already changed)
  498. if ($availabilityTracker->getClinic() === $this) {
  499. $availabilityTracker->setClinic(null);
  500. }
  501. }
  502. return $this;
  503. }
  504. public function getEmail(): ?string
  505. {
  506. return $this->email;
  507. }
  508. public function setEmail(string $email): self
  509. {
  510. $this->email = $email;
  511. return $this;
  512. }
  513. /**
  514. * @return Collection<int, ClinicProducts>
  515. */
  516. public function getClinicProducts(): Collection
  517. {
  518. return $this->clinicProducts;
  519. }
  520. public function addClinicProduct(ClinicProducts $clinicProduct): self
  521. {
  522. if (!$this->clinicProducts->contains($clinicProduct)) {
  523. $this->clinicProducts[] = $clinicProduct;
  524. $clinicProduct->setClinic($this);
  525. }
  526. return $this;
  527. }
  528. public function removeClinicProduct(ClinicProducts $clinicProduct): self
  529. {
  530. if ($this->clinicProducts->removeElement($clinicProduct)) {
  531. // set the owning side to null (unless already changed)
  532. if ($clinicProduct->getClinic() === $this) {
  533. $clinicProduct->setClinic(null);
  534. }
  535. }
  536. return $this;
  537. }
  538. /**
  539. * @return Collection<int, ProductReviewComments>
  540. */
  541. public function getProductReviewComments(): Collection
  542. {
  543. return $this->productReviewComments;
  544. }
  545. public function addProductReviewComment(ProductReviewComments $productReviewComment): self
  546. {
  547. if (!$this->productReviewComments->contains($productReviewComment)) {
  548. $this->productReviewComments[] = $productReviewComment;
  549. $productReviewComment->setClinic($this);
  550. }
  551. return $this;
  552. }
  553. public function removeProductReviewComment(ProductReviewComments $productReviewComment): self
  554. {
  555. if ($this->productReviewComments->removeElement($productReviewComment)) {
  556. // set the owning side to null (unless already changed)
  557. if ($productReviewComment->getClinic() === $this) {
  558. $productReviewComment->setClinic(null);
  559. }
  560. }
  561. return $this;
  562. }
  563. /**
  564. * @return Collection<int, Notifications>
  565. */
  566. public function getNotifications(): Collection
  567. {
  568. return $this->notifications;
  569. }
  570. public function addNotification(Notifications $notification): self
  571. {
  572. if (!$this->notifications->contains($notification)) {
  573. $this->notifications[] = $notification;
  574. $notification->setClinic($this);
  575. }
  576. return $this;
  577. }
  578. public function removeNotification(Notifications $notification): self
  579. {
  580. if ($this->notifications->removeElement($notification)) {
  581. // set the owning side to null (unless already changed)
  582. if ($notification->getClinic() === $this) {
  583. $notification->setClinic(null);
  584. }
  585. }
  586. return $this;
  587. }
  588. /**
  589. * @return Collection<int, ProductFavourites>
  590. */
  591. public function getProductFavourites(): Collection
  592. {
  593. return $this->productFavourites;
  594. }
  595. public function addProductFavourite(ProductFavourites $productFavourite): self
  596. {
  597. if (!$this->productFavourites->contains($productFavourite)) {
  598. $this->productFavourites[] = $productFavourite;
  599. $productFavourite->setClinic($this);
  600. }
  601. return $this;
  602. }
  603. public function removeProductFavourite(ProductFavourites $productFavourite): self
  604. {
  605. if ($this->productFavourites->removeElement($productFavourite)) {
  606. // set the owning side to null (unless already changed)
  607. if ($productFavourite->getClinic() === $this) {
  608. $productFavourite->setClinic(null);
  609. }
  610. }
  611. return $this;
  612. }
  613. /**
  614. * @return Collection<int, ChatParticipants>
  615. */
  616. public function getChatParticipants(): Collection
  617. {
  618. return $this->chatParticipants;
  619. }
  620. public function addChatParticipant(ChatParticipants $chatParticipant): self
  621. {
  622. if (!$this->chatParticipants->contains($chatParticipant)) {
  623. $this->chatParticipants[] = $chatParticipant;
  624. $chatParticipant->setClinic($this);
  625. }
  626. return $this;
  627. }
  628. public function removeChatParticipant(ChatParticipants $chatParticipant): self
  629. {
  630. if ($this->chatParticipants->removeElement($chatParticipant)) {
  631. // set the owning side to null (unless already changed)
  632. if ($chatParticipant->getClinic() === $this) {
  633. $chatParticipant->setClinic(null);
  634. }
  635. }
  636. return $this;
  637. }
  638. public function getIsoCode(): ?string
  639. {
  640. return $this->isoCode;
  641. }
  642. public function setIsoCode(?string $isoCode): self
  643. {
  644. $this->isoCode = $isoCode;
  645. return $this;
  646. }
  647. public function getIntlCode(): ?string
  648. {
  649. return $this->intlCode;
  650. }
  651. public function setIntlCode(?string $intlCode): self
  652. {
  653. $this->intlCode = $intlCode;
  654. return $this;
  655. }
  656. /**
  657. * @return Collection<int, ClinicUserPermissions>
  658. */
  659. public function getClinicUserPermissions(): Collection
  660. {
  661. return $this->clinicUserPermissions;
  662. }
  663. public function addClinicUserPermission(ClinicUserPermissions $clinicUserPermission): self
  664. {
  665. if (!$this->clinicUserPermissions->contains($clinicUserPermission)) {
  666. $this->clinicUserPermissions[] = $clinicUserPermission;
  667. $clinicUserPermission->setClinic($this);
  668. }
  669. return $this;
  670. }
  671. public function removeClinicUserPermission(ClinicUserPermissions $clinicUserPermission): self
  672. {
  673. if ($this->clinicUserPermissions->removeElement($clinicUserPermission)) {
  674. // set the owning side to null (unless already changed)
  675. if ($clinicUserPermission->getClinic() === $this) {
  676. $clinicUserPermission->setClinic(null);
  677. }
  678. }
  679. return $this;
  680. }
  681. /**
  682. * @return Collection<int, DistributorClinics>
  683. */
  684. public function getDistributorClinics(): Collection
  685. {
  686. return $this->distributorClinics;
  687. }
  688. public function addDistributorClinic(DistributorClinics $distributorClinic): self
  689. {
  690. if (!$this->distributorClinics->contains($distributorClinic)) {
  691. $this->distributorClinics[] = $distributorClinic;
  692. $distributorClinic->setClinic($this);
  693. }
  694. return $this;
  695. }
  696. public function removeDistributorClinic(DistributorClinics $distributorClinic): self
  697. {
  698. if ($this->distributorClinics->removeElement($distributorClinic)) {
  699. // set the owning side to null (unless already changed)
  700. if ($distributorClinic->getClinic() === $this) {
  701. $distributorClinic->setClinic(null);
  702. }
  703. }
  704. return $this;
  705. }
  706. public function getCountry(): ?Countries
  707. {
  708. return $this->country;
  709. }
  710. public function setCountry(?Countries $country): self
  711. {
  712. $this->country = $country;
  713. return $this;
  714. }
  715. public function getHashedEmail(): ?string
  716. {
  717. return $this->hashedEmail;
  718. }
  719. public function setHashedEmail(?string $hashedEmail): self
  720. {
  721. $this->hashedEmail = $hashedEmail;
  722. return $this;
  723. }
  724. public function getDomainName(): ?string
  725. {
  726. return $this->domainName;
  727. }
  728. public function setDomainName(?string $domainName): self
  729. {
  730. $this->domainName = $domainName;
  731. return $this;
  732. }
  733. public function getIsApproved(): ?int
  734. {
  735. return $this->isApproved;
  736. }
  737. public function setIsApproved(?int $isApproved): self
  738. {
  739. $this->isApproved = $isApproved;
  740. return $this;
  741. }
  742. public function getManagerFirstName(): ?string
  743. {
  744. return $this->managerFirstName;
  745. }
  746. public function setManagerFirstName(?string $managerFirstName): self
  747. {
  748. $this->managerFirstName = $managerFirstName;
  749. return $this;
  750. }
  751. public function getManagerLastName(): ?string
  752. {
  753. return $this->managerLastName;
  754. }
  755. public function setManagerLastName(?string $managerLastName): self
  756. {
  757. $this->managerLastName = $managerLastName;
  758. return $this;
  759. }
  760. public function getTradeLicense(): ?string
  761. {
  762. return $this->tradeLicense;
  763. }
  764. public function setTradeLicense(?string $tradeLicense): self
  765. {
  766. $this->tradeLicense = $tradeLicense;
  767. return $this;
  768. }
  769. public function getTradeLicenseNo(): ?string
  770. {
  771. return $this->tradeLicenseNo;
  772. }
  773. public function setTradeLicenseNo(?string $tradeLicenseNo): self
  774. {
  775. $this->tradeLicenseNo = $tradeLicenseNo;
  776. return $this;
  777. }
  778. public function getTradeLicenseExpDate(): ?\DateTimeInterface
  779. {
  780. return $this->tradeLicenseExpDate;
  781. }
  782. public function setTradeLicenseExpDate(?\DateTimeInterface $tradeLicenseExpDate): self
  783. {
  784. $this->tradeLicenseExpDate = $tradeLicenseExpDate;
  785. return $this;
  786. }
  787. public function getManagerIdNo(): ?string
  788. {
  789. return $this->managerIdNo;
  790. }
  791. public function setManagerIdNo(?string $managerIdNo): self
  792. {
  793. $this->managerIdNo = $managerIdNo;
  794. return $this;
  795. }
  796. public function getManagerIdExpDate(): ?\DateTimeInterface
  797. {
  798. return $this->managerIdExpDate;
  799. }
  800. public function setManagerIdExpDate(?\DateTimeInterface $managerIdExpDate): self
  801. {
  802. $this->managerIdExpDate = $managerIdExpDate;
  803. return $this;
  804. }
  805. /**
  806. * @return Collection<int, RetailUsers>
  807. */
  808. public function getRetailUsers(): Collection
  809. {
  810. return $this->retailUsers;
  811. }
  812. public function addRetailUser(RetailUsers $retailUser): self
  813. {
  814. if (!$this->retailUsers->contains($retailUser)) {
  815. $this->retailUsers[] = $retailUser;
  816. $retailUser->setClinic($this);
  817. }
  818. return $this;
  819. }
  820. public function removeRetailUser(RetailUsers $retailUser): self
  821. {
  822. if ($this->retailUsers->removeElement($retailUser)) {
  823. // set the owning side to null (unless already changed)
  824. if ($retailUser->getClinic() === $this) {
  825. $retailUser->setClinic(null);
  826. }
  827. }
  828. return $this;
  829. }
  830. public function getLogo(): ?string
  831. {
  832. return $this->logo;
  833. }
  834. public function setLogo(?string $logo): self
  835. {
  836. $this->logo = $logo;
  837. return $this;
  838. }
  839. /**
  840. * @return Collection<int, ClinicRetailUsers>
  841. */
  842. public function getClinicRetailUsers(): Collection
  843. {
  844. return $this->clinicRetailUsers;
  845. }
  846. public function addClinicRetailUser(ClinicRetailUsers $clinicRetailUser): self
  847. {
  848. if (!$this->clinicRetailUsers->contains($clinicRetailUser)) {
  849. $this->clinicRetailUsers[] = $clinicRetailUser;
  850. $clinicRetailUser->setClinic($this);
  851. }
  852. return $this;
  853. }
  854. public function removeClinicRetailUser(ClinicRetailUsers $clinicRetailUser): self
  855. {
  856. if ($this->clinicRetailUsers->removeElement($clinicRetailUser)) {
  857. // set the owning side to null (unless already changed)
  858. if ($clinicRetailUser->getClinic() === $this) {
  859. $clinicRetailUser->setClinic(null);
  860. }
  861. }
  862. return $this;
  863. }
  864. /**
  865. * @return Collection<int, ProductRetail>
  866. */
  867. public function getProductRetails(): Collection
  868. {
  869. return $this->productRetails;
  870. }
  871. public function addProductRetail(ProductRetail $productRetail): self
  872. {
  873. if (!$this->productRetails->contains($productRetail)) {
  874. $this->productRetails[] = $productRetail;
  875. $productRetail->setClinic($this);
  876. }
  877. return $this;
  878. }
  879. public function removeProductRetail(ProductRetail $productRetail): self
  880. {
  881. if ($this->productRetails->removeElement($productRetail)) {
  882. // set the owning side to null (unless already changed)
  883. if ($productRetail->getClinic() === $this) {
  884. $productRetail->setClinic(null);
  885. }
  886. }
  887. return $this;
  888. }
  889. public function getPoNumberPrefix(): ?string
  890. {
  891. return $this->PoNumberPrefix;
  892. }
  893. public function setPoNumberPrefix(?string $PoNumberPrefix): self
  894. {
  895. $this->PoNumberPrefix = $PoNumberPrefix;
  896. return $this;
  897. }
  898. public function getAbout(): ?string
  899. {
  900. return $this->about;
  901. }
  902. public function setAbout(?string $about): self
  903. {
  904. $this->about = $about;
  905. return $this;
  906. }
  907. public function getOperatingHours(): ?string
  908. {
  909. return $this->operatingHours;
  910. }
  911. public function setOperatingHours(?string $operatingHours): self
  912. {
  913. $this->operatingHours = $operatingHours;
  914. return $this;
  915. }
  916. public function getRefundPolicy(): ?string
  917. {
  918. return $this->refundPolicy;
  919. }
  920. public function setRefundPolicy(?string $refundPolicy): self
  921. {
  922. $this->refundPolicy = $refundPolicy;
  923. return $this;
  924. }
  925. public function getSalesTaxPolicy(): ?string
  926. {
  927. return $this->salesTaxPolicy;
  928. }
  929. public function setSalesTaxPolicy(?string $salesTaxPolicy): self
  930. {
  931. $this->salesTaxPolicy = $salesTaxPolicy;
  932. return $this;
  933. }
  934. public function getShippingPolicy(): ?string
  935. {
  936. return $this->shippingPolicy;
  937. }
  938. public function setShippingPolicy(?string $shippingPolicy): self
  939. {
  940. $this->shippingPolicy = $shippingPolicy;
  941. return $this;
  942. }
  943. /**
  944. * @return Collection<int, CustomPriceLists>
  945. */
  946. public function getCustomPriceLists(): Collection
  947. {
  948. return $this->customPriceLists;
  949. }
  950. public function addCustomPriceList(CustomPriceLists $customPriceList): static
  951. {
  952. if (!$this->customPriceLists->contains($customPriceList)) {
  953. $this->customPriceLists->add($customPriceList);
  954. $customPriceList->setClinic($this);
  955. }
  956. return $this;
  957. }
  958. public function removeCustomPriceList(CustomPriceLists $customPriceList): static
  959. {
  960. if ($this->customPriceLists->removeElement($customPriceList)) {
  961. // set the owning side to null (unless already changed)
  962. if ($customPriceList->getClinic() === $this) {
  963. $customPriceList->setClinic(null);
  964. }
  965. }
  966. return $this;
  967. }
  968. /**
  969. * @return Collection<int, ClinicDistributorContacts>
  970. */
  971. public function getClinicDistributorContacts(): Collection
  972. {
  973. return $this->clinicDistributorContacts;
  974. }
  975. public function addClinicDistributorContact(ClinicDistributorContacts $clinicDistributorContact): static
  976. {
  977. if (!$this->clinicDistributorContacts->contains($clinicDistributorContact)) {
  978. $this->clinicDistributorContacts->add($clinicDistributorContact);
  979. $clinicDistributorContact->setClinic($this);
  980. }
  981. return $this;
  982. }
  983. public function removeClinicDistributorContact(ClinicDistributorContacts $clinicDistributorContact): static
  984. {
  985. if ($this->clinicDistributorContacts->removeElement($clinicDistributorContact)) {
  986. // set the owning side to null (unless already changed)
  987. if ($clinicDistributorContact->getClinic() === $this) {
  988. $clinicDistributorContact->setClinic(null);
  989. }
  990. }
  991. return $this;
  992. }
  993. /**
  994. * @return Collection<int, SearchLog>
  995. */
  996. public function getSearchLogs(): Collection
  997. {
  998. return $this->searchLogs;
  999. }
  1000. public function addSearchLog(SearchLog $searchLog): static
  1001. {
  1002. if (!$this->searchLogs->contains($searchLog)) {
  1003. $this->searchLogs->add($searchLog);
  1004. $searchLog->setClinic($this);
  1005. }
  1006. return $this;
  1007. }
  1008. public function removeSearchLog(SearchLog $searchLog): static
  1009. {
  1010. if ($this->searchLogs->removeElement($searchLog)) {
  1011. // set the owning side to null (unless already changed)
  1012. if ($searchLog->getClinic() === $this) {
  1013. $searchLog->setClinic(null);
  1014. }
  1015. }
  1016. return $this;
  1017. }
  1018. /**
  1019. * @return Collection<int, AiProductFavourites>
  1020. */
  1021. public function getAiProductFavourites(): Collection
  1022. {
  1023. return $this->aiProductFavourites;
  1024. }
  1025. public function addAiProductFavourite(AiProductFavourites $aiProductFavourite): static
  1026. {
  1027. if (!$this->aiProductFavourites->contains($aiProductFavourite)) {
  1028. $this->aiProductFavourites->add($aiProductFavourite);
  1029. $aiProductFavourite->setClinic($this);
  1030. }
  1031. return $this;
  1032. }
  1033. public function removeAiProductFavourite(AiProductFavourites $aiProductFavourite): static
  1034. {
  1035. if ($this->aiProductFavourites->removeElement($aiProductFavourite)) {
  1036. // set the owning side to null (unless already changed)
  1037. if ($aiProductFavourite->getClinic() === $this) {
  1038. $aiProductFavourite->setClinic(null);
  1039. }
  1040. }
  1041. return $this;
  1042. }
  1043. /**
  1044. * @return Collection<int, AiProductNotes>
  1045. */
  1046. public function getAiProductNotes(): Collection
  1047. {
  1048. return $this->aiProductNotes;
  1049. }
  1050. public function addAiProductNote(AiProductNotes $aiProductNote): static
  1051. {
  1052. if (!$this->aiProductNotes->contains($aiProductNote)) {
  1053. $this->aiProductNotes->add($aiProductNote);
  1054. $aiProductNote->setClinic($this);
  1055. }
  1056. return $this;
  1057. }
  1058. public function removeAiProductNote(AiProductNotes $aiProductNote): static
  1059. {
  1060. if ($this->aiProductNotes->removeElement($aiProductNote)) {
  1061. // set the owning side to null (unless already changed)
  1062. if ($aiProductNote->getClinic() === $this) {
  1063. $aiProductNote->setClinic(null);
  1064. }
  1065. }
  1066. return $this;
  1067. }
  1068. /**
  1069. * @return Collection<int, AiProductReviewComments>
  1070. */
  1071. public function getAiProductReviewComments(): Collection
  1072. {
  1073. return $this->aiProductReviewComments;
  1074. }
  1075. public function addAiProductReviewComment(AiProductReviewComments $aiProductReviewComment): static
  1076. {
  1077. if (!$this->aiProductReviewComments->contains($aiProductReviewComment)) {
  1078. $this->aiProductReviewComments->add($aiProductReviewComment);
  1079. $aiProductReviewComment->setClinic($this);
  1080. }
  1081. return $this;
  1082. }
  1083. public function removeAiProductReviewComment(AiProductReviewComments $aiProductReviewComment): static
  1084. {
  1085. if ($this->aiProductReviewComments->removeElement($aiProductReviewComment)) {
  1086. // set the owning side to null (unless already changed)
  1087. if ($aiProductReviewComment->getClinic() === $this) {
  1088. $aiProductReviewComment->setClinic(null);
  1089. }
  1090. }
  1091. return $this;
  1092. }
  1093. /**
  1094. * @return Collection<int, AiLists>
  1095. */
  1096. public function getAiLists(): Collection
  1097. {
  1098. return $this->aiLists;
  1099. }
  1100. public function addAiList(AiLists $aiList): static
  1101. {
  1102. if (!$this->aiLists->contains($aiList)) {
  1103. $this->aiLists->add($aiList);
  1104. $aiList->setClinic($this);
  1105. }
  1106. return $this;
  1107. }
  1108. public function removeAiList(AiLists $aiList): static
  1109. {
  1110. if ($this->aiLists->removeElement($aiList)) {
  1111. // set the owning side to null (unless already changed)
  1112. if ($aiList->getClinic() === $this) {
  1113. $aiList->setClinic(null);
  1114. }
  1115. }
  1116. return $this;
  1117. }
  1118. /**
  1119. * @return Collection<int, AiProductRetail>
  1120. */
  1121. public function getAiProductRetails(): Collection
  1122. {
  1123. return $this->aiProductRetails;
  1124. }
  1125. public function addAiProductRetail(AiProductRetail $aiProductRetail): static
  1126. {
  1127. if (!$this->aiProductRetails->contains($aiProductRetail)) {
  1128. $this->aiProductRetails->add($aiProductRetail);
  1129. $aiProductRetail->setClinic($this);
  1130. }
  1131. return $this;
  1132. }
  1133. public function removeAiProductRetail(AiProductRetail $aiProductRetail): static
  1134. {
  1135. if ($this->aiProductRetails->removeElement($aiProductRetail)) {
  1136. // set the owning side to null (unless already changed)
  1137. if ($aiProductRetail->getClinic() === $this) {
  1138. $aiProductRetail->setClinic(null);
  1139. }
  1140. }
  1141. return $this;
  1142. }
  1143. /**
  1144. * @return Collection<int, AiAddresses>
  1145. */
  1146. public function getAiAddresses(): Collection
  1147. {
  1148. return $this->aiAddresses;
  1149. }
  1150. public function addAiAddress(AiAddresses $aiAddress): static
  1151. {
  1152. if (!$this->aiAddresses->contains($aiAddress)) {
  1153. $this->aiAddresses->add($aiAddress);
  1154. $aiAddress->setClinic($this);
  1155. }
  1156. return $this;
  1157. }
  1158. public function removeAiAddress(AiAddresses $aiAddress): static
  1159. {
  1160. if ($this->aiAddresses->removeElement($aiAddress)) {
  1161. // set the owning side to null (unless already changed)
  1162. if ($aiAddress->getClinic() === $this) {
  1163. $aiAddress->setClinic(null);
  1164. }
  1165. }
  1166. return $this;
  1167. }
  1168. /**
  1169. * @return Collection<int, AiBaskets>
  1170. */
  1171. public function getAiBaskets(): Collection
  1172. {
  1173. return $this->aiBaskets;
  1174. }
  1175. public function addAiBasket(AiBaskets $aiBasket): static
  1176. {
  1177. if (!$this->aiBaskets->contains($aiBasket)) {
  1178. $this->aiBaskets->add($aiBasket);
  1179. $aiBasket->setClinic($this);
  1180. }
  1181. return $this;
  1182. }
  1183. public function removeAiBasket(AiBaskets $aiBasket): static
  1184. {
  1185. if ($this->aiBaskets->removeElement($aiBasket)) {
  1186. // set the owning side to null (unless already changed)
  1187. if ($aiBasket->getClinic() === $this) {
  1188. $aiBasket->setClinic(null);
  1189. }
  1190. }
  1191. return $this;
  1192. }
  1193. /**
  1194. * @return Collection<int, AiOrders>
  1195. */
  1196. public function getAiOrders(): Collection
  1197. {
  1198. return $this->aiOrders;
  1199. }
  1200. public function addAiOrder(AiOrders $aiOrder): static
  1201. {
  1202. if (!$this->aiOrders->contains($aiOrder)) {
  1203. $this->aiOrders->add($aiOrder);
  1204. $aiOrder->setClinic($this);
  1205. }
  1206. return $this;
  1207. }
  1208. public function removeAiOrder(AiOrders $aiOrder): static
  1209. {
  1210. if ($this->aiOrders->removeElement($aiOrder)) {
  1211. // set the owning side to null (unless already changed)
  1212. if ($aiOrder->getClinic() === $this) {
  1213. $aiOrder->setClinic(null);
  1214. }
  1215. }
  1216. return $this;
  1217. }
  1218. /**
  1219. * @return Collection<int, AiClinicProducts>
  1220. */
  1221. public function getAiClinicProducts(): Collection
  1222. {
  1223. return $this->aiClinicProducts;
  1224. }
  1225. public function addAiCinicProduct(AiClinicProducts $aiCinicProduct): static
  1226. {
  1227. if (!$this->aiClinicProducts->contains($aiCinicProduct)) {
  1228. $this->aiClinicProducts->add($aiCinicProduct);
  1229. $aiCinicProduct->setClinic($this);
  1230. }
  1231. return $this;
  1232. }
  1233. public function removeAiCinicProduct(AiClinicProducts $aiCinicProduct): static
  1234. {
  1235. if ($this->aiClinicProducts->removeElement($aiCinicProduct)) {
  1236. // set the owning side to null (unless already changed)
  1237. if ($aiCinicProduct->getClinic() === $this) {
  1238. $aiCinicProduct->setClinic(null);
  1239. }
  1240. }
  1241. return $this;
  1242. }
  1243. /**
  1244. * @return Collection<int, AiCustomPriceLists>
  1245. */
  1246. public function getAiCustomPriceLists(): Collection
  1247. {
  1248. return $this->aiCustomPriceLists;
  1249. }
  1250. public function addAiCustomPriceList(AiCustomPriceLists $aiCustomPriceList): static
  1251. {
  1252. if (!$this->aiCustomPriceLists->contains($aiCustomPriceList)) {
  1253. $this->aiCustomPriceLists->add($aiCustomPriceList);
  1254. $aiCustomPriceList->setClinic($this);
  1255. }
  1256. return $this;
  1257. }
  1258. public function removeAiCustomPriceList(AiCustomPriceLists $aiCustomPriceList): static
  1259. {
  1260. if ($this->aiCustomPriceLists->removeElement($aiCustomPriceList)) {
  1261. // set the owning side to null (unless already changed)
  1262. if ($aiCustomPriceList->getClinic() === $this) {
  1263. $aiCustomPriceList->setClinic(null);
  1264. }
  1265. }
  1266. return $this;
  1267. }
  1268. public function getName(): ?string
  1269. {
  1270. return $this->name;
  1271. }
  1272. public function setName(?string $name): static
  1273. {
  1274. $this->name = $name;
  1275. return $this;
  1276. }
  1277. }