<?php
namespace App\OfficeBrain\Bundle\ServiceGroupBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use Gedmo\Mapping\Annotation as Gedmo;
/**
* ServiceRuleMaster.
*
* @ORM\Table(name="tbl_service_rule_master")
* @ORM\Entity(repositoryClass="App\OfficeBrain\Bundle\ServiceGroupBundle\Entity\ServiceRuleMasterRepository")
*/
class ServiceRuleMaster
{
/**
* @var int
*
* @ORM\Column(name="id", type="bigint",length=20, options={"unsigned"=true})
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="rule_name", type="string", length=255, nullable=false)
*/
private $ruleName;
/**
* @var string
*
* @ORM\Column(name="rule_type", type="string", length=50)
*/
private $ruleType;
/**
* @var int
*
* @ORM\Column(name="status", type="integer", length=4)
*/
private $status = 1;
/**
* @var int
*
* @ORM\Column(name="country_id", type="bigint",length=20, options={"unsigned"=true})
*/
private $countryId;
/**
* @ORM\OneToMany(targetEntity="ServiceRuleMainCondition", mappedBy="serviceRuleMasterId", cascade={"persist"})
*/
private $serviceRuleMainConditionId;
/**
* @var \DateTime
* @Gedmo\Timestampable(on="create")
* @ORM\Column(name="created_at", type="datetime")
*/
private $createdAt;
/**
* @var \DateTime
* @Gedmo\Timestampable(on="update")
* @ORM\Column(name="updated_at", type="datetime", nullable=true)
*/
private $updatedAt;
/**
* @var \DateTime
*
* @ORM\Column(name="deleted_at", type="datetime", nullable=true)
*/
private $deletedAt;
/**
* @var int
* @ORM\Column(name="created_uid", type="bigint" ,length=20 ,options={"unsigned"=true})
*/
private $createdUid;
/**
* @var int
* @ORM\Column(name="updated_uid", type="bigint" ,length=20 ,options={"unsigned"=true}, nullable=true)
*/
private $updatedUid;
/**
* @var int
* @ORM\Column(name="deleted_uid", type="bigint" ,length=20 ,options={"unsigned"=true}, nullable=true)
*/
private $deletedUid;
/**
* @var \integer
*
* @ORM\Column(name="instance_id", type="integer",length=11,nullable=true)
*/
private $instanceId;
/**
* @var \string
*
* @ORM\Column(name="instance_type", type="string",length=255,nullable=true)
*/
private $instanceType;
/**
* Set id.
*
* @param int $id
*
* @return ServiceRuleMaster
*/
public function setId($id)
{
$this->id = $id;
return $this;
}
/**
* Get id.
*
* @return int
*/
public function getId()
{
return $this->id;
}
/**
* Set ruleName.
*
* @param string $ruleName
*
* @return ServiceRuleMaster
*/
public function setRuleName($ruleName)
{
$this->ruleName = $ruleName;
return $this;
}
/**
* Get ruleName.
*
* @return string
*/
public function getRuleName()
{
return $this->ruleName;
}
/**
* Set ruleType.
*
* @param string $ruleType
*
* @return ServiceRuleMaster
*/
public function setRuleType($ruleType)
{
$this->ruleType = $ruleType;
return $this;
}
/**
* Get ruleType.
*
* @return string
*/
public function getRuleType()
{
return $this->ruleType;
}
/**
* Set status.
*
* @param int $status
*
* @return ServiceRuleMaster
*/
public function setStatus($status)
{
$this->status = ($status === null ? 1 : $status);
return $this;
}
/**
* Get status.
*
* @return int
*/
public function getStatus()
{
return $this->status;
}
/**
* Set countryId.
*
* @param int $countryId
*
* @return ServiceRuleMaster
*/
public function setCountryId($countryId)
{
$this->countryId = $countryId;
return $this;
}
/**
* Get countryId.
*
* @return int
*/
public function getCountryId()
{
return $this->countryId;
}
/**
* Set createdAt.
*
* @param \DateTime $createdAt
*
* @return ServiceRuleMaster
*/
public function setCreatedAt(\DateTime $createdAt = null)
{
$this->createdAt = ($createdAt === null) ? new \DateTime() : $createdAt;
return $this;
}
/**
* Get createdAt.
*
* @return \DateTime
*/
public function getCreatedAt()
{
return $this->createdAt;
}
/**
* Set updatedAt.
*
* @param \DateTime $updatedAt
*
* @return ServiceRuleMaster
*/
public function setUpdatedAt(\DateTime $updatedAt = null)
{
$this->updatedAt = ($updatedAt === null) ? new \DateTime() : $updatedAt;
return $this;
}
/**
* Get updatedAt.
*
* @return \DateTime
*/
public function getUpdatedAt()
{
return $this->updatedAt;
}
/**
* Set deletedAt.
*
* @param \DateTime $deletedAt
*
* @return ServiceRuleMaster
*/
public function setDeletedAt(\DateTime $deletedAt = null)
{
$this->deletedAt = ($deletedAt === null) ? new \DateTime() : $deletedAt;
return $this;
}
/**
* Get deletedAt.
*
* @return \DateTime
*/
public function getDeletedAt()
{
return $this->deletedAt;
}
/**
* Set createdUid.
*
* @param int $createdUid
*
* @return ServiceGroup
*/
public function setCreatedUid($createdUid)
{
$this->createdUid = $createdUid;
return $this;
}
/**
* Get createdUid.
*
* @return int
*/
public function getCreatedUid()
{
return $this->createdUid;
}
/**
* Set updatedUid.
*
* @param int $updatedUid
*
* @return ServiceGroup
*/
public function setUpdatedUid($updatedUid)
{
$this->updatedUid = $updatedUid;
return $this;
}
/**
* Get updatedUid.
*
* @return int
*/
public function getUpdatedUid()
{
return $this->updatedUid;
}
/**
* Set deletedUid.
*
* @param int $deletedUid
*
* @return ServiceGroup
*/
public function setDeletedUid($deletedUid)
{
$this->deletedUid = $deletedUid;
return $this;
}
/**
* Get deletedUid.
*
* @return int
*/
public function getDeletedUid()
{
return $this->deletedUid;
}
/**
* Set instanceId.
*
* @param int $instanceId
*
* @return Coupon
*/
public function setInstanceId($instanceId)
{
$this->instanceId = $instanceId;
return $this;
}
/**
* Get instanceId.
*
* @return int
*/
public function getInstanceId()
{
return $this->instanceId;
}
/**
* Set instanceType.
*
* @param string $instanceType
*
* @return Coupon
*/
public function setInstanceType($instanceType)
{
$this->instanceType = $instanceType;
return $this;
}
/**
* Get instanceType.
*
* @return string
*/
public function getInstanceType()
{
return $this->instanceType;
}
public function __construct()
{
$this->serviceRuleMainConditionId = new \Doctrine\Common\Collections\ArrayCollection();
}
public function addServiceRuleMainConditionId(ServiceRuleMainCondition $serviceRuleMainConditionId)
{
$this->serviceRuleMainConditionId->add($serviceRuleMainConditionId);
return $this;
}
public function removeServiceRuleMainConditionId(ServiceRuleMainCondition $serviceRuleMainConditionId)
{
$this->serviceRuleMainConditionId->removeElement($serviceRuleMainConditionId);
return $this;
}
public function getServiceRuleMainConditionId()
{
return $this->serviceRuleMainConditionId;
}
/**
* Make clone object with child entity.
*
* @return string
*/
public function __clone()
{
$ruleMainConditionArray = $this->getServiceRuleMainConditionId();
if ($ruleMainConditionArray) {
$this->serviceRuleMainConditionId = new \Doctrine\Common\Collections\ArrayCollection();
foreach ($ruleMainConditionArray as $ruleMainCondition) {
$copyRuleMainCondition = clone $ruleMainCondition;
$copyRuleMainCondition->setId(null);
$copyRuleMainCondition->setServiceRuleMasterId($this);
$this->addServiceRuleMainConditionId($copyRuleMainCondition);
}
}
}
}