<?php
namespace App\Entity;
use Knp\DoctrineBehaviors\Contract\Entity\SoftDeletableInterface;
use Knp\DoctrineBehaviors\Model\SoftDeletable\SoftDeletableTrait;
use Knp\DoctrineBehaviors\Model\Blameable\BlameableTrait;
use Knp\DoctrineBehaviors\Contract\Entity\BlameableInterface;
use Knp\DoctrineBehaviors\Model\Timestampable\TimestampableTrait;
use Knp\DoctrineBehaviors\Contract\Entity\TimestampableInterface;
/**
* @Doctrine\ORM\Mapping\Entity
* @Doctrine\ORM\Mapping\Table(name="user_groups_module")
*/
class UserGroupModule implements BlameableInterface, TimestampableInterface, SoftDeletableInterface {
use BlameableTrait;
use TimestampableTrait;
use SoftDeletableTrait;
const EDIT = 1;
const EDIT_ALL = 2;
/**
* @Doctrine\ORM\Mapping\Id
* @Doctrine\ORM\Mapping\Column(type="integer")
* @Doctrine\ORM\Mapping\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @Doctrine\ORM\Mapping\ManyToOne(targetEntity="Module", inversedBy="groupsModules")
* @Doctrine\ORM\Mapping\JoinColumn(name="module_id", referencedColumnName="id")
*/
protected $module;
/**
* @Doctrine\ORM\Mapping\ManyToOne(targetEntity="UserGroup", inversedBy="groupsModules")
* @Doctrine\ORM\Mapping\JoinColumn(name="group_id", referencedColumnName="id")
*/
protected $group;
/**
*
* @Doctrine\ORM\Mapping\Column(type="boolean")
*/
protected $viewm;
/**
*
* @Doctrine\ORM\Mapping\Column(type="boolean")
*/
protected $createm;
/**
* 0 - brak możliwości edycji
* 1 - edycja tylko własnych pozycji
* 2 - edycja wszystkich pozycji
* @Doctrine\ORM\Mapping\Column(type="integer")
*/
protected $editm;
public function __construct()
{
$this->viewm = false;
$this->createm = false;
$this->editm = 0;
}
public function getId()
{
return $this->id;
}
/**
* Set viewm
*
* @param boolean $viewm
*
* @return UserGroupModule
*/
public function setViewm($viewm)
{
$this->viewm = $viewm;
return $this;
}
/**
* Get viewm
*
* @return boolean
*/
public function getViewm()
{
return $this->viewm;
}
/**
* Set createm
*
* @param boolean $createm
*
* @return UserGroupModule
*/
public function setCreatem($createm)
{
$this->createm = $createm;
return $this;
}
/**
* Get createm
*
* @return boolean
*/
public function getCreatem()
{
return $this->createm;
}
/**
* Set editm
*
* @param integer $editm
*
* @return UserGroupModule
*/
public function setEditm($editm)
{
$this->editm = $editm;
return $this;
}
/**
* Get editm
*
* @return integer
*/
public function getEditm()
{
return $this->editm;
}
/**
* Set module
*
* @param \App\Entity\Module $module
*
* @return UserGroupModule
*/
public function setModule(\App\Entity\Module $module = null)
{
$this->module = $module;
return $this;
}
/**
* Get module
*
* @return \App\Entity\Module
*/
public function getModule()
{
return $this->module;
}
/**
* Set group
*
* @param \App\Entity\UserGroup $group
*
* @return UserGroupModule
*/
public function setGroup(\App\Entity\UserGroup $group = null)
{
$this->group = $group;
return $this;
}
/**
* Get group
*
* @return \App\Entity\UserGroup
*/
public function getGroup()
{
return $this->group;
}
}