src/Entity/GuardianRegister/GuardianRegister.php line 24

Open in your IDE?
  1. <?php
  2. namespace App\Entity\GuardianRegister;
  3. use App\Entity\Admin;
  4. use App\Entity\EarlyPayment;
  5. use App\Entity\Guardian;
  6. use App\Entity\GuardianContract;
  7. use App\Entity\MontonioLog;
  8. use App\Repository\GuardianRegister\GuardianRegisterRepository;
  9. use App\Trait\ManualAssignmentReasonTrait;
  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. /**
  15. * @ORM\Entity(repositoryClass=GuardianRegisterRepository::class)
  16. * @ORM\Table(name="guardian_register", indexes={
  17. * @ORM\Index(name="gr_sales_person_idx", columns={"sales_person_id"}),
  18. * @ORM\Index(name="gr_guardian_idx", columns={"guardian_id"})
  19. * })
  20. */
  21. class GuardianRegister
  22. {
  23. use ManualAssignmentReasonTrait;
  24. const STATUS_NEW = [
  25. 'value' => "NEW",
  26. 'text' => 'Naujas',
  27. 'color' => '#f8d7da'
  28. ];
  29. const STATUS_IGNORED = [
  30. 'value' => "IGNORED",
  31. 'text' => 'Nepakėlė',
  32. 'color' => '#fff3cd'
  33. ];
  34. const STATUS_SENT = [
  35. 'value' => "SENT",
  36. 'text' => 'Išsiųsta',
  37. 'color' => '#d4edda'
  38. ];
  39. const STATUS_SLEEP = [
  40. 'value' => "SLEEP",
  41. 'text' => 'Sleep',
  42. 'color' => '#FF0000'
  43. ];
  44. const STATUS_DECLINED = [
  45. 'value' => "DECLINED",
  46. 'text' => 'Atmesta',
  47. 'color' => '#ffa600'
  48. ];
  49. const STATUS_CONFIRMED = [
  50. 'value' => "CONFIRMED",
  51. 'text' => 'Patvirtinta',
  52. 'color' => '#ffa600'
  53. ];
  54. const STATUS_LOST = [
  55. 'value' => "LOST",
  56. 'text' => 'Lost',
  57. 'color' => '#45C6F6'
  58. ];
  59. const STATUS_UNTARGETED = [
  60. 'value' => "UNTARGETED",
  61. 'text' => 'Netikslinė',
  62. 'color' => '#c75b5b'
  63. ];
  64. const STATUS_DUPLICATE = [
  65. 'value' => "DUPLICATE",
  66. 'text' => 'Dublikatas',
  67. 'color' => '#d6d8db'
  68. ];
  69. //Laukiama - kai uždedame varnele, jog mokėjimas į priekį ir klientas gauna laišką. Max šitą statusą turi 48 val. Jeigu neapmoka.
  70. //Lost 48 - klientas laiške paspaudė, kad jo nedomina.
  71. //Apmokėta pirma - tokį statusą rodome, kai apmokėta pirma pamoka, klientas jau atsiranda ir Tėvai/Klientai, bet dar vis lieka ir tabe Registracijos, jos SALES galėtų matyti ir apmokės ir toliau po pirmos pamokos.
  72. //Nesumokėta 48 - klientų statusas, kurie neapmokėjo už pirmą pamoką per 48 val.
  73. //Neapmokėta - klientai po 24 val. Po pirmos pamokos gauna laiška, kuriame yra visa arba dalinė mėnesio užsiėmimų saskaita. Jeigu po to laiško gavimo klientas neapmoką per 48 val. Užsideda šitas statusas.
  74. const STATUS_WAITING = [
  75. 'value' => "WAITING",
  76. 'text' => 'Laukiama',
  77. 'color' => '#d4edda'
  78. ];
  79. const STATUS_LOST_48 = [
  80. 'value' => "LOST_48",
  81. 'text' => 'Lost 48',
  82. 'color' => '#45C6F6'
  83. ];
  84. const STATUS_PAID_FIRST = [
  85. 'value' => "PAID_FIRST",
  86. 'text' => 'Apmokėta pirma',
  87. 'color' => '#28a745'
  88. ];
  89. const STATUS_NOT_PAID = [
  90. 'value' => "NOT_PAID",
  91. 'text' => 'Neapmokėta',
  92. 'color' => '#f8d7da'
  93. ];
  94. const STATUS_NOT_PAID_48 = [
  95. 'value' => "NOTPAID_48",
  96. 'text' => 'Nesumokėta 48',
  97. 'color' => '#FF0000'
  98. ];
  99. const STATUS_LEFT_EARLY_PAYMENT = [
  100. 'value' => "LEFT_EARLY_PAYMENT",
  101. 'text' => 'Išėjęs mok. į priekį',
  102. 'color' => '#FF0000'
  103. ];
  104. const GUARDIAN_REGISTER_STATUSES = [
  105. self::STATUS_NEW,
  106. self::STATUS_IGNORED,
  107. self::STATUS_SENT,
  108. self::STATUS_SLEEP,
  109. self::STATUS_DECLINED,
  110. self::STATUS_CONFIRMED,
  111. self::STATUS_LOST,
  112. self::STATUS_UNTARGETED,
  113. self::STATUS_WAITING,
  114. self::STATUS_LOST_48,
  115. self::STATUS_PAID_FIRST,
  116. self::STATUS_NOT_PAID,
  117. self::STATUS_NOT_PAID_48,
  118. self::STATUS_LEFT_EARLY_PAYMENT,
  119. self::STATUS_DUPLICATE,
  120. ];
  121. /**
  122. * Statuses in which the person is still being worked on by sales. A new
  123. * registration from the same person while one of these exists is a
  124. * duplicate; after any other status (Lost, Atmesta, Sleep, Netikslinė,
  125. * converted client...) it is a real new lead.
  126. */
  127. const OPEN_STATUSES_FOR_DUPLICATE_CHECK = [
  128. self::STATUS_NEW['value'],
  129. self::STATUS_IGNORED['value'],
  130. self::STATUS_SENT['value'],
  131. self::STATUS_WAITING['value'],
  132. self::STATUS_PAID_FIRST['value'],
  133. self::STATUS_NOT_PAID['value'],
  134. self::STATUS_NOT_PAID_48['value'],
  135. ];
  136. const PLACEHOLDER_EMAIL = 'nesuvestasemailas@gmail.com';
  137. const PLACEHOLDER_PHONE = '8888888888';
  138. /**
  139. * @ORM\Id
  140. * @ORM\GeneratedValue
  141. * @ORM\Column(type="integer")
  142. * @Groups({"GuardianRegisterList"})
  143. */
  144. private $id;
  145. /**
  146. * @ORM\Column(type="boolean", nullable=true)
  147. * @Groups({"GuardianRegisterList"})
  148. */
  149. private $isGuardian = true;
  150. /**
  151. * @ORM\Column(type="string", length=255, nullable=true)
  152. * @Groups({"GuardianRegisterList"})
  153. */
  154. private $email = self::PLACEHOLDER_EMAIL;
  155. /**
  156. * @ORM\Column(type="string", length=255, nullable=true)
  157. * @Groups({"GuardianRegisterList"})
  158. */
  159. private $name;
  160. /**
  161. * @ORM\Column(type="string", length=255, nullable=true)
  162. * @Groups({"GuardianRegisterList"})
  163. */
  164. private $lastname;
  165. /**
  166. * @ORM\Column(type="string", length=255, nullable=true)
  167. * @Groups({"GuardianRegisterList"})
  168. */
  169. private $phone = self::PLACEHOLDER_PHONE;
  170. /**
  171. * @ORM\Column(type="string", length=255, nullable=true)
  172. * @Groups({"GuardianRegisterList"})
  173. */
  174. private $guardianName;
  175. /**
  176. * @ORM\Column(type="string", length=255, nullable=true)
  177. * @Groups({"GuardianRegisterList"})
  178. */
  179. private $guardianLastname;
  180. /**
  181. * @ORM\Column(type="string", length=255, nullable=true)
  182. * @Groups({"GuardianRegisterList"})
  183. */
  184. private $guardianPhone;
  185. /**
  186. * @ORM\Column(type="string", length=255, nullable=true)
  187. * @Groups({"GuardianRegisterList"})
  188. */
  189. private $guardianEmail;
  190. /**
  191. * @ORM\Column(type="datetime", nullable=true)
  192. * @Groups({"GuardianRegisterList"})
  193. */
  194. private $createdAt;
  195. /**
  196. * @ORM\Column(type="string", length=255, nullable=true)
  197. * @Groups({"GuardianRegisterList"})
  198. */
  199. private $status = self::STATUS_NEW['value'];
  200. /**
  201. * @ORM\ManyToOne(targetEntity=Admin::class, inversedBy="guardianRegisters")
  202. * @Groups({"GuardianRegisterList", "ChildPreferenceAssignmentList","GuardianList"})
  203. */
  204. private $salesPerson;
  205. /**
  206. * @ORM\Column(type="integer", nullable=true)
  207. */
  208. private $ignoredEmailCount = 0;
  209. /**
  210. * @ORM\Column(type="boolean", nullable=true)
  211. * @Groups({"GuardianRegisterList"})
  212. */
  213. private $sign = true;
  214. /**
  215. * @ORM\Column(type="string", length=255, nullable=true)
  216. */
  217. private $contractToken;
  218. /**
  219. * @ORM\Column(type="string", length=255, nullable=true)
  220. */
  221. private $cancelToken;
  222. /**
  223. * @ORM\Column(type="datetime", nullable=true)
  224. * @Groups({"GuardianRegisterList"})
  225. */
  226. private $contractGeneratedAt;
  227. /**
  228. * @ORM\Column(type="text", nullable=true)
  229. */
  230. private $marksignUrl;
  231. /**
  232. * @ORM\Column(type="text", nullable=true)
  233. */
  234. private $marksignDocumentId;
  235. /**
  236. * @ORM\Column(type="integer", nullable=true)
  237. */
  238. private $contractEmailCount = 0;
  239. /**
  240. * @ORM\OneToMany(targetEntity=GuardianRegisterChild::class, mappedBy="guardianRegister")
  241. */
  242. private $guardianRegisterChildren;
  243. /**
  244. * @ORM\Column(type="text", nullable=true)
  245. */
  246. private $signedContractUrl;
  247. /**
  248. * @ORM\OneToOne(targetEntity=Guardian::class, inversedBy="guardianRegister", cascade={"persist", "remove"})
  249. * @Groups({"GuardianRegisterList"})
  250. */
  251. private $guardian;
  252. /**
  253. * @ORM\Column(type="float", nullable=true)
  254. */
  255. private $priceChange;
  256. /**
  257. * @ORM\ManyToOne(targetEntity=GuardianContract::class, inversedBy="guardianRegisters")
  258. */
  259. private $guardianContract;
  260. /**
  261. * @ORM\Column(type="string", length=255, nullable=true)
  262. */
  263. private $currentGuardianFoundBy;
  264. /**
  265. * @ORM\Column(type="datetime", nullable=true)
  266. */
  267. private $salesAssignedAt;
  268. /**
  269. * @ORM\Column(type="datetime", nullable=true)
  270. */
  271. private $contractSentAt;
  272. /**
  273. * @ORM\Column(type="datetime", nullable=true)
  274. */
  275. private $contractSignedAt;
  276. /**
  277. * @ORM\Column(type="text", nullable=true)
  278. * @Groups({"GuardianRegisterList"})
  279. */
  280. private $comment;
  281. /**
  282. * @ORM\Column(type="datetime", nullable=true)
  283. * @Groups({"GuardianRegisterList"})
  284. */
  285. private $recallAt;
  286. /**
  287. * @ORM\Column(type="datetime", nullable=true)
  288. */
  289. private $lostAt;
  290. /**
  291. * @ORM\Column(type="datetime", nullable=true)
  292. */
  293. private $ignoredAt;
  294. /**
  295. * @ORM\Column(type="boolean", nullable=true,options={"default" : "0"})
  296. */
  297. private $isDeleted = false;
  298. /**
  299. * @ORM\Column(type="boolean", nullable=true)
  300. */
  301. private $flagTrial;
  302. /**
  303. * @ORM\Column(type="integer", nullable=true)
  304. */
  305. private $guardianPriceDiscount;
  306. /**
  307. * @ORM\Column(type="string", length=255, nullable=true)
  308. * @Groups({"GuardianRegisterList", "ChildPreferenceAssignmentList"})
  309. */
  310. private $referralCode;
  311. /**
  312. * @ORM\Column(type="boolean", nullable=true)
  313. */
  314. private $referralBonusUsed;
  315. /**
  316. * @ORM\Column(type="string", length=255, nullable=true)
  317. */
  318. private $googleSessionId;
  319. /**
  320. * @ORM\Column(type="string", length=255, nullable=true)
  321. */
  322. private $googleClientId;
  323. /**
  324. * @ORM\Column(type="string", length=255, nullable=true)
  325. */
  326. private $ad;
  327. /**
  328. * @ORM\Column(type="string", length=255, nullable=true)
  329. */
  330. private $referer;
  331. /**
  332. * @ORM\Column(type="string", length=255, nullable=true)
  333. */
  334. private $refererCategory;
  335. /**
  336. * @ORM\Column(type="string", length=255, nullable=true)
  337. */
  338. private $utmSource;
  339. /**
  340. * @ORM\Column(type="string", length=255, nullable=true)
  341. */
  342. private $utmMedium;
  343. /**
  344. * @ORM\Column(type="string", length=255, nullable=true)
  345. */
  346. private $utmCampaign;
  347. /**
  348. * @ORM\Column(type="text", nullable=true)
  349. */
  350. private $landingPage;
  351. /**
  352. * @ORM\Column(type="boolean", nullable=true)
  353. */
  354. private $flagManualAssignment;
  355. /**
  356. * @ORM\Column(type="boolean", nullable=true)
  357. */
  358. private $flagEarlyPayment;
  359. /**
  360. * @ORM\Column(type="integer", nullable=true)
  361. */
  362. private $earlyPaymentDay;
  363. /**
  364. * @ORM\Column(type="string", length=255, nullable=true)
  365. */
  366. private $earlyPaymentToken;
  367. /**
  368. * @ORM\Column(type="datetime", nullable=true)
  369. */
  370. private $earlyPaymentTokenValidTo;
  371. /**
  372. * @ORM\OneToMany(targetEntity=EarlyPayment::class, mappedBy="guardianRegister")
  373. */
  374. private $earlyPayments;
  375. /**
  376. * @ORM\OneToMany(targetEntity=MontonioLog::class, mappedBy="guardianRegister")
  377. */
  378. private $montonioLogs;
  379. /**
  380. * @ORM\Column(type="datetime", nullable=true)
  381. */
  382. private $earlyPaymentSentAt;
  383. /**
  384. * @ORM\Column(type="json", nullable=true)
  385. */
  386. private $data;
  387. public function __construct()
  388. {
  389. $this->createdAt = new \DateTime();
  390. $this->guardianRegisterChildren = new ArrayCollection();
  391. $this->earlyPayments = new ArrayCollection();
  392. $this->montonioLogs = new ArrayCollection();
  393. }
  394. public function getId(): ?int
  395. {
  396. return $this->id;
  397. }
  398. public function getIsGuardian(): ?bool
  399. {
  400. return $this->isGuardian;
  401. }
  402. public function setIsGuardian(?bool $isGuardian): self
  403. {
  404. $this->isGuardian = $isGuardian;
  405. return $this;
  406. }
  407. public function getEmail(): ?string
  408. {
  409. return $this->email;
  410. }
  411. public function setEmail(?string $email): self
  412. {
  413. $this->email = $email;
  414. return $this;
  415. }
  416. public function getName(): ?string
  417. {
  418. return $this->name;
  419. }
  420. public function setName(?string $name): self
  421. {
  422. $this->name = $name;
  423. return $this;
  424. }
  425. public function getLastname(): ?string
  426. {
  427. return $this->lastname;
  428. }
  429. public function setLastname(?string $lastname): self
  430. {
  431. $this->lastname = $lastname;
  432. return $this;
  433. }
  434. public function getPhone(): ?string
  435. {
  436. return $this->phone;
  437. }
  438. public function setPhone(?string $phone): self
  439. {
  440. $phone = str_replace(' ', '', (string) $phone);
  441. $this->phone = $phone;
  442. return $this;
  443. }
  444. public function getGuardianName(): ?string
  445. {
  446. return $this->guardianName;
  447. }
  448. public function setGuardianName(?string $guardianName): self
  449. {
  450. $this->guardianName = $guardianName;
  451. return $this;
  452. }
  453. public function getGuardianLastname(): ?string
  454. {
  455. return $this->guardianLastname;
  456. }
  457. public function setGuardianLastname(?string $guardianLastname): self
  458. {
  459. $this->guardianLastname = $guardianLastname;
  460. return $this;
  461. }
  462. public function getGuardianPhone(): ?string
  463. {
  464. return $this->guardianPhone;
  465. }
  466. public function setGuardianPhone(?string $guardianPhone): self
  467. {
  468. $guardianPhone = str_replace(' ', '', $guardianPhone);
  469. $this->guardianPhone = $guardianPhone;
  470. return $this;
  471. }
  472. public function getGuardianEmail(): ?string
  473. {
  474. return $this->guardianEmail;
  475. }
  476. public function setGuardianEmail(?string $guardianEmail): self
  477. {
  478. $this->guardianEmail = $guardianEmail;
  479. return $this;
  480. }
  481. public function getCreatedAt(): ?\DateTimeInterface
  482. {
  483. return $this->createdAt;
  484. }
  485. public function setCreatedAt(?\DateTimeInterface $createdAt): self
  486. {
  487. $this->createdAt = $createdAt;
  488. return $this;
  489. }
  490. public function getStatus(): ?string
  491. {
  492. return $this->status;
  493. }
  494. public function setStatus(?string $status): self
  495. {
  496. $this->status = $status;
  497. return $this;
  498. }
  499. public function getSalesPerson(): ?Admin
  500. {
  501. return $this->salesPerson;
  502. }
  503. public function setSalesPerson(?Admin $salesPerson): self
  504. {
  505. $this->salesPerson = $salesPerson;
  506. return $this;
  507. }
  508. public function getIgnoredEmailCount(): ?int
  509. {
  510. return $this->ignoredEmailCount;
  511. }
  512. public function setIgnoredEmailCount(?int $ignoredEmailCount): self
  513. {
  514. $this->ignoredEmailCount = $ignoredEmailCount;
  515. return $this;
  516. }
  517. public function getSign(): ?bool
  518. {
  519. return $this->sign;
  520. }
  521. public function setSign(?bool $sign): self
  522. {
  523. $this->sign = $sign;
  524. return $this;
  525. }
  526. public function getContractToken(): ?string
  527. {
  528. return $this->contractToken;
  529. }
  530. public function setContractToken(?string $contract_token): self
  531. {
  532. $this->contractToken = $contract_token;
  533. return $this;
  534. }
  535. public function getCancelToken(): ?string
  536. {
  537. return $this->cancelToken;
  538. }
  539. public function setCancelToken(?string $cancel_token): self
  540. {
  541. $this->cancelToken = $cancel_token;
  542. return $this;
  543. }
  544. public function getContractGeneratedAt(): ?\DateTimeInterface
  545. {
  546. return $this->contractGeneratedAt;
  547. }
  548. public function setContractGeneratedAt(?\DateTimeInterface $contractGeneratedAt): self
  549. {
  550. $this->contractGeneratedAt = $contractGeneratedAt;
  551. return $this;
  552. }
  553. public function getMarksignUrl(): ?string
  554. {
  555. return $this->marksignUrl;
  556. }
  557. public function setMarksignUrl(?string $marksignUrl): self
  558. {
  559. $this->marksignUrl = $marksignUrl;
  560. return $this;
  561. }
  562. public function getMarksignDocumentId(): ?string
  563. {
  564. return $this->marksignDocumentId;
  565. }
  566. public function setMarksignDocumentId(?string $marksignDocumentId): self
  567. {
  568. $this->marksignDocumentId = $marksignDocumentId;
  569. return $this;
  570. }
  571. public function getContractEmailCount(): ?int
  572. {
  573. return $this->contractEmailCount;
  574. }
  575. public function setContractEmailCount(?int $contractEmailCount): self
  576. {
  577. $this->contractEmailCount = $contractEmailCount;
  578. return $this;
  579. }
  580. /**
  581. * @return Collection<int, GuardianRegisterChild>
  582. */
  583. public function getGuardianRegisterChildren(): Collection
  584. {
  585. return $this->guardianRegisterChildren;
  586. }
  587. public function addGuardianRegisterChild(GuardianRegisterChild $guardianRegisterChild): self
  588. {
  589. if (!$this->guardianRegisterChildren->contains($guardianRegisterChild)) {
  590. $this->guardianRegisterChildren[] = $guardianRegisterChild;
  591. $guardianRegisterChild->setGuardianRegister($this);
  592. }
  593. return $this;
  594. }
  595. public function removeGuardianRegisterChild(GuardianRegisterChild $guardianRegisterChild): self
  596. {
  597. if ($this->guardianRegisterChildren->removeElement($guardianRegisterChild)) {
  598. // set the owning side to null (unless already changed)
  599. if ($guardianRegisterChild->getGuardianRegister() === $this) {
  600. $guardianRegisterChild->setGuardianRegister(null);
  601. }
  602. }
  603. return $this;
  604. }
  605. public function getSignedContractUrl(): ?string
  606. {
  607. return $this->signedContractUrl;
  608. }
  609. public function setSignedContractUrl(?string $signedContractUrl): self
  610. {
  611. $this->signedContractUrl = $signedContractUrl;
  612. return $this;
  613. }
  614. public function getGuardian(): ?Guardian
  615. {
  616. return $this->guardian;
  617. }
  618. public function setGuardian(?Guardian $guardian): self
  619. {
  620. $this->guardian = $guardian;
  621. return $this;
  622. }
  623. public function getPriceChange(): ?float
  624. {
  625. return $this->priceChange;
  626. }
  627. public function setPriceChange(?float $priceChange): self
  628. {
  629. $this->priceChange = $priceChange;
  630. return $this;
  631. }
  632. public function getGuardianContract(): ?GuardianContract
  633. {
  634. return $this->guardianContract;
  635. }
  636. public function setGuardianContract(?GuardianContract $guardianContract): self
  637. {
  638. $this->guardianContract = $guardianContract;
  639. return $this;
  640. }
  641. public function getCurrentGuardianFoundBy(): ?string
  642. {
  643. return $this->currentGuardianFoundBy;
  644. }
  645. public function setCurrentGuardianFoundBy(?string $currentGuardianFoundBy): self
  646. {
  647. $this->currentGuardianFoundBy = $currentGuardianFoundBy;
  648. return $this;
  649. }
  650. public function getSalesAssignedAt(): ?\DateTimeInterface
  651. {
  652. return $this->salesAssignedAt;
  653. }
  654. public function setSalesAssignedAt(?\DateTimeInterface $salesAssignedAt): self
  655. {
  656. $this->salesAssignedAt = $salesAssignedAt;
  657. return $this;
  658. }
  659. public function getContractSentAt(): ?\DateTimeInterface
  660. {
  661. return $this->contractSentAt;
  662. }
  663. public function setContractSentAt(?\DateTimeInterface $contractSentAt): self
  664. {
  665. $this->contractSentAt = $contractSentAt;
  666. return $this;
  667. }
  668. public function getContractSignedAt(): ?\DateTimeInterface
  669. {
  670. return $this->contractSignedAt;
  671. }
  672. public function setContractSignedAt(?\DateTimeInterface $contractSignedAt): self
  673. {
  674. $this->contractSignedAt = $contractSignedAt;
  675. return $this;
  676. }
  677. public function getComment(): ?string
  678. {
  679. return $this->comment;
  680. }
  681. public function setComment(?string $comment): self
  682. {
  683. $this->comment = $comment;
  684. return $this;
  685. }
  686. public function getRecallAt(): ?\DateTimeInterface
  687. {
  688. return $this->recallAt;
  689. }
  690. public function setRecallAt(?\DateTimeInterface $recallAt): self
  691. {
  692. $this->recallAt = $recallAt;
  693. return $this;
  694. }
  695. public function getLostAt(): ?\DateTimeInterface
  696. {
  697. return $this->lostAt;
  698. }
  699. public function setLostAt(?\DateTimeInterface $lostAt): self
  700. {
  701. $this->lostAt = $lostAt;
  702. return $this;
  703. }
  704. public function getIgnoredAt(): ?\DateTimeInterface
  705. {
  706. return $this->ignoredAt;
  707. }
  708. public function setIgnoredAt(?\DateTimeInterface $ignoredAt): self
  709. {
  710. $this->ignoredAt = $ignoredAt;
  711. return $this;
  712. }
  713. public function getIsDeleted(): ?bool
  714. {
  715. return $this->isDeleted;
  716. }
  717. public function setIsDeleted(?bool $isDeleted): self
  718. {
  719. $this->isDeleted = $isDeleted;
  720. return $this;
  721. }
  722. public function getFlagTrial(): ?bool
  723. {
  724. return $this->flagTrial;
  725. }
  726. public function setFlagTrial(?bool $flagTrial): self
  727. {
  728. $this->flagTrial = $flagTrial;
  729. return $this;
  730. }
  731. public function getGuardianPriceDiscount(): ?int
  732. {
  733. return $this->guardianPriceDiscount;
  734. }
  735. public function setGuardianPriceDiscount(?int $guardianPriceDiscount): self
  736. {
  737. $this->guardianPriceDiscount = $guardianPriceDiscount;
  738. return $this;
  739. }
  740. public function getReferralCode(): ?string
  741. {
  742. return $this->referralCode;
  743. }
  744. public function setReferralCode(?string $referralCode): self
  745. {
  746. $this->referralCode = $referralCode;
  747. return $this;
  748. }
  749. public function isReferralBonusUsed(): ?bool
  750. {
  751. return $this->referralBonusUsed;
  752. }
  753. public function setReferralBonusUsed(?bool $referralBonusUsed): self
  754. {
  755. $this->referralBonusUsed = $referralBonusUsed;
  756. return $this;
  757. }
  758. public function getGoogleSessionId(): ?string
  759. {
  760. return $this->googleSessionId;
  761. }
  762. public function setGoogleSessionId(?string $googleSessionId): self
  763. {
  764. $this->googleSessionId = $googleSessionId;
  765. return $this;
  766. }
  767. public function getGoogleClientId(): ?string
  768. {
  769. return $this->googleClientId;
  770. }
  771. public function setGoogleClientId(?string $googleClientId): self
  772. {
  773. $this->googleClientId = $googleClientId;
  774. return $this;
  775. }
  776. public function getAd(): ?string
  777. {
  778. return $this->ad;
  779. }
  780. public function setAd(?string $ad): self
  781. {
  782. $this->ad = $ad;
  783. return $this;
  784. }
  785. public function getReferer(): ?string
  786. {
  787. return $this->referer;
  788. }
  789. public function setReferer(?string $referer): self
  790. {
  791. $this->referer = $referer;
  792. return $this;
  793. }
  794. public function getRefererCategory(): ?string
  795. {
  796. return $this->refererCategory;
  797. }
  798. public function setRefererCategory(?string $refererCategory): self
  799. {
  800. $this->refererCategory = $refererCategory;
  801. return $this;
  802. }
  803. public function getUtmSource(): ?string
  804. {
  805. return $this->utmSource;
  806. }
  807. public function setUtmSource(?string $utmSource): self
  808. {
  809. $this->utmSource = $utmSource;
  810. return $this;
  811. }
  812. public function getUtmMedium(): ?string
  813. {
  814. return $this->utmMedium;
  815. }
  816. public function setUtmMedium(?string $utmMedium): self
  817. {
  818. $this->utmMedium = $utmMedium;
  819. return $this;
  820. }
  821. public function getUtmCampaign(): ?string
  822. {
  823. return $this->utmCampaign;
  824. }
  825. public function setUtmCampaign(?string $utmCampaign): self
  826. {
  827. $this->utmCampaign = $utmCampaign;
  828. return $this;
  829. }
  830. public function getLandingPage(): ?string
  831. {
  832. return $this->landingPage;
  833. }
  834. public function setLandingPage(?string $landingPage): self
  835. {
  836. $this->landingPage = $landingPage;
  837. return $this;
  838. }
  839. public function isFlagManualAssignment(): ?bool
  840. {
  841. return $this->flagManualAssignment;
  842. }
  843. public function setFlagManualAssignment(?bool $flagManualAssignment): self
  844. {
  845. $this->flagManualAssignment = $flagManualAssignment;
  846. return $this;
  847. }
  848. public function isFlagEarlyPayment(): ?bool
  849. {
  850. return $this->flagEarlyPayment;
  851. }
  852. public function setFlagEarlyPayment(?bool $flagEarlyPayment): self
  853. {
  854. $this->flagEarlyPayment = $flagEarlyPayment;
  855. return $this;
  856. }
  857. public function getEarlyPaymentDay(): ?int
  858. {
  859. return $this->earlyPaymentDay;
  860. }
  861. public function setEarlyPaymentDay(?int $earlyPaymentDay): self
  862. {
  863. $this->earlyPaymentDay = $earlyPaymentDay;
  864. return $this;
  865. }
  866. public function getEarlyPaymentToken(): ?string
  867. {
  868. return $this->earlyPaymentToken;
  869. }
  870. public function setEarlyPaymentToken(?string $earlyPaymentToken): self
  871. {
  872. $this->earlyPaymentToken = $earlyPaymentToken;
  873. return $this;
  874. }
  875. public function getEarlyPaymentTokenValidTo(): ?\DateTimeInterface
  876. {
  877. return $this->earlyPaymentTokenValidTo;
  878. }
  879. public function setEarlyPaymentTokenValidTo(?\DateTimeInterface $earlyPaymentTokenValidTo): self
  880. {
  881. $this->earlyPaymentTokenValidTo = $earlyPaymentTokenValidTo;
  882. return $this;
  883. }
  884. /**
  885. * @return Collection<int, EarlyPayment>
  886. */
  887. public function getEarlyPayments(): Collection
  888. {
  889. return $this->earlyPayments;
  890. }
  891. public function addEarlyPayment(EarlyPayment $earlyPayment): self
  892. {
  893. if (!$this->earlyPayments->contains($earlyPayment)) {
  894. $this->earlyPayments[] = $earlyPayment;
  895. $earlyPayment->setGuardianRegister($this);
  896. }
  897. return $this;
  898. }
  899. public function removeEarlyPayment(EarlyPayment $earlyPayment): self
  900. {
  901. if ($this->earlyPayments->removeElement($earlyPayment)) {
  902. // set the owning side to null (unless already changed)
  903. if ($earlyPayment->getGuardianRegister() === $this) {
  904. $earlyPayment->setGuardianRegister(null);
  905. }
  906. }
  907. return $this;
  908. }
  909. /**
  910. * @return Collection<int, MontonioLog>
  911. */
  912. public function getMontonioLogs(): Collection
  913. {
  914. return $this->montonioLogs;
  915. }
  916. public function addMontonioLog(MontonioLog $montonioLog): self
  917. {
  918. if (!$this->montonioLogs->contains($montonioLog)) {
  919. $this->montonioLogs[] = $montonioLog;
  920. $montonioLog->setGuardianRegister($this);
  921. }
  922. return $this;
  923. }
  924. public function removeMontonioLog(MontonioLog $montonioLog): self
  925. {
  926. if ($this->montonioLogs->removeElement($montonioLog)) {
  927. // set the owning side to null (unless already changed)
  928. if ($montonioLog->getGuardianRegister() === $this) {
  929. $montonioLog->setGuardianRegister(null);
  930. }
  931. }
  932. return $this;
  933. }
  934. public function getEarlyPaymentSentAt(): ?\DateTimeInterface
  935. {
  936. return $this->earlyPaymentSentAt;
  937. }
  938. public function setEarlyPaymentSentAt(?\DateTimeInterface $earlyPaymentSentAt): self
  939. {
  940. $this->earlyPaymentSentAt = $earlyPaymentSentAt;
  941. return $this;
  942. }
  943. public function getData(): ?array
  944. {
  945. return $this->data;
  946. }
  947. public function setData(?array $data): self
  948. {
  949. $this->data = $data;
  950. return $this;
  951. }
  952. }