src/OfficeBrain/Bundle/AccessManagementBundle/Entity/ProjectAccessMaster.php line 24

Open in your IDE?
  1. <?php
  2. namespace App\OfficeBrain\Bundle\AccessManagementBundle\Entity;
  3. use Doctrine\ORM\Mapping as ORM;
  4. use Gedmo\Mapping\Annotation as Gedmo;
  5. /**
  6.  * Entity For ProjectAccessMaster
  7.  *
  8.  * Define Project Accesses
  9.  *
  10.  * @author OfficeBrain 4273 <info@officebrain.com>
  11.  *
  12.  */
  13. /**
  14.  * ProjectAccessMaster
  15.  *
  16.  * @ORM\Table(name="tbl_project_access_master", options={"type"="InnoDB","charset"="utf8","collate"="utf8_unicode_ci"})
  17.  * @ORM\Entity(repositoryClass="App\OfficeBrain\Bundle\AccessManagementBundle\Entity\ProjectAccessMasterRepository")
  18.  * @Gedmo\SoftDeleteable(fieldName="deletedAt", timeAware=false)
  19.  */
  20. class ProjectAccessMaster
  21. {
  22.     /**
  23.      * @var integer
  24.      *
  25.      * @ORM\Column(name="id", type="bigint", length=20, options={"unsigned"=true})
  26.      * @ORM\Id
  27.      * @ORM\GeneratedValue(strategy="AUTO")
  28.      */
  29.     private $id;
  30.     /**
  31.      * @var string
  32.      *
  33.      * @ORM\Column(name="access_name", type="string", length=255, options={"collate"="utf8_unicode_ci"})
  34.      */
  35.     protected $accessName;
  36.     /**
  37.      * @var string
  38.      *
  39.      * @ORM\Column(name="access_route_name", type="text", options={"collate"="utf8_unicode_ci"},nullable=true)
  40.      */
  41.     protected $accessRouteName;
  42.     /**
  43.      * Bidirectional (OWNING SIDE - FK)
  44.      *
  45.      * @ORM\ManyToOne(targetEntity="\App\OfficeBrain\Bundle\AccessManagementBundle\Entity\ProjectAccessMaster", inversedBy="child",cascade={"persist"})
  46.      * @ORM\JoinColumn(name="parent_id", nullable=true)
  47.      */
  48.     protected $parent;
  49.     /**
  50.      *
  51.      * @ORM\OneToMany(targetEntity="\App\OfficeBrain\Bundle\AccessManagementBundle\Entity\ProjectAccessMaster", mappedBy="parent")
  52.      * @ORM\JoinColumn(nullable=false)
  53.      */
  54.     protected $child;
  55.     /**
  56.      *
  57.      * @ORM\OneToMany(targetEntity="\App\OfficeBrain\Bundle\AccessManagementBundle\Entity\InstanceAccessMapping", mappedBy="access")
  58.      * @ORM\JoinColumn(nullable=false)
  59.      */
  60.     protected $access;
  61.     /**
  62.      *
  63.      * @ORM\OneToMany(targetEntity="\App\OfficeBrain\Bundle\AccessManagementBundle\Entity\InstanceUserAccessMapping", mappedBy="instanceAccess")
  64.      * @ORM\JoinColumn(nullable=false)
  65.      */
  66.     protected $instanceAccess;
  67.     /**
  68.      * @var datetime
  69.      *
  70.      * @Gedmo\Timestampable(on="create")
  71.      * @ORM\Column(type="datetime", name="created_at")
  72.      */
  73.     protected $createdAt;
  74.     /**
  75.      * @var datetime
  76.      *
  77.      * @Gedmo\Timestampable(on="update")
  78.      * @ORM\Column(type="datetime", name="updated_at", nullable=true)
  79.      */
  80.     protected $updatedAt;
  81.     /**
  82.      * @var datetime
  83.      *
  84.      * @ORM\Column(type="datetime", name="deleted_at", nullable=true)
  85.      */
  86.     protected $deletedAt;
  87.     /**
  88.      * Set id
  89.      *
  90.      * @return integer
  91.      */
  92.     public function setId($id)
  93.     {
  94.         $this->id=$id;
  95.     }
  96.     
  97.     /**
  98.      * Get id
  99.      *
  100.      * @return integer
  101.      */
  102.     public function getId()
  103.     {
  104.         return $this->id;
  105.     }
  106.     /**
  107.      * Set accessName
  108.      *
  109.      * @param string $accessName
  110.      * @return ProjectAccessMaster
  111.      */
  112.     public function setAccessName($accessName)
  113.     {
  114.         $this->accessName $accessName;
  115.         return $this;
  116.     }
  117.     /**
  118.      * Get accessName
  119.      *
  120.      * @return string
  121.      */
  122.     public function getAccessName()
  123.     {
  124.         return $this->accessName;
  125.     }
  126.     /**
  127.      * Set createdAt
  128.      *
  129.      * @param \DateTime $createdAt
  130.      * @return ProjectAccessMaster
  131.      */
  132.     public function setCreatedAt($createdAt)
  133.     {
  134.         $this->createdAt $createdAt;
  135.         return $this;
  136.     }
  137.     /**
  138.      * Get createdAt
  139.      *
  140.      * @return \DateTime
  141.      */
  142.     public function getCreatedAt()
  143.     {
  144.         return $this->createdAt;
  145.     }
  146.     /**
  147.      * Set updatedAt
  148.      *
  149.      * @param \DateTime $updatedAt
  150.      * @return ProjectAccessMaster
  151.      */
  152.     public function setUpdatedAt($updatedAt)
  153.     {
  154.         $this->updatedAt $updatedAt;
  155.         return $this;
  156.     }
  157.     /**
  158.      * Get updatedAt
  159.      *
  160.      * @return \DateTime
  161.      */
  162.     public function getUpdatedAt()
  163.     {
  164.         return $this->updatedAt;
  165.     }
  166.     /**
  167.      * Set deletedAt
  168.      *
  169.      * @param \DateTime $deletedAt
  170.      * @return ProjectAccessMaster
  171.      */
  172.     public function setDeletedAt($deletedAt)
  173.     {
  174.         $this->deletedAt $deletedAt;
  175.         return $this;
  176.     }
  177.     /**
  178.      * Get deletedAt
  179.      *
  180.      * @return \DateTime
  181.      */
  182.     public function getDeletedAt()
  183.     {
  184.         return $this->deletedAt;
  185.     }
  186.     /**
  187.      * Set parent
  188.      *
  189.      * @param \App\OfficeBrain\Bundle\AccessManagementBundle\Entity\ProjectAccessMaster $parent
  190.      * @return ProjectAccessMaster
  191.      */
  192.     public function setParent($parent)
  193.     {
  194.         $this->parent $parent;
  195.         return $this;
  196.     }
  197.     /**
  198.      * Get parent
  199.      *
  200.      * @return \App\OfficeBrain\Bundle\AccessManagementBundle\Entity\ProjectAccessMaster
  201.      */
  202.     public function getParent()
  203.     {
  204.         return $this->parent;
  205.     }
  206.     /**
  207.      * Constructor
  208.      */
  209.     public function __construct()
  210.     {
  211.         $this->child = new \Doctrine\Common\Collections\ArrayCollection();
  212.     }
  213.     /**
  214.      * Set accessRouteName
  215.      *
  216.      * @param string $accessRouteName
  217.      * @return ProjectAccessMaster
  218.      */
  219.     public function setAccessRouteName($accessRouteName)
  220.     {
  221.         $this->accessRouteName $accessRouteName;
  222.         return $this;
  223.     }
  224.     /**
  225.      * Get accessRouteName
  226.      *
  227.      * @return string
  228.      */
  229.     public function getAccessRouteName()
  230.     {
  231.         return $this->accessRouteName;
  232.     }
  233.     /**
  234.      * Add child
  235.      *
  236.      * @param \App\OfficeBrain\Bundle\AccessManagementBundle\Entity\ProjectAccessMaster $child
  237.      * @return ProjectAccessMaster
  238.      */
  239.     public function addChild(\App\OfficeBrain\Bundle\AccessManagementBundle\Entity\ProjectAccessMaster $child)
  240.     {
  241.         $this->child[] = $child;
  242.         return $this;
  243.     }
  244.     /**
  245.      * Remove child
  246.      *
  247.      * @param \App\OfficeBrain\Bundle\AccessManagementBundle\Entity\ProjectAccessMaster $child
  248.      */
  249.     public function removeChild(\App\OfficeBrain\Bundle\AccessManagementBundle\Entity\ProjectAccessMaster $child)
  250.     {
  251.         $this->child->removeElement($child);
  252.     }
  253.     /**
  254.      * Get child
  255.      *
  256.      * @return \Doctrine\Common\Collections\Collection
  257.      */
  258.     public function getChild()
  259.     {
  260.         return $this->child;
  261.     }
  262.     /**
  263.      * Add access
  264.      *
  265.      * @param \App\OfficeBrain\Bundle\AccessManagementBundle\Entity\InstanceAccessMapping $access
  266.      * @return ProjectAccessMaster
  267.      */
  268.     public function addAccess(\App\OfficeBrain\Bundle\AccessManagementBundle\Entity\InstanceAccessMapping $access)
  269.     {
  270.         $this->access[] = $access;
  271.         return $this;
  272.     }
  273.     /**
  274.      * Remove access
  275.      *
  276.      * @param \App\OfficeBrain\Bundle\AccessManagementBundle\Entity\InstanceAccessMapping $access
  277.      */
  278.     public function removeAccess(\App\OfficeBrain\Bundle\AccessManagementBundle\Entity\InstanceAccessMapping $access)
  279.     {
  280.         $this->access->removeElement($access);
  281.     }
  282.     /**
  283.      * Get access
  284.      *
  285.      * @return \Doctrine\Common\Collections\Collection
  286.      */
  287.     public function getAccess()
  288.     {
  289.         return $this->access;
  290.     }
  291.     /**
  292.      * Add instanceAccess
  293.      *
  294.      * @param \App\OfficeBrain\Bundle\AccessManagementBundle\Entity\InstanceUserAccessMapping $instanceAccess
  295.      * @return ProjectAccessMaster
  296.      */
  297.     public function addInstanceAccess(\App\OfficeBrain\Bundle\AccessManagementBundle\Entity\InstanceUserAccessMapping $instanceAccess)
  298.     {
  299.         $this->instanceAccess[] = $instanceAccess;
  300.         return $this;
  301.     }
  302.     /**
  303.      * Remove instanceAccess
  304.      *
  305.      * @param \App\OfficeBrain\Bundle\AccessManagementBundle\Entity\InstanceUserAccessMapping $instanceAccess
  306.      */
  307.     public function removeInstanceAccess(\App\OfficeBrain\Bundle\AccessManagementBundle\Entity\InstanceUserAccessMapping $instanceAccess)
  308.     {
  309.         $this->instanceAccess->removeElement($instanceAccess);
  310.     }
  311.     /**
  312.      * Get instanceAccess
  313.      *
  314.      * @return \Doctrine\Common\Collections\Collection
  315.      */
  316.     public function getInstanceAccess()
  317.     {
  318.         return $this->instanceAccess;
  319.     }
  320. }