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

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. * Constructor
  199. */
  200. public function __construct()
  201. {
  202. $this->threads = new \Doctrine\Common\Collections\ArrayCollection();
  203. $this->ratings = new \Doctrine\Common\Collections\ArrayCollection();
  204. $this->supportTags = new \Doctrine\Common\Collections\ArrayCollection();
  205. $this->supportLabels = new \Doctrine\Common\Collections\ArrayCollection();
  206. }
  207. /**
  208. * Set outlookConversationId
  209. *
  210. * @param string $outlookConversationId
  211. *
  212. * @return Ticket
  213. */
  214. public function setOutlookConversationId($outlookConversationId)
  215. {
  216. $this->outlookConversationId = $outlookConversationId;
  217. return $this;
  218. }
  219. /**
  220. * Get outlookConversationId
  221. *
  222. * @return string
  223. */
  224. public function getOutlookConversationId()
  225. {
  226. return $this->outlookConversationId;
  227. }
  228. /**
  229. * Get id
  230. *
  231. * @return integer
  232. */
  233. public function getId()
  234. {
  235. return $this->id;
  236. }
  237. /**
  238. * Set country
  239. *
  240. * @param string $country
  241. *
  242. * @return Ticket
  243. */
  244. public function setCountry($country)
  245. {
  246. $this->country = $country;
  247. return $this;
  248. }
  249. /**
  250. * Get country
  251. */
  252. public function getCountry()
  253. {
  254. return $this->country;
  255. }
  256. /**
  257. * Set source
  258. *
  259. * @param string $source
  260. *
  261. * @return Ticket
  262. */
  263. public function setSource($source)
  264. {
  265. $this->source = $source;
  266. return $this;
  267. }
  268. /**
  269. * Get source
  270. *
  271. * @return string
  272. */
  273. public function getSource()
  274. {
  275. return $this->source;
  276. }
  277. /**
  278. * Set mailboxEmail
  279. *
  280. * @param string $mailboxEmail
  281. *
  282. * @return Ticket
  283. */
  284. public function setMailboxEmail($mailboxEmail)
  285. {
  286. $this->mailboxEmail = $mailboxEmail;
  287. return $this;
  288. }
  289. /**
  290. * Get mailboxEmail
  291. *
  292. * @return string
  293. */
  294. public function getMailboxEmail()
  295. {
  296. return $this->mailboxEmail;
  297. }
  298. /**
  299. * Set subject
  300. *
  301. * @param string $subject
  302. *
  303. * @return Ticket
  304. */
  305. public function setSubject($subject)
  306. {
  307. $this->subject = $subject;
  308. return $this;
  309. }
  310. /**
  311. * Get subject
  312. *
  313. * @return string
  314. */
  315. public function getSubject()
  316. {
  317. return $this->subject;
  318. }
  319. /**
  320. * Set referenceIds
  321. *
  322. * @param string $referenceIds
  323. *
  324. * @return Ticket
  325. */
  326. public function setReferenceIds($referenceIds)
  327. {
  328. $this->referenceIds = $referenceIds;
  329. return $this;
  330. }
  331. /**
  332. * Get referenceIds
  333. *
  334. * @return string
  335. */
  336. public function getReferenceIds()
  337. {
  338. return $this->referenceIds;
  339. }
  340. /**
  341. * Set isNew
  342. *
  343. * @param boolean $isNew
  344. *
  345. * @return Ticket
  346. */
  347. public function setIsNew($isNew)
  348. {
  349. $this->isNew = $isNew;
  350. return $this;
  351. }
  352. /**
  353. * Get isNew
  354. *
  355. * @return boolean
  356. */
  357. public function getIsNew()
  358. {
  359. return $this->isNew;
  360. }
  361. /**
  362. * Set isReplied
  363. *
  364. * @param boolean $isReplied
  365. *
  366. * @return Ticket
  367. */
  368. public function setIsReplied($isReplied)
  369. {
  370. $this->isReplied = $isReplied;
  371. return $this;
  372. }
  373. /**
  374. * Get isReplied
  375. *
  376. * @return boolean
  377. */
  378. public function getIsReplied()
  379. {
  380. return $this->isReplied;
  381. }
  382. /**
  383. * Set isReplyEnabled
  384. *
  385. * @param boolean $isReplyEnabled
  386. *
  387. * @return Ticket
  388. */
  389. public function setIsReplyEnabled($isReplyEnabled)
  390. {
  391. $this->isReplyEnabled = $isReplyEnabled;
  392. return $this;
  393. }
  394. /**
  395. * Get isReplyEnabled
  396. *
  397. * @return boolean
  398. */
  399. public function getIsReplyEnabled()
  400. {
  401. return $this->isReplyEnabled;
  402. }
  403. /**
  404. * Set isStarred
  405. *
  406. * @param boolean $isStarred
  407. *
  408. * @return Ticket
  409. */
  410. public function setIsStarred($isStarred)
  411. {
  412. $this->isStarred = $isStarred;
  413. return $this;
  414. }
  415. /**
  416. * Get isStarred
  417. *
  418. * @return boolean
  419. */
  420. public function getIsStarred()
  421. {
  422. return $this->isStarred;
  423. }
  424. /**
  425. * Set isTrashed
  426. *
  427. * @param boolean $isTrashed
  428. *
  429. * @return Ticket
  430. */
  431. public function setIsTrashed($isTrashed)
  432. {
  433. $this->isTrashed = $isTrashed;
  434. return $this;
  435. }
  436. /**
  437. * Get isTrashed
  438. *
  439. * @return boolean
  440. */
  441. public function getIsTrashed()
  442. {
  443. return $this->isTrashed;
  444. }
  445. /**
  446. * Set isAgentViewed
  447. *
  448. * @param boolean $isAgentViewed
  449. *
  450. * @return Ticket
  451. */
  452. public function setIsAgentViewed($isAgentViewed)
  453. {
  454. $this->isAgentViewed = $isAgentViewed;
  455. return $this;
  456. }
  457. /**
  458. * Get isAgentViewed
  459. *
  460. * @return boolean
  461. */
  462. public function getIsAgentViewed()
  463. {
  464. return $this->isAgentViewed;
  465. }
  466. /**
  467. * Set isCustomerViewed
  468. *
  469. * @param boolean $isCustomerViewed
  470. *
  471. * @return Ticket
  472. */
  473. public function setIsCustomerViewed($isCustomerViewed)
  474. {
  475. $this->isCustomerViewed = $isCustomerViewed;
  476. return $this;
  477. }
  478. /**
  479. * Get isCustomerViewed
  480. *
  481. * @return boolean
  482. */
  483. public function getIsCustomerViewed()
  484. {
  485. return $this->isCustomerViewed;
  486. }
  487. /**
  488. * Set createdAt
  489. *
  490. * @param \DateTime $createdAt
  491. *
  492. * @return Ticket
  493. */
  494. public function setCreatedAt($createdAt)
  495. {
  496. $this->createdAt = $createdAt;
  497. return $this;
  498. }
  499. /**
  500. * Get createdAt
  501. *
  502. * @return \DateTime
  503. */
  504. public function getCreatedAt()
  505. {
  506. return $this->createdAt;
  507. }
  508. /**
  509. * Set updatedAt
  510. *
  511. * @param \DateTime $updatedAt
  512. *
  513. * @return Ticket
  514. */
  515. public function setUpdatedAt($updatedAt)
  516. {
  517. if (! $this->skipUpdatedAt) {
  518. $this->updatedAt = $updatedAt;
  519. }
  520. return $this;
  521. }
  522. /**
  523. * Get updatedAt
  524. *
  525. * @return \DateTime
  526. */
  527. public function getUpdatedAt()
  528. {
  529. return $this->updatedAt;
  530. }
  531. public function setSkipUpdatedAt(bool $skip): void
  532. {
  533. $this->skipUpdatedAt = $skip;
  534. }
  535. public function shouldSkipUpdatedAt(): bool
  536. {
  537. return $this->skipUpdatedAt;
  538. }
  539. /**
  540. * Set customerRepliedAt
  541. *
  542. * @param \DateTime $customerRepliedAt
  543. *
  544. * @return Ticket
  545. */
  546. public function setCustomerRepliedAt($customerRepliedAt)
  547. {
  548. $this->customerRepliedAt = $customerRepliedAt;
  549. return $this;
  550. }
  551. /**
  552. * Get customerRepliedAt
  553. *
  554. * @return \DateTime
  555. */
  556. public function getCustomerRepliedAt()
  557. {
  558. return $this->customerRepliedAt;
  559. }
  560. /**
  561. * Set resolveSlaLevel
  562. *
  563. * @param \integer $resolveSlaLevel
  564. *
  565. * @return Ticket
  566. */
  567. public function setResolveSlaLevel($resolveSlaLevel)
  568. {
  569. $this->resolveSlaLevel = $resolveSlaLevel;
  570. return $this;
  571. }
  572. /**
  573. * Get resolveSlaLevel
  574. *
  575. * @return \integer
  576. */
  577. public function getResolveSlaLevel()
  578. {
  579. return $this->resolveSlaLevel;
  580. }
  581. /**
  582. * Set responseSlaLevel
  583. *
  584. * @param \integer $responseSlaLevel
  585. *
  586. * @return Ticket
  587. */
  588. public function setResponseSlaLevel($responseSlaLevel)
  589. {
  590. $this->responseSlaLevel = $responseSlaLevel;
  591. return $this;
  592. }
  593. /**
  594. * Get responseSlaLevel
  595. *
  596. * @return \integer
  597. */
  598. public function getResponseSlaLevel()
  599. {
  600. return $this->responseSlaLevel;
  601. }
  602. /**
  603. * Add thread
  604. *
  605. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\Thread $thread
  606. *
  607. * @return Ticket
  608. */
  609. public function addThread(\Webkul\UVDesk\CoreFrameworkBundle\Entity\Thread $thread)
  610. {
  611. $this->threads[] = $thread;
  612. return $this;
  613. }
  614. /**
  615. * Remove thread
  616. *
  617. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\Thread $thread
  618. */
  619. public function removeThread(\Webkul\UVDesk\CoreFrameworkBundle\Entity\Thread $thread)
  620. {
  621. $this->threads->removeElement($thread);
  622. }
  623. /**
  624. * Get threads
  625. *
  626. * @return \Doctrine\Common\Collections\Collection
  627. */
  628. public function getThreads()
  629. {
  630. return $this->threads;
  631. }
  632. /**
  633. * Add rating
  634. *
  635. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketRating $rating
  636. *
  637. * @return Ticket
  638. */
  639. public function addRating(\Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketRating $rating)
  640. {
  641. $this->ratings[] = $rating;
  642. return $this;
  643. }
  644. /**
  645. * Remove rating
  646. *
  647. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketRating $rating
  648. */
  649. public function removeRating(\Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketRating $rating)
  650. {
  651. $this->ratings->removeElement($rating);
  652. }
  653. /**
  654. * Get ratings
  655. *
  656. * @return \Doctrine\Common\Collections\Collection
  657. */
  658. public function getRatings()
  659. {
  660. return $this->ratings;
  661. }
  662. /**
  663. * Add collaborators
  664. *
  665. * @param \Webkul\UserBundle\Entity\User $collaborators
  666. * @return Ticket
  667. */
  668. public function addCollaborator(\Webkul\UVDesk\CoreFrameworkBundle\Entity\User $collaborators)
  669. {
  670. $this->collaborators[] = $collaborators;
  671. return $this;
  672. }
  673. /**
  674. * Remove collaborators
  675. *
  676. * @param \Webkul\UserBundle\Entity\User $collaborators
  677. */
  678. public function removeCollaborator(\Webkul\UVDesk\CoreFrameworkBundle\Entity\User $collaborators)
  679. {
  680. $this->collaborators->removeElement($collaborators);
  681. }
  682. /**
  683. * Get collaborators
  684. *
  685. * @return \Doctrine\Common\Collections\Collection
  686. */
  687. public function getCollaborators()
  688. {
  689. return $this->collaborators;
  690. }
  691. /**
  692. * Set status
  693. *
  694. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketStatus $status
  695. *
  696. * @return Ticket
  697. */
  698. public function setStatus(\Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketStatus $status = null)
  699. {
  700. $this->status = $status;
  701. return $this;
  702. }
  703. /**
  704. * Get status
  705. *
  706. * @return \Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketStatus
  707. */
  708. public function getStatus()
  709. {
  710. return $this->status;
  711. }
  712. /**
  713. * Set priority
  714. *
  715. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketPriority $priority
  716. *
  717. * @return Ticket
  718. */
  719. public function setPriority(\Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketPriority $priority = null)
  720. {
  721. $this->priority = $priority;
  722. return $this;
  723. }
  724. /**
  725. * Get priority
  726. *
  727. * @return \Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketPriority
  728. */
  729. public function getPriority()
  730. {
  731. return $this->priority;
  732. }
  733. /**
  734. * Set type
  735. *
  736. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketType $type
  737. *
  738. * @return Ticket
  739. */
  740. public function setType(\Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketType $type = null)
  741. {
  742. $this->type = $type;
  743. return $this;
  744. }
  745. /**
  746. * Get type
  747. *
  748. * @return \Webkul\UVDesk\CoreFrameworkBundle\Entity\TicketType
  749. */
  750. public function getType()
  751. {
  752. return $this->type;
  753. }
  754. /**
  755. * Set customer
  756. *
  757. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\User $customer
  758. *
  759. * @return Ticket
  760. */
  761. public function setCustomer(\Webkul\UVDesk\CoreFrameworkBundle\Entity\User $customer = null)
  762. {
  763. $this->customer = $customer;
  764. return $this;
  765. }
  766. /**
  767. * Get customer
  768. *
  769. * @return \Webkul\UVDesk\CoreFrameworkBundle\Entity\User
  770. */
  771. public function getCustomer()
  772. {
  773. return $this->customer;
  774. }
  775. /**
  776. * Set agent
  777. *
  778. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\User $agent
  779. *
  780. * @return Ticket
  781. */
  782. public function setAgent(\Webkul\UVDesk\CoreFrameworkBundle\Entity\User $agent = null)
  783. {
  784. $this->agent = $agent;
  785. return $this;
  786. }
  787. /**
  788. * Get agent
  789. *
  790. * @return \Webkul\UVDesk\CoreFrameworkBundle\Entity\User
  791. */
  792. public function getAgent()
  793. {
  794. return $this->agent;
  795. }
  796. /**
  797. * Set supportGroup
  798. *
  799. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup $supportGroup
  800. *
  801. * @return Ticket
  802. */
  803. public function setSupportGroup(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup $supportGroup = null)
  804. {
  805. $this->supportGroup = $supportGroup;
  806. return $this;
  807. }
  808. /**
  809. * Get supportGroup
  810. *
  811. * @return \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup
  812. */
  813. public function getSupportGroup()
  814. {
  815. return $this->supportGroup;
  816. }
  817. /**
  818. * Set supportTeam
  819. *
  820. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam $supportTeam
  821. *
  822. * @return Ticket
  823. */
  824. public function setSupportTeam(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam $supportTeam = null)
  825. {
  826. $this->supportTeam = $supportTeam;
  827. return $this;
  828. }
  829. /**
  830. * Get supportTeam
  831. *
  832. * @return \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam
  833. */
  834. public function getSupportTeam()
  835. {
  836. return $this->supportTeam;
  837. }
  838. /**
  839. * Add supportTag
  840. *
  841. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\Tag $supportTag
  842. *
  843. * @return Ticket
  844. */
  845. public function addSupportTag(\Webkul\UVDesk\CoreFrameworkBundle\Entity\Tag $supportTag)
  846. {
  847. $this->supportTags[] = $supportTag;
  848. return $this;
  849. }
  850. /**
  851. * Remove supportTag
  852. *
  853. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\Tag $supportTag
  854. */
  855. public function removeSupportTag(\Webkul\UVDesk\CoreFrameworkBundle\Entity\Tag $supportTag)
  856. {
  857. $this->supportTags->removeElement($supportTag);
  858. }
  859. /**
  860. * Get supportTags
  861. *
  862. * @return \Doctrine\Common\Collections\Collection
  863. */
  864. public function getSupportTags()
  865. {
  866. return $this->supportTags;
  867. }
  868. /**
  869. * Add supportLabel
  870. *
  871. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportLabel $supportLabel
  872. *
  873. * @return Ticket
  874. */
  875. public function addSupportLabel(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportLabel $supportLabel)
  876. {
  877. $this->supportLabels[] = $supportLabel;
  878. return $this;
  879. }
  880. /**
  881. * Remove supportLabel
  882. *
  883. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportLabel $supportLabel
  884. */
  885. public function removeSupportLabel(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportLabel $supportLabel)
  886. {
  887. $this->supportLabels->removeElement($supportLabel);
  888. }
  889. /**
  890. * Get supportLabels
  891. *
  892. * @return \Doctrine\Common\Collections\Collection
  893. */
  894. public function getSupportLabels()
  895. {
  896. return $this->supportLabels;
  897. }
  898. /**
  899. * Get formatted $createdAt
  900. *
  901. * @return \DateTime
  902. */
  903. public function getFormatedCreatedAt()
  904. {
  905. return $this->formatedCreatedAt;
  906. }
  907. }