vendor/uvdesk/core-framework/Entity/Ticket.php line 928

Open in your IDE?
  1. <?php
  2. namespace Webkul\UVDesk\CoreFrameworkBundle\Entity;
  3. use Doctrine\ORM\Mapping as ORM;
  4. /**
  5. * Ticket
  6. * @ORM\Entity(repositoryClass="Webkul\UVDesk\CoreFrameworkBundle\Repository\TicketRepository")
  7. * @ORM\HasLifecycleCallbacks
  8. * @ORM\Table(name="uv_ticket")
  9. */
  10. class Ticket
  11. {
  12. const AGENT_GLOBAL_ACCESS = 'TICKET_GLOBAL';
  13. const AGENT_GROUP_ACCESS = 'TICKET_GROUP';
  14. const AGENT_TEAM_ACCESS = 'TICKET_TEAM';
  15. const AGENT_INDIVIDUAL_ACCESS = 'TICKET_INDIVIDUAL';
  16. /**
  17. * @var integer
  18. * @ORM\Id()
  19. * @ORM\Column(type="integer")
  20. * @ORM\GeneratedValue(strategy="AUTO")
  21. */
  22. private $id;
  23. /**
  24. * @var string
  25. * @ORM\Column(type="string", length=191)
  26. */
  27. private $source;
  28. /**
  29. * @var string
  30. * @ORM\Column(type="string", length=191, nullable=true)
  31. */
  32. private $mailboxEmail;
  33. /**
  34. * @var string
  35. * @ORM\Column(type="text", nullable=true)
  36. */
  37. private $subject;
  38. /**
  39. * @var string
  40. * @ORM\Column(type="text", nullable=true)
  41. */
  42. private $referenceIds;
  43. /**
  44. * @var boolean
  45. * @ORM\Column(type="boolean", options={"default": true})
  46. */
  47. private $isNew = true;
  48. /**
  49. * @var boolean
  50. * @ORM\Column(type="boolean", options={"default": false})
  51. */
  52. private $isReplied = false;
  53. /**
  54. * @var boolean
  55. * @ORM\Column(type="boolean", options={"default": true})
  56. */
  57. private $isReplyEnabled = true;
  58. /**
  59. * @var boolean
  60. * @ORM\Column(type="boolean", options={"default": false})
  61. */
  62. private $isStarred = false;
  63. /**
  64. * @var boolean
  65. * @ORM\Column(type="boolean", options={"default": false})
  66. */
  67. private $isTrashed = false;
  68. /**
  69. * @var boolean
  70. * @ORM\Column(type="boolean", options={"default": false})
  71. */
  72. private $isAgentViewed = false;
  73. /**
  74. * @var boolean
  75. * @ORM\Column(type="boolean", options={"default": false})
  76. */
  77. private $isCustomerViewed = false;
  78. /**
  79. * @var \DateTime
  80. * @ORM\Column(type="datetime")
  81. */
  82. private $createdAt;
  83. /**
  84. * @var \DateTime
  85. * @ORM\Column(type="datetime")
  86. */
  87. private $updatedAt;
  88. /**
  89. * @var \DateTime
  90. * @ORM\Column(type="datetime", nullable=true)
  91. */
  92. private $customerRepliedAt;
  93. /**
  94. * @var \Doctrine\Common\Collections\Collection
  95. * @ORM\OneToMany(targetEntity="Thread", mappedBy="ticket")
  96. */
  97. private $threads;
  98. /**
  99. * @var \Doctrine\Common\Collections\Collection
  100. * @ORM\OneToMany(targetEntity="TicketRating", mappedBy="ticket")
  101. */
  102. private $ratings;
  103. /**
  104. * @var \Doctrine\Common\Collections\Collection
  105. * @ORM\ManyToMany(targetEntity="User")
  106. * @ORM\JoinTable(name="uv_tickets_collaborators",
  107. * joinColumns={@ORM\JoinColumn(name="ticket_id", referencedColumnName="id", onDelete="CASCADE")},
  108. * inverseJoinColumns={@ORM\JoinColumn(name="user_id", referencedColumnName="id", onDelete="CASCADE")}
  109. * )
  110. */
  111. private $collaborators;
  112. /**
  113. * @var \Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketStatus
  114. * @ORM\ManyToOne(targetEntity="TicketStatus")
  115. * @ORM\JoinColumn(name="status_id", referencedColumnName="id")
  116. */
  117. private $status;
  118. /**
  119. * @var \Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketPriority
  120. * @ORM\ManyToOne(targetEntity="TicketPriority")
  121. * @ORM\JoinColumn(name="priority_id", referencedColumnName="id")
  122. */
  123. private $priority;
  124. /**
  125. * @var string
  126. * @ORM\Column(type="text", nullable=true)
  127. */
  128. private $outlookConversationId;
  129. /**
  130. * @var \Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketType
  131. * @ORM\ManyToOne(targetEntity="TicketType")
  132. * @ORM\JoinColumn(name="type_id", referencedColumnName="id", nullable=true, onDelete="SET NULL")
  133. */
  134. private $type;
  135. /**
  136. * @var \Webkul\UVDesk\CoreFrameworkBundle\Entity\User
  137. * @ORM\ManyToOne(targetEntity="User")
  138. * @ORM\JoinColumn(name="customer_id", referencedColumnName="id", onDelete="CASCADE")
  139. */
  140. private $customer;
  141. /**
  142. * @var \Webkul\UVDesk\CoreFrameworkBundle\Entity\User
  143. * @ORM\ManyToOne(targetEntity="User")
  144. * @ORM\JoinColumn(name="agent_id", referencedColumnName="id", onDelete="SET NULL", nullable=true)
  145. */
  146. private $agent;
  147. /**
  148. * @var \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup
  149. * @ORM\ManyToOne(targetEntity="SupportGroup", inversedBy="tickets")
  150. * @ORM\JoinColumn(name="group_id", referencedColumnName="id", onDelete="SET NULL", nullable=true)
  151. */
  152. private $supportGroup;
  153. /**
  154. * @var \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam
  155. * @ORM\ManyToOne(targetEntity="SupportTeam")
  156. * @ORM\JoinColumn(name="subGroup_id", referencedColumnName="id", nullable=true, onDelete="SET NULL")
  157. */
  158. private $supportTeam;
  159. /**
  160. * @var \Doctrine\Common\Collections\Collection
  161. * @ORM\ManyToMany(targetEntity="Tag")
  162. * @ORM\JoinTable(name="uv_tickets_tags",
  163. * joinColumns={@ORM\JoinColumn(name="ticket_id", referencedColumnName="id", onDelete="CASCADE")},
  164. * inverseJoinColumns={@ORM\JoinColumn(name="tag_id", referencedColumnName="id", onDelete="CASCADE")}
  165. * )
  166. */
  167. private $supportTags;
  168. /**
  169. * @var \Doctrine\Common\Collections\Collection
  170. * @ORM\ManyToMany(targetEntity="SupportLabel")
  171. * @ORM\JoinTable(name="uv_tickets_labels",
  172. * joinColumns={@ORM\JoinColumn(name="ticket_id", referencedColumnName="id", onDelete="CASCADE")},
  173. * inverseJoinColumns={@ORM\JoinColumn(name="label_id", referencedColumnName="id", onDelete="CASCADE")}
  174. * )
  175. */
  176. private $supportLabels;
  177. /**
  178. * @var integer
  179. * @ORM\Column(type="integer", nullable=true)
  180. */
  181. private $responseSlaLevel;
  182. /**
  183. * @var integer
  184. * @ORM\Column(type="integer", nullable=true)
  185. */
  186. private $resolveSlaLevel;
  187. /**
  188. * @var string
  189. * @ORM\Column(type="string", nullable=true)
  190. */
  191. private $country;
  192. /**
  193. * @var string
  194. * @ORM\Column(type="string", nullable=true)
  195. */
  196. private $skipUpdatedAt = false;
  197. /**
  198. * @ORM\Column(type="datetime", nullable=true)
  199. */
  200. private $reminderDate;
  201. /**
  202. * Constructor
  203. */
  204. public function __construct()
  205. {
  206. $this->threads = new \Doctrine\Common\Collections\ArrayCollection();
  207. $this->ratings = new \Doctrine\Common\Collections\ArrayCollection();
  208. $this->supportTags = new \Doctrine\Common\Collections\ArrayCollection();
  209. $this->supportLabels = new \Doctrine\Common\Collections\ArrayCollection();
  210. }
  211. /**
  212. * Get reminderDate
  213. *
  214. * @return DateTimeInterface
  215. */
  216. public function getReminderDate(): ?\DateTimeInterface
  217. {
  218. return $this->reminderDate;
  219. }
  220. /**
  221. * Set reminderDate
  222. *
  223. * @param DateTimeInterface $reminderDate
  224. *
  225. * @return Ticket
  226. */
  227. public function setReminderDate(?\DateTimeInterface $reminderDate): self
  228. {
  229. $this->reminderDate = $reminderDate;
  230. return $this;
  231. }
  232. /**
  233. * Set outlookConversationId
  234. *
  235. * @param string $outlookConversationId
  236. *
  237. * @return Ticket
  238. */
  239. public function setOutlookConversationId($outlookConversationId)
  240. {
  241. $this->outlookConversationId = $outlookConversationId;
  242. return $this;
  243. }
  244. /**
  245. * Get outlookConversationId
  246. *
  247. * @return string
  248. */
  249. public function getOutlookConversationId()
  250. {
  251. return $this->outlookConversationId;
  252. }
  253. /**
  254. * Get id
  255. *
  256. * @return integer
  257. */
  258. public function getId()
  259. {
  260. return $this->id;
  261. }
  262. /**
  263. * Set country
  264. *
  265. * @param string $country
  266. *
  267. * @return Ticket
  268. */
  269. public function setCountry($country)
  270. {
  271. $this->country = $country;
  272. return $this;
  273. }
  274. /**
  275. * Get country
  276. */
  277. public function getCountry()
  278. {
  279. return $this->country;
  280. }
  281. /**
  282. * Set source
  283. *
  284. * @param string $source
  285. *
  286. * @return Ticket
  287. */
  288. public function setSource($source)
  289. {
  290. $this->source = $source;
  291. return $this;
  292. }
  293. /**
  294. * Get source
  295. *
  296. * @return string
  297. */
  298. public function getSource()
  299. {
  300. return $this->source;
  301. }
  302. /**
  303. * Set mailboxEmail
  304. *
  305. * @param string $mailboxEmail
  306. *
  307. * @return Ticket
  308. */
  309. public function setMailboxEmail($mailboxEmail)
  310. {
  311. $this->mailboxEmail = $mailboxEmail;
  312. return $this;
  313. }
  314. /**
  315. * Get mailboxEmail
  316. *
  317. * @return string
  318. */
  319. public function getMailboxEmail()
  320. {
  321. return $this->mailboxEmail;
  322. }
  323. /**
  324. * Set subject
  325. *
  326. * @param string $subject
  327. *
  328. * @return Ticket
  329. */
  330. public function setSubject($subject)
  331. {
  332. $this->subject = $subject;
  333. return $this;
  334. }
  335. /**
  336. * Get subject
  337. *
  338. * @return string
  339. */
  340. public function getSubject()
  341. {
  342. return $this->subject;
  343. }
  344. /**
  345. * Set referenceIds
  346. *
  347. * @param string $referenceIds
  348. *
  349. * @return Ticket
  350. */
  351. public function setReferenceIds($referenceIds)
  352. {
  353. $this->referenceIds = $referenceIds;
  354. return $this;
  355. }
  356. /**
  357. * Get referenceIds
  358. *
  359. * @return string
  360. */
  361. public function getReferenceIds()
  362. {
  363. return $this->referenceIds;
  364. }
  365. /**
  366. * Set isNew
  367. *
  368. * @param boolean $isNew
  369. *
  370. * @return Ticket
  371. */
  372. public function setIsNew($isNew)
  373. {
  374. $this->isNew = $isNew;
  375. return $this;
  376. }
  377. /**
  378. * Get isNew
  379. *
  380. * @return boolean
  381. */
  382. public function getIsNew()
  383. {
  384. return $this->isNew;
  385. }
  386. /**
  387. * Set isReplied
  388. *
  389. * @param boolean $isReplied
  390. *
  391. * @return Ticket
  392. */
  393. public function setIsReplied($isReplied)
  394. {
  395. $this->isReplied = $isReplied;
  396. return $this;
  397. }
  398. /**
  399. * Get isReplied
  400. *
  401. * @return boolean
  402. */
  403. public function getIsReplied()
  404. {
  405. return $this->isReplied;
  406. }
  407. /**
  408. * Set isReplyEnabled
  409. *
  410. * @param boolean $isReplyEnabled
  411. *
  412. * @return Ticket
  413. */
  414. public function setIsReplyEnabled($isReplyEnabled)
  415. {
  416. $this->isReplyEnabled = $isReplyEnabled;
  417. return $this;
  418. }
  419. /**
  420. * Get isReplyEnabled
  421. *
  422. * @return boolean
  423. */
  424. public function getIsReplyEnabled()
  425. {
  426. return $this->isReplyEnabled;
  427. }
  428. /**
  429. * Set isStarred
  430. *
  431. * @param boolean $isStarred
  432. *
  433. * @return Ticket
  434. */
  435. public function setIsStarred($isStarred)
  436. {
  437. $this->isStarred = $isStarred;
  438. return $this;
  439. }
  440. /**
  441. * Get isStarred
  442. *
  443. * @return boolean
  444. */
  445. public function getIsStarred()
  446. {
  447. return $this->isStarred;
  448. }
  449. /**
  450. * Set isTrashed
  451. *
  452. * @param boolean $isTrashed
  453. *
  454. * @return Ticket
  455. */
  456. public function setIsTrashed($isTrashed)
  457. {
  458. $this->isTrashed = $isTrashed;
  459. return $this;
  460. }
  461. /**
  462. * Get isTrashed
  463. *
  464. * @return boolean
  465. */
  466. public function getIsTrashed()
  467. {
  468. return $this->isTrashed;
  469. }
  470. /**
  471. * Set isAgentViewed
  472. *
  473. * @param boolean $isAgentViewed
  474. *
  475. * @return Ticket
  476. */
  477. public function setIsAgentViewed($isAgentViewed)
  478. {
  479. $this->isAgentViewed = $isAgentViewed;
  480. return $this;
  481. }
  482. /**
  483. * Get isAgentViewed
  484. *
  485. * @return boolean
  486. */
  487. public function getIsAgentViewed()
  488. {
  489. return $this->isAgentViewed;
  490. }
  491. /**
  492. * Set isCustomerViewed
  493. *
  494. * @param boolean $isCustomerViewed
  495. *
  496. * @return Ticket
  497. */
  498. public function setIsCustomerViewed($isCustomerViewed)
  499. {
  500. $this->isCustomerViewed = $isCustomerViewed;
  501. return $this;
  502. }
  503. /**
  504. * Get isCustomerViewed
  505. *
  506. * @return boolean
  507. */
  508. public function getIsCustomerViewed()
  509. {
  510. return $this->isCustomerViewed;
  511. }
  512. /**
  513. * Set createdAt
  514. *
  515. * @param \DateTime $createdAt
  516. *
  517. * @return Ticket
  518. */
  519. public function setCreatedAt($createdAt)
  520. {
  521. $this->createdAt = $createdAt;
  522. return $this;
  523. }
  524. /**
  525. * Get createdAt
  526. *
  527. * @return \DateTime
  528. */
  529. public function getCreatedAt()
  530. {
  531. return $this->createdAt;
  532. }
  533. /**
  534. * Set updatedAt
  535. *
  536. * @param \DateTime $updatedAt
  537. *
  538. * @return Ticket
  539. */
  540. public function setUpdatedAt($updatedAt)
  541. {
  542. if (! $this->skipUpdatedAt) {
  543. $this->updatedAt = $updatedAt;
  544. }
  545. return $this;
  546. }
  547. /**
  548. * Get updatedAt
  549. *
  550. * @return \DateTime
  551. */
  552. public function getUpdatedAt()
  553. {
  554. return $this->updatedAt;
  555. }
  556. public function setSkipUpdatedAt(bool $skip): void
  557. {
  558. $this->skipUpdatedAt = $skip;
  559. }
  560. public function shouldSkipUpdatedAt(): bool
  561. {
  562. return $this->skipUpdatedAt;
  563. }
  564. /**
  565. * Set customerRepliedAt
  566. *
  567. * @param \DateTime $customerRepliedAt
  568. *
  569. * @return Ticket
  570. */
  571. public function setCustomerRepliedAt($customerRepliedAt)
  572. {
  573. $this->customerRepliedAt = $customerRepliedAt;
  574. return $this;
  575. }
  576. /**
  577. * Get customerRepliedAt
  578. *
  579. * @return \DateTime
  580. */
  581. public function getCustomerRepliedAt()
  582. {
  583. return $this->customerRepliedAt;
  584. }
  585. /**
  586. * Set resolveSlaLevel
  587. *
  588. * @param \integer $resolveSlaLevel
  589. *
  590. * @return Ticket
  591. */
  592. public function setResolveSlaLevel($resolveSlaLevel)
  593. {
  594. $this->resolveSlaLevel = $resolveSlaLevel;
  595. return $this;
  596. }
  597. /**
  598. * Get resolveSlaLevel
  599. *
  600. * @return \integer
  601. */
  602. public function getResolveSlaLevel()
  603. {
  604. return $this->resolveSlaLevel;
  605. }
  606. /**
  607. * Set responseSlaLevel
  608. *
  609. * @param \integer $responseSlaLevel
  610. *
  611. * @return Ticket
  612. */
  613. public function setResponseSlaLevel($responseSlaLevel)
  614. {
  615. $this->responseSlaLevel = $responseSlaLevel;
  616. return $this;
  617. }
  618. /**
  619. * Get responseSlaLevel
  620. *
  621. * @return \integer
  622. */
  623. public function getResponseSlaLevel()
  624. {
  625. return $this->responseSlaLevel;
  626. }
  627. /**
  628. * Add thread
  629. *
  630. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\Thread $thread
  631. *
  632. * @return Ticket
  633. */
  634. public function addThread(\Webkul\UVDesk\CoreFrameworkBundle\Entity\Thread $thread)
  635. {
  636. $this->threads[] = $thread;
  637. return $this;
  638. }
  639. /**
  640. * Remove thread
  641. *
  642. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\Thread $thread
  643. */
  644. public function removeThread(\Webkul\UVDesk\CoreFrameworkBundle\Entity\Thread $thread)
  645. {
  646. $this->threads->removeElement($thread);
  647. }
  648. /**
  649. * Get threads
  650. *
  651. * @return \Doctrine\Common\Collections\Collection
  652. */
  653. public function getThreads()
  654. {
  655. return $this->threads;
  656. }
  657. /**
  658. * Add rating
  659. *
  660. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketRating $rating
  661. *
  662. * @return Ticket
  663. */
  664. public function addRating(\Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketRating $rating)
  665. {
  666. $this->ratings[] = $rating;
  667. return $this;
  668. }
  669. /**
  670. * Remove rating
  671. *
  672. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketRating $rating
  673. */
  674. public function removeRating(\Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketRating $rating)
  675. {
  676. $this->ratings->removeElement($rating);
  677. }
  678. /**
  679. * Get ratings
  680. *
  681. * @return \Doctrine\Common\Collections\Collection
  682. */
  683. public function getRatings()
  684. {
  685. return $this->ratings;
  686. }
  687. /**
  688. * Add collaborators
  689. *
  690. * @param \Webkul\UserBundle\Entity\User $collaborators
  691. * @return Ticket
  692. */
  693. public function addCollaborator(\Webkul\UVDesk\CoreFrameworkBundle\Entity\User $collaborators)
  694. {
  695. $this->collaborators[] = $collaborators;
  696. return $this;
  697. }
  698. /**
  699. * Remove collaborators
  700. *
  701. * @param \Webkul\UserBundle\Entity\User $collaborators
  702. */
  703. public function removeCollaborator(\Webkul\UVDesk\CoreFrameworkBundle\Entity\User $collaborators)
  704. {
  705. $this->collaborators->removeElement($collaborators);
  706. }
  707. /**
  708. * Get collaborators
  709. *
  710. * @return \Doctrine\Common\Collections\Collection
  711. */
  712. public function getCollaborators()
  713. {
  714. return $this->collaborators;
  715. }
  716. /**
  717. * Set status
  718. *
  719. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketStatus $status
  720. *
  721. * @return Ticket
  722. */
  723. public function setStatus(\Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketStatus $status = null)
  724. {
  725. $this->status = $status;
  726. return $this;
  727. }
  728. /**
  729. * Get status
  730. *
  731. * @return \Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketStatus
  732. */
  733. public function getStatus()
  734. {
  735. return $this->status;
  736. }
  737. /**
  738. * Set priority
  739. *
  740. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketPriority $priority
  741. *
  742. * @return Ticket
  743. */
  744. public function setPriority(\Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketPriority $priority = null)
  745. {
  746. $this->priority = $priority;
  747. return $this;
  748. }
  749. /**
  750. * Get priority
  751. *
  752. * @return \Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketPriority
  753. */
  754. public function getPriority()
  755. {
  756. return $this->priority;
  757. }
  758. /**
  759. * Set type
  760. *
  761. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketType $type
  762. *
  763. * @return Ticket
  764. */
  765. public function setType(\Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketType $type = null)
  766. {
  767. $this->type = $type;
  768. return $this;
  769. }
  770. /**
  771. * Get type
  772. *
  773. * @return \Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketType
  774. */
  775. public function getType()
  776. {
  777. return $this->type;
  778. }
  779. /**
  780. * Set customer
  781. *
  782. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\User $customer
  783. *
  784. * @return Ticket
  785. */
  786. public function setCustomer(\Webkul\UVDesk\CoreFrameworkBundle\Entity\User $customer = null)
  787. {
  788. $this->customer = $customer;
  789. return $this;
  790. }
  791. /**
  792. * Get customer
  793. *
  794. * @return \Webkul\UVDesk\CoreFrameworkBundle\Entity\User
  795. */
  796. public function getCustomer()
  797. {
  798. return $this->customer;
  799. }
  800. /**
  801. * Set agent
  802. *
  803. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\User $agent
  804. *
  805. * @return Ticket
  806. */
  807. public function setAgent(\Webkul\UVDesk\CoreFrameworkBundle\Entity\User $agent = null)
  808. {
  809. $this->agent = $agent;
  810. return $this;
  811. }
  812. /**
  813. * Get agent
  814. *
  815. * @return \Webkul\UVDesk\CoreFrameworkBundle\Entity\User
  816. */
  817. public function getAgent()
  818. {
  819. return $this->agent;
  820. }
  821. /**
  822. * Set supportGroup
  823. *
  824. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup $supportGroup
  825. *
  826. * @return Ticket
  827. */
  828. public function setSupportGroup(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup $supportGroup = null)
  829. {
  830. $this->supportGroup = $supportGroup;
  831. return $this;
  832. }
  833. /**
  834. * Get supportGroup
  835. *
  836. * @return \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup
  837. */
  838. public function getSupportGroup()
  839. {
  840. return $this->supportGroup;
  841. }
  842. /**
  843. * Set supportTeam
  844. *
  845. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam $supportTeam
  846. *
  847. * @return Ticket
  848. */
  849. public function setSupportTeam(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam $supportTeam = null)
  850. {
  851. $this->supportTeam = $supportTeam;
  852. return $this;
  853. }
  854. /**
  855. * Get supportTeam
  856. *
  857. * @return \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam
  858. */
  859. public function getSupportTeam()
  860. {
  861. return $this->supportTeam;
  862. }
  863. /**
  864. * Add supportTag
  865. *
  866. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\Tag $supportTag
  867. *
  868. * @return Ticket
  869. */
  870. public function addSupportTag(\Webkul\UVDesk\CoreFrameworkBundle\Entity\Tag $supportTag)
  871. {
  872. $this->supportTags[] = $supportTag;
  873. return $this;
  874. }
  875. /**
  876. * Remove supportTag
  877. *
  878. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\Tag $supportTag
  879. */
  880. public function removeSupportTag(\Webkul\UVDesk\CoreFrameworkBundle\Entity\Tag $supportTag)
  881. {
  882. $this->supportTags->removeElement($supportTag);
  883. }
  884. /**
  885. * Get supportTags
  886. *
  887. * @return \Doctrine\Common\Collections\Collection
  888. */
  889. public function getSupportTags()
  890. {
  891. return $this->supportTags;
  892. }
  893. /**
  894. * Add supportLabel
  895. *
  896. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportLabel $supportLabel
  897. *
  898. * @return Ticket
  899. */
  900. public function addSupportLabel(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportLabel $supportLabel)
  901. {
  902. $this->supportLabels[] = $supportLabel;
  903. return $this;
  904. }
  905. /**
  906. * Remove supportLabel
  907. *
  908. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportLabel $supportLabel
  909. */
  910. public function removeSupportLabel(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportLabel $supportLabel)
  911. {
  912. $this->supportLabels->removeElement($supportLabel);
  913. }
  914. /**
  915. * Get supportLabels
  916. *
  917. * @return \Doctrine\Common\Collections\Collection
  918. */
  919. public function getSupportLabels()
  920. {
  921. return $this->supportLabels;
  922. }
  923. /**
  924. * Get formatted $createdAt
  925. *
  926. * @return \DateTime
  927. */
  928. public function getFormatedCreatedAt()
  929. {
  930. return $this->formatedCreatedAt;
  931. }
  932. }