vendor/uvdesk/core-framework/Entity/UserInstance.php line 13

Open in your IDE?
  1. <?php
  2. namespace Webkul\UVDesk\CoreFrameworkBundle\Entity;
  3. use Doctrine\ORM\Mapping as ORM;
  4. /**
  5.  * UserInstance
  6.  * @ORM\Entity(repositoryClass=null)
  7.  * @ORM\HasLifecycleCallbacks()
  8.  * @ORM\Table(name="uv_user_instance")
  9.  */
  10. class UserInstance
  11. {
  12.     /**
  13.      * @var integer
  14.      * @ORM\Id()
  15.      * @ORM\Column(type="integer")
  16.      * @ORM\GeneratedValue(strategy="AUTO")
  17.      */
  18.     private $id;
  19.     /**
  20.      * @var string
  21.      * @ORM\Column(type="string", length=191)
  22.      */
  23.     private $source;
  24.     /**
  25.      * @var string
  26.      * @ORM\Column(type="string", length=191, nullable=true)
  27.      */
  28.     private $skypeId;
  29.     /**
  30.      * @var string
  31.      * @ORM\Column(type="string", length=191, nullable=true)
  32.      */
  33.     private $contactNumber;
  34.     /**
  35.      * @var string
  36.      * @ORM\Column(type="string", length=191, nullable=true)
  37.      */
  38.     private $designation;
  39.     /**
  40.      * @var string
  41.      * @ORM\Column(type="text", nullable=true)
  42.      */
  43.     private $signature;
  44.     /**
  45.      * @var string
  46.      * @ORM\Column(type="text", nullable=true)
  47.      */
  48.     private $profileImagePath;
  49.     /**
  50.      * @var \DateTime
  51.      * @ORM\Column(type="datetime")
  52.      */
  53.     private $createdAt;
  54.     /**
  55.      * @var \DateTime
  56.      * @ORM\Column(type="datetime")
  57.      */
  58.     private $updatedAt;
  59.     /**
  60.      * @var \DateTime
  61.      * @ORM\Column(type="datetime", nullable=true)
  62.      */
  63.     private $lastLogin;
  64.     /**
  65.      * @var boolean
  66.      * @ORM\Column(type="boolean", options={"default": false})
  67.      */
  68.     private $isActive false;
  69.     /**
  70.      * @var boolean
  71.      * @ORM\Column(type="boolean", options={"default": false})
  72.      */
  73.     private $isOnline false;
  74.     /**
  75.      * @var boolean
  76.      * @ORM\Column(type="boolean", options={"default": false})
  77.      */
  78.     private $isVerified false;
  79.     /**
  80.      * @var boolean
  81.      * @ORM\Column(type="boolean", options={"default": false})
  82.      */
  83.     private $isStarred false;
  84.     /**
  85.      * @var string
  86.      * @ORM\Column(type="string", length=32, nullable=true)
  87.      */
  88.     private $ticketAccessLevel;
  89.     /**
  90.      * @var integer
  91.      */
  92.     private $defaultFiltering;
  93.     /**
  94.      * @var \Doctrine\Common\Collections\Collection
  95.      * @ORM\OneToMany(targetEntity="EmailTemplates", mappedBy="user", cascade={"remove"}, orphanRemoval=true)
  96.      */
  97.     private $userSavedReplies;
  98.     /**
  99.      * @var \Doctrine\Common\Collections\Collection
  100.      * @ORM\OneToMany(targetEntity="SavedFilters", mappedBy="user", cascade={"remove"}, orphanRemoval=true)
  101.      */
  102.     private $userSavedFilters;
  103.     /**
  104.      * @var \Webkul\UVDesk\CoreFrameworkBundle\Entity\User
  105.      * @ORM\ManyToOne(targetEntity="User", inversedBy="userInstance")
  106.      * @ORM\JoinColumn(name="user_id", referencedColumnName="id", onDelete="CASCADE")
  107.      */
  108.     private $user;
  109.     /**
  110.      * @var \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportRole
  111.      * @ORM\ManyToOne(targetEntity="SupportRole")
  112.      * @ORM\JoinColumn(name="supportRole_id", referencedColumnName="id", onDelete="CASCADE")
  113.      */
  114.     private $supportRole;
  115.     /**
  116.      * @var \Doctrine\Common\Collections\Collection
  117.      * @ORM\ManyToMany(targetEntity="SupportPrivilege", inversedBy="users")
  118.      * @ORM\JoinTable(name="uv_user_support_privileges",
  119.      *      joinColumns={@ORM\JoinColumn(name="userInstanceId", referencedColumnName="id", onDelete="CASCADE")},
  120.      *      inverseJoinColumns={@ORM\JoinColumn(name="supportPrivilegeId", referencedColumnName="id", onDelete="CASCADE")}
  121.      * )
  122.      */
  123.     private $supportPrivileges;
  124.     /**
  125.      * @var \Doctrine\Common\Collections\Collection
  126.      * @ORM\ManyToMany(targetEntity="SupportTeam", inversedBy="users")
  127.      * @ORM\JoinTable(name="uv_user_support_teams",
  128.      *      joinColumns={@ORM\JoinColumn(name="userInstanceId", referencedColumnName="id", onDelete="CASCADE")},
  129.      *      inverseJoinColumns={@ORM\JoinColumn(name="supportTeamId", referencedColumnName="id", onDelete="CASCADE")})
  130.      */
  131.     private $supportTeams;
  132.     /**
  133.      * @var \Doctrine\Common\Collections\Collection
  134.      * @ORM\ManyToMany(targetEntity="SupportGroup", inversedBy="users")
  135.      * @ORM\JoinTable(name="uv_user_support_groups",
  136.      *      joinColumns={@ORM\JoinColumn(name="userInstanceId", referencedColumnName="id", onDelete="CASCADE")},
  137.      *      inverseJoinColumns={@ORM\JoinColumn(name="supportGroupId", referencedColumnName="id", onDelete="CASCADE")})
  138.      */
  139.     private $supportGroups;
  140.     /**
  141.      * @var \Doctrine\Common\Collections\Collection
  142.      * @ORM\ManyToMany(targetEntity="SupportTeam", inversedBy="leads")
  143.      * @ORM\JoinTable(name="uv_lead_support_teams",
  144.      *      joinColumns={@ORM\JoinColumn(name="leadUserInstanceId", referencedColumnName="id", onDelete="CASCADE")},
  145.      *      inverseJoinColumns={@ORM\JoinColumn(name="supportTeamId", referencedColumnName="id", onDelete="CASCADE")})
  146.      */
  147.     private $leadSupportTeams;
  148.     /**
  149.      * @var \Doctrine\Common\Collections\Collection
  150.      * @ORM\ManyToMany(targetEntity="SupportGroup", inversedBy="admins")
  151.      * @ORM\JoinTable(name="uv_admin_support_groups",
  152.      *      joinColumns={@ORM\JoinColumn(name="adminUserInstanceId", referencedColumnName="id", onDelete="CASCADE")},
  153.      *      inverseJoinColumns={@ORM\JoinColumn(name="supportGroupId", referencedColumnName="id", onDelete="CASCADE")})
  154.      */
  155.     private $adminSupportGroups;
  156.     /**
  157.      * Constructor
  158.      */
  159.     public function __construct()
  160.     {
  161.         $this->userSavedReplies = new \Doctrine\Common\Collections\ArrayCollection();
  162.         $this->userSavedFilters = new \Doctrine\Common\Collections\ArrayCollection();
  163.         $this->supportPrivileges = new \Doctrine\Common\Collections\ArrayCollection();
  164.         $this->supportTeams = new \Doctrine\Common\Collections\ArrayCollection();
  165.         $this->supportGroups = new \Doctrine\Common\Collections\ArrayCollection();
  166.         $this->leadSupportTeams = new \Doctrine\Common\Collections\ArrayCollection();
  167.         $this->adminSupportGroups = new \Doctrine\Common\Collections\ArrayCollection();
  168.     }
  169.     /**
  170.      * Get id
  171.      *
  172.      * @return integer
  173.      */
  174.     public function getId()
  175.     {
  176.         return $this->id;
  177.     }
  178.     /**
  179.      * Set source
  180.      *
  181.      * @param string $source
  182.      *
  183.      * @return UserInstance
  184.      */
  185.     public function setSource($source)
  186.     {
  187.         $this->source $source;
  188.         return $this;
  189.     }
  190.     /**
  191.      * Get source
  192.      *
  193.      * @return string
  194.      */
  195.     public function getSource()
  196.     {
  197.         return $this->source;
  198.     }
  199.     /**
  200.      * Set skypeId
  201.      *
  202.      * @param string $skypeId
  203.      *
  204.      * @return UserInstance
  205.      */
  206.     public function setSkypeId($skypeId)
  207.     {
  208.         $this->skypeId $skypeId;
  209.         return $this;
  210.     }
  211.     /**
  212.      * Get skypeId
  213.      *
  214.      * @return string
  215.      */
  216.     public function getSkypeId()
  217.     {
  218.         return $this->skypeId;
  219.     }
  220.     /**
  221.      * Set contactNumber
  222.      *
  223.      * @param string $contactNumber
  224.      *
  225.      * @return UserInstance
  226.      */
  227.     public function setContactNumber($contactNumber)
  228.     {
  229.         $this->contactNumber $contactNumber;
  230.         return $this;
  231.     }
  232.     /**
  233.      * Get contactNumber
  234.      *
  235.      * @return string
  236.      */
  237.     public function getContactNumber()
  238.     {
  239.         return $this->contactNumber;
  240.     }
  241.     /**
  242.      * Set designation
  243.      *
  244.      * @param string $designation
  245.      *
  246.      * @return UserInstance
  247.      */
  248.     public function setDesignation($designation)
  249.     {
  250.         $this->designation $designation;
  251.         return $this;
  252.     }
  253.     /**
  254.      * Get designation
  255.      *
  256.      * @return string
  257.      */
  258.     public function getDesignation()
  259.     {
  260.         return $this->designation;
  261.     }
  262.     /**
  263.      * Set signature
  264.      *
  265.      * @param string $signature
  266.      *
  267.      * @return UserInstance
  268.      */
  269.     public function setSignature($signature)
  270.     {
  271.         $this->signature $signature;
  272.         return $this;
  273.     }
  274.     /**
  275.      * Get signature
  276.      *
  277.      * @return string
  278.      */
  279.     public function getSignature()
  280.     {
  281.         return $this->signature;
  282.     }
  283.     /**
  284.      * Set profileImagePath
  285.      *
  286.      * @param string $profileImagePath
  287.      *
  288.      * @return UserInstance
  289.      */
  290.     public function setProfileImagePath($profileImagePath)
  291.     {
  292.         $this->profileImagePath $profileImagePath;
  293.         return $this;
  294.     }
  295.     /**
  296.      * Get profileImagePath
  297.      *
  298.      * @return string
  299.      */
  300.     public function getProfileImagePath()
  301.     {
  302.         return $this->profileImagePath;
  303.     }
  304.     /**
  305.      * Set createdAt
  306.      *
  307.      * @param \DateTime $createdAt
  308.      *
  309.      * @return UserInstance
  310.      */
  311.     public function setCreatedAt($createdAt)
  312.     {
  313.         $this->createdAt $createdAt;
  314.         return $this;
  315.     }
  316.     /**
  317.      * Get createdAt
  318.      *
  319.      * @return \DateTime
  320.      */
  321.     public function getCreatedAt()
  322.     {
  323.         return $this->createdAt;
  324.     }
  325.     /**
  326.      * Set updatedAt
  327.      *
  328.      * @param \DateTime $updatedAt
  329.      *
  330.      * @return UserInstance
  331.      */
  332.     public function setUpdatedAt($updatedAt)
  333.     {
  334.         $this->updatedAt $updatedAt;
  335.         return $this;
  336.     }
  337.     /**
  338.      * Get updatedAt
  339.      *
  340.      * @return \DateTime
  341.      */
  342.     public function getUpdatedAt()
  343.     {
  344.         return $this->updatedAt;
  345.     }
  346.     /**
  347.      * Set lastLogin
  348.      *
  349.      * @param \DateTime $lastLogin
  350.      *
  351.      * @return UserInstance
  352.      */
  353.     public function setLastLogin($lastLogin)
  354.     {
  355.         $this->lastLogin $lastLogin;
  356.         return $this;
  357.     }
  358.     /**
  359.      * Get lastLogin
  360.      *
  361.      * @return \DateTime
  362.      */
  363.     public function getLastLogin()
  364.     {
  365.         return $this->lastLogin;
  366.     }
  367.     /**
  368.      * Set isOnline
  369.      *
  370.      * @param boolean $isOnline
  371.      *
  372.      * @return UserInstance
  373.      */
  374.     public function setIsOnline($isOnline)
  375.     {
  376.         $this->isOnline $isOnline;
  377.         return $this;
  378.     }
  379.     /**
  380.      * Get isOnline
  381.      *
  382.      * @return boolean
  383.      */
  384.     public function getIsOnline()
  385.     {
  386.         return $this->isOnline;
  387.     }
  388.     /**
  389.      * Set isActive
  390.      *
  391.      * @param boolean $isActive
  392.      *
  393.      * @return UserInstance
  394.      */
  395.     public function setIsActive($isActive)
  396.     {
  397.         $this->isActive $isActive;
  398.         return $this;
  399.     }
  400.     /**
  401.      * Get isActive
  402.      *
  403.      * @return boolean
  404.      */
  405.     public function getIsActive()
  406.     {
  407.         return $this->isActive;
  408.     }
  409.     /**
  410.      * Set isVerified
  411.      *
  412.      * @param boolean $isVerified
  413.      *
  414.      * @return UserInstance
  415.      */
  416.     public function setIsVerified($isVerified)
  417.     {
  418.         $this->isVerified $isVerified;
  419.         return $this;
  420.     }
  421.     /**
  422.      * Get isVerified
  423.      *
  424.      * @return boolean
  425.      */
  426.     public function getIsVerified()
  427.     {
  428.         return $this->isVerified;
  429.     }
  430.     /**
  431.      * Set isStarred
  432.      *
  433.      * @param boolean $isStarred
  434.      *
  435.      * @return UserInstance
  436.      */
  437.     public function setIsStarred($isStarred)
  438.     {
  439.         $this->isStarred $isStarred;
  440.         return $this;
  441.     }
  442.     /**
  443.      * Get isStarred
  444.      *
  445.      * @return boolean
  446.      */
  447.     public function getIsStarred()
  448.     {
  449.         return $this->isStarred;
  450.     }
  451.     /**
  452.      * Set ticketAccessLevel
  453.      *
  454.      * @param string $ticketAccessLevel
  455.      *
  456.      * @return UserInstance
  457.      */
  458.     public function setTicketAccessLevel($ticketAccessLevel)
  459.     {
  460.         $this->ticketAccessLevel $ticketAccessLevel;
  461.         return $this;
  462.     }
  463.     /**
  464.      * Get ticketAccessLevel
  465.      *
  466.      * @return string
  467.      */
  468.     public function getTicketAccessLevel()
  469.     {
  470.         return $this->ticketAccessLevel;
  471.     }
  472.     /**
  473.      * Set defaultFiltering
  474.      *
  475.      * @param integer $defaultFiltering
  476.      * @return UserInstance
  477.      */
  478.     public function setDefaultFiltering($defaultFiltering)
  479.     {
  480.         $this->defaultFiltering $defaultFiltering;
  481.         return $this;
  482.     }
  483.     /**
  484.      * Get defaultFiltering
  485.      *
  486.      * @return integer 
  487.      */
  488.     public function getDefaultFiltering()
  489.     {
  490.         return $this->defaultFiltering;
  491.     }
  492.     /**
  493.      * Add userSavedReply
  494.      *
  495.      * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\EmailTemplates $userSavedReply
  496.      *
  497.      * @return UserInstance
  498.      */
  499.     public function addUserSavedReply(\Webkul\UVDesk\CoreFrameworkBundle\Entity\EmailTemplates $userSavedReply)
  500.     {
  501.         $this->userSavedReplies[] = $userSavedReply;
  502.         return $this;
  503.     }
  504.     /**
  505.      * Remove userSavedReply
  506.      *
  507.      * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\EmailTemplates $userSavedReply
  508.      */
  509.     public function removeUserSavedReply(\Webkul\UVDesk\CoreFrameworkBundle\Entity\EmailTemplates $userSavedReply)
  510.     {
  511.         $this->userSavedReplies->removeElement($userSavedReply);
  512.     }
  513.     /**
  514.      * Get userSavedReplies
  515.      *
  516.      * @return \Doctrine\Common\Collections\Collection
  517.      */
  518.     public function getUserSavedReplies()
  519.     {
  520.         return $this->userSavedReplies;
  521.     }
  522.     /**
  523.      * Add userSavedFilter
  524.      *
  525.      * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SavedFilters $userSavedFilter
  526.      *
  527.      * @return UserInstance
  528.      */
  529.     public function addUserSavedFilter(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SavedFilters $userSavedFilter)
  530.     {
  531.         $this->userSavedFilters[] = $userSavedFilter;
  532.         return $this;
  533.     }
  534.     /**
  535.      * Remove userSavedFilter
  536.      *
  537.      * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SavedFilters $userSavedFilter
  538.      */
  539.     public function removeUserSavedFilter(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SavedFilters $userSavedFilter)
  540.     {
  541.         $this->userSavedFilters->removeElement($userSavedFilter);
  542.     }
  543.     /**
  544.      * Get userSavedFilters
  545.      *
  546.      * @return \Doctrine\Common\Collections\Collection
  547.      */
  548.     public function getUserSavedFilters()
  549.     {
  550.         return $this->userSavedFilters;
  551.     }
  552.     /**
  553.      * Set user
  554.      *
  555.      * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\User $user
  556.      *
  557.      * @return UserInstance
  558.      */
  559.     public function setUser(\Webkul\UVDesk\CoreFrameworkBundle\Entity\User $user null)
  560.     {
  561.         $this->user $user;
  562.         return $this;
  563.     }
  564.     /**
  565.      * Get user
  566.      *
  567.      * @return \Webkul\UVDesk\CoreFrameworkBundle\Entity\User
  568.      */
  569.     public function getUser()
  570.     {
  571.         return $this->user;
  572.     }
  573.     /**
  574.      * Set supportRole
  575.      *
  576.      * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportRole $supportRole
  577.      *
  578.      * @return UserInstance
  579.      */
  580.     public function setSupportRole(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportRole $supportRole null)
  581.     {
  582.         $this->supportRole $supportRole;
  583.         return $this;
  584.     }
  585.     /**
  586.      * Get supportRole
  587.      *
  588.      * @return \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportRole
  589.      */
  590.     public function getSupportRole()
  591.     {
  592.         return $this->supportRole;
  593.     }
  594.     /**
  595.      * Add supportPrivilege
  596.      *
  597.      * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportPrivilege $supportPrivilege
  598.      *
  599.      * @return UserInstance
  600.      */
  601.     public function addSupportPrivilege(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportPrivilege $supportPrivilege)
  602.     {
  603.         $this->supportPrivileges[] = $supportPrivilege;
  604.         return $this;
  605.     }
  606.     /**
  607.      * Remove supportPrivilege
  608.      *
  609.      * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportPrivilege $supportPrivilege
  610.      */
  611.     public function removeSupportPrivilege(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportPrivilege $supportPrivilege)
  612.     {
  613.         $this->supportPrivileges->removeElement($supportPrivilege);
  614.     }
  615.     /**
  616.      * Get supportPrivileges
  617.      *
  618.      * @return \Doctrine\Common\Collections\Collection
  619.      */
  620.     public function getSupportPrivileges()
  621.     {
  622.         return $this->supportPrivileges;
  623.     }
  624.     /**
  625.      * Add supportTeam
  626.      *
  627.      * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam $supportTeam
  628.      *
  629.      * @return UserInstance
  630.      */
  631.     public function addSupportTeam(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam $supportTeam)
  632.     {
  633.         $this->supportTeams[] = $supportTeam;
  634.         return $this;
  635.     }
  636.     /**
  637.      * Remove supportTeam
  638.      *
  639.      * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam $supportTeam
  640.      */
  641.     public function removeSupportTeam(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam $supportTeam)
  642.     {
  643.         $this->supportTeams->removeElement($supportTeam);
  644.     }
  645.     /**
  646.      * Get supportTeams
  647.      *
  648.      * @return \Doctrine\Common\Collections\Collection
  649.      */
  650.     public function getSupportTeams()
  651.     {
  652.         return $this->supportTeams;
  653.     }
  654.     /**
  655.      * Add supportGroup
  656.      *
  657.      * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup $supportGroup
  658.      *
  659.      * @return UserInstance
  660.      */
  661.     public function addSupportGroup(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup $supportGroup)
  662.     {
  663.         $this->supportGroups[] = $supportGroup;
  664.         return $this;
  665.     }
  666.     /**
  667.      * Remove supportGroup
  668.      *
  669.      * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup $supportGroup
  670.      */
  671.     public function removeSupportGroup(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup $supportGroup)
  672.     {
  673.         $this->supportGroups->removeElement($supportGroup);
  674.     }
  675.     /**
  676.      * Get supportGroups
  677.      *
  678.      * @return \Doctrine\Common\Collections\Collection
  679.      */
  680.     public function getSupportGroups()
  681.     {
  682.         return $this->supportGroups;
  683.     }
  684.     /**
  685.      * Add leadSupportTeam
  686.      *
  687.      * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam $leadSupportTeam
  688.      *
  689.      * @return UserInstance
  690.      */
  691.     public function addLeadSupportTeam(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam $leadSupportTeam)
  692.     {
  693.         $this->leadSupportTeams[] = $leadSupportTeam;
  694.         return $this;
  695.     }
  696.     /**
  697.      * Remove leadSupportTeam
  698.      *
  699.      * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam $leadSupportTeam
  700.      */
  701.     public function removeLeadSupportTeam(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam $leadSupportTeam)
  702.     {
  703.         $this->leadSupportTeams->removeElement($leadSupportTeam);
  704.     }
  705.     /**
  706.      * Get leadSupportTeams
  707.      *
  708.      * @return \Doctrine\Common\Collections\Collection
  709.      */
  710.     public function getLeadSupportTeams()
  711.     {
  712.         return $this->leadSupportTeams;
  713.     }
  714.     /**
  715.      * Add adminSupportGroup
  716.      *
  717.      * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup $adminSupportGroup
  718.      *
  719.      * @return UserInstance
  720.      */
  721.     public function addAdminSupportGroup(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup $adminSupportGroup)
  722.     {
  723.         $this->adminSupportGroups[] = $adminSupportGroup;
  724.         return $this;
  725.     }
  726.     /**
  727.      * Remove adminSupportGroup
  728.      *
  729.      * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup $adminSupportGroup
  730.      */
  731.     public function removeAdminSupportGroup(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup $adminSupportGroup)
  732.     {
  733.         $this->adminSupportGroups->removeElement($adminSupportGroup);
  734.     }
  735.     /**
  736.      * Get adminSupportGroups
  737.      *
  738.      * @return \Doctrine\Common\Collections\Collection
  739.      */
  740.     public function getAdminSupportGroups()
  741.     {
  742.         return $this->adminSupportGroups;
  743.     }
  744.     /**
  745.      * @ORM\PrePersist
  746.      *
  747.      * Initialize timestamps for createdAt and updatedAt fields when persisting the UserInstance to database
  748.      * the first time.
  749.      *
  750.      * @return UserInstance
  751.     */
  752.     public function initializeUserTimestamp()
  753.     {
  754.         $this->createdAt $this->updatedAt = new \DateTime('now');
  755.         return $this;
  756.     }
  757.     /**
  758.      * @ORM\PreUpdate
  759.      *
  760.      * Updates the updatedAt field when persisting the UserInstance to database.
  761.      *
  762.      * @return UserInstance
  763.     */
  764.     public function updateUserTimestamp()
  765.     {
  766.         $this->updatedAt = new \DateTime('now');
  767.         return $this;
  768.     }
  769.     /**
  770.      * Get user partial data
  771.      *
  772.      * @return array
  773.      */
  774.     public function getPartialDetails()
  775.     {
  776.         return [
  777.             'id'            => $this->getUser()->getId(),
  778.             'email'         => $this->getUser()->getEmail(),
  779.             'name'          => $this->getUser()->getFullName(),
  780.             'firstName'     => $this->getUser()->getFirstName(),
  781.             'lastName'      => $this->getUser()->getLastName(),
  782.             'contactNumber' => $this->getContactNumber(),
  783.             'thumbnail'     => $this->getProfileImagePath(),
  784.             'isOnline'      => $this->getIsOnline(),
  785.             'lastLogin'     => $this->getLastLogin(),
  786.         ];
  787.     }
  788. }