<?php
namespace App\OfficeBrain\Bundle\AccessManagementBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use Gedmo\Mapping\Annotation as Gedmo;
/**
* Entity For InstanceUserAccessMapping
*
* Map Instance and User Accesses
*
* @author OfficeBrain 4273 <info@officebrain.com>
*
*/
/**
* InstanceUserAccessMapping
*
* @ORM\Table(name="tbl_instance_user_access_mapping", options={"type"="InnoDB","charset"="utf8","collate"="utf8_unicode_ci"})
* @ORM\Entity(repositoryClass="App\OfficeBrain\Bundle\AccessManagementBundle\Entity\InstanceUserAccessMappingRepository")
* @Gedmo\SoftDeleteable(fieldName="deletedAt", timeAware=false)
*/
class InstanceUserAccessMapping
{
/**
* @var integer
*
* @ORM\Column(name="id", type="bigint", length=20, options={"unsigned"=true})
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* Bidirectional (OWNING SIDE - FK)
*
* @ORM\ManyToOne(targetEntity="\App\OfficeBrain\Bundle\AccessManagementBundle\Entity\ProjectAccessMaster", inversedBy="instanceAccess")
* @ORM\JoinColumn(name="access_id", nullable=false)
*/
protected $instanceAccess;
/**
* Bidirectional (OWNING SIDE - FK)
*
* @ORM\ManyToOne(targetEntity="\App\OfficeBrain\Bundle\UserBundle\Entity\User", inversedBy="instanceAccess")
* @ORM\JoinColumn(name="user_id", nullable=false)
*/
protected $user;
/**
* Bidirectional (OWNING SIDE - FK).
*
* @ORM\ManyToOne(targetEntity="\App\OfficeBrain\Bundle\AccessManagementBundle\Entity\InstanceMaster", inversedBy="instance")
* @ORM\JoinColumn(name="instance_id", nullable=false)
*/
protected $instance;
/**
* @var datetime
*
* @Gedmo\Timestampable(on="create")
* @ORM\Column(type="datetime", name="created_at")
*/
protected $createdAt;
/**
* @var datetime
*
* @Gedmo\Timestampable(on="update")
* @ORM\Column(type="datetime", name="updated_at", nullable=true)
*/
protected $updatedAt;
/**
* @var datetime
*
* @ORM\Column(type="datetime", name="deleted_at", nullable=true)
*/
protected $deletedAt;
/**
* Get id
*
* @return integer
*/
public function getId()
{
return $this->id;
}
/**
* Set instanceAccess
*
* @param \App\OfficeBrain\Bundle\AccessManagementBundle\Entity\ProjectAccessMaster $instanceAccess
* @return InstanceUserAccessMapping
*/
public function setInstanceAccess($instanceAccess)
{
$this->instanceAccess = $instanceAccess;
return $this;
}
/**
* Get instanceAccess
*
* @return \App\OfficeBrain\Bundle\AccessManagementBundle\Entity\ProjectAccessMaster
*/
public function getInstanceAccess()
{
return $this->instanceAccess;
}
/**
* Set user
*
* @param \App\OfficeBrain\Bundle\UserBundle\Entity\User $user
* @return InstanceUserAccessMapping
*/
public function setUser($user)
{
$this->user = $user;
return $this;
}
/**
* Get user
*
* @return \App\OfficeBrain\Bundle\UserBundle\Entity\User
*/
public function getUser()
{
return $this->user;
}
/**
* Set instance.
*
* @param \App\OfficeBrain\Bundle\AccessManagementBundle\Entity\InstanceMaster $instance
*
* @return InstanceAccessMapping
*/
public function setInstance($instance)
{
$this->instance = $instance;
return $this;
}
/**
* Get instance.
*
* @return \App\OfficeBrain\Bundle\AccessManagementBundle\Entity\InstanceMaster
*/
public function getInstance()
{
return $this->instance;
}
/**
* Set createdAt.
*
* @param \DateTime $createdAt
*
* @return InstanceConfiguration
*/
public function setCreatedAt($createdAt)
{
$this->createdAt = $createdAt;
return $this;
}
/**
* Get createdAt.
*
* @return \DateTime
*/
public function getCreatedAt()
{
return $this->createdAt;
}
/**
* Set updatedAt.
*
* @param \DateTime $updatedAt
*
* @return InstanceConfiguration
*/
public function setUpdatedAt($updatedAt)
{
$this->updatedAt = $updatedAt;
return $this;
}
/**
* Get updatedAt.
*
* @return \DateTime
*/
public function getUpdatedAt()
{
return $this->updatedAt;
}
/**
* Set deletedAt.
*
* @param \DateTime $deletedAt
*
* @return InstanceConfiguration
*/
public function setDeletedAt($deletedAt)
{
$this->deletedAt = $deletedAt;
return $this;
}
/**
* Get deletedAt.
*
* @return \DateTime
*/
public function getDeletedAt()
{
return $this->deletedAt;
}
}