<?php

namespace OfficeBrain\Bundle\PageBundle\Entity;

use Doctrine\ORM\Mapping as ORM;
use Gedmo\Mapping\Annotation as Gedmo;

/**
 * Entity For SiteModule
 * 
 * @author OfficeBrain 4045
 */

/**
 * SiteModule
 *
 * @ORM\Table(name="tbl_site_module")
 * @ORM\Entity(repositoryClass="OfficeBrain\Bundle\PageBundle\Entity\SiteModuleRepository")
 * @Gedmo\SoftDeleteable(fieldName="deletedAt", timeAware=false)
 */
class SiteModule {
	/**
	 *
	 * @var integer @ORM\Column(name="id", type="bigint",length=20, options={"unsigned"=true})
	 *      @ORM\Id
	 *      @ORM\GeneratedValue(strategy="AUTO")
	 */
	private $id;
	
	/**
	 *
	 * @var \DateTime @Gedmo\Timestampable(on="create")
	 *      @ORM\Column(name="created_at", type="datetime", nullable=true)
	 */
	protected $createdAt;
	
	/**
	 *
	 * @var integer @ORM\Column(name="created_uid", type="integer" ,nullable=true)
	 */
	private $createdUid;
	
	/**
	 *
	 * @var datetime @Gedmo\Timestampable(on="update")
	 *      @ORM\Column( name="updated_at", type="datetime",nullable=true)
	 */
	protected $updatedAt;
	
	/**
	 *
	 * @var integer @ORM\Column(name="updated_uid", type="integer" ,nullable=true)
	 */
	private $updatedUid;
	
	/**
	 *
	 * @var datetime @ORM\Column(name="deleted_at",type="datetime", nullable=true)
	 */
	protected $deletedAt;
	
	/**
	 *
	 * @var integer @ORM\Column(name="deleted_uid", type="integer" ,nullable=true)
	 */
	private $deletedUid;
	
	/**
	 *
	 * @var string
	 * @ORM\Column(name="slug", type="string" ,nullable=true)
	 */
	private $slug;
	
	/**
	 *
	 * @var integer 
	 * @ORM\Column(name="instance_id", type="integer" ,nullable=true)
	 */
	private $instanceId;
	
	/**
	 *
	 * @var integer 
	 * @ORM\Column(name="action_type", type="integer" ,nullable=true)
	 */
	private $actionType;
	
	/**
	 *
	 * @var text
	 * @ORM\Column(name="criteria", type="text" ,nullable=true)
	 */
	private $criteria;
	
	/**
	 *
	 * @var integer 
	 * @ORM\Column(name="max_result", type="integer" ,nullable=true)
	 */
	private $maxResult;
	
	/**
	 *
	 * @var string 
	 * @ORM\Column(name="order_by", type="string" ,nullable=true)
	 */
	private $orderBy;

    /**
     * Get id
     *
     * @return integer 
     */
    public function getId()
    {
        return $this->id;
    }

    /**
     * Set createdAt
     *
     * @param \DateTime $createdAt
     * @return SiteModule
     */
    public function setCreatedAt($createdAt)
    {
        $this->createdAt = $createdAt;

        return $this;
    }

    /**
     * Get createdAt
     *
     * @return \DateTime 
     */
    public function getCreatedAt()
    {
        return $this->createdAt;
    }

    /**
     * Set createdUid
     *
     * @param integer $createdUid
     * @return SiteModule
     */
    public function setCreatedUid($createdUid)
    {
        $this->createdUid = $createdUid;

        return $this;
    }

    /**
     * Get createdUid
     *
     * @return integer 
     */
    public function getCreatedUid()
    {
        return $this->createdUid;
    }

    /**
     * Set updatedAt
     *
     * @param \DateTime $updatedAt
     * @return SiteModule
     */
    public function setUpdatedAt($updatedAt)
    {
        $this->updatedAt = $updatedAt;

        return $this;
    }

    /**
     * Get updatedAt
     *
     * @return \DateTime 
     */
    public function getUpdatedAt()
    {
        return $this->updatedAt;
    }

    /**
     * Set updatedUid
     *
     * @param integer $updatedUid
     * @return SiteModule
     */
    public function setUpdatedUid($updatedUid)
    {
        $this->updatedUid = $updatedUid;

        return $this;
    }

    /**
     * Get updatedUid
     *
     * @return integer 
     */
    public function getUpdatedUid()
    {
        return $this->updatedUid;
    }

    /**
     * Set deletedAt
     *
     * @param \DateTime $deletedAt
     * @return SiteModule
     */
    public function setDeletedAt($deletedAt)
    {
        $this->deletedAt = $deletedAt;

        return $this;
    }

    /**
     * Get deletedAt
     *
     * @return \DateTime 
     */
    public function getDeletedAt()
    {
        return $this->deletedAt;
    }

    /**
     * Set deletedUid
     *
     * @param integer $deletedUid
     * @return SiteModule
     */
    public function setDeletedUid($deletedUid)
    {
        $this->deletedUid = $deletedUid;

        return $this;
    }

    /**
     * Get deletedUid
     *
     * @return integer 
     */
    public function getDeletedUid()
    {
        return $this->deletedUid;
    }

    /**
     * Set slug
     *
     * @param string $slug
     * @return SiteModule
     */
    public function setSlug($slug)
    {
        $this->slug = $slug;

        return $this;
    }

    /**
     * Get slug
     *
     * @return string 
     */
    public function getSlug()
    {
        return $this->slug;
    }

    /**
     * Set instanceId
     *
     * @param integer $instanceId
     * @return SiteModule
     */
    public function setInstanceId($instanceId)
    {
        $this->instanceId = $instanceId;

        return $this;
    }

    /**
     * Get instanceId
     *
     * @return integer 
     */
    public function getInstanceId()
    {
        return $this->instanceId;
    }

    /**
     * Set actionType
     *
     * @param integer $actionType
     * @return SiteModule
     */
    public function setActionType($actionType)
    {
        $this->actionType = $actionType;

        return $this;
    }

    /**
     * Get actionType
     *
     * @return integer 
     */
    public function getActionType()
    {
        return $this->actionType;
    }

    /**
     * Set criteria
     *
     * @param string $criteria
     * @return SiteModule
     */
    public function setCriteria($criteria)
    {
        $this->criteria = $criteria;

        return $this;
    }

    /**
     * Get criteria
     *
     * @return string 
     */
    public function getCriteria()
    {
        return $this->criteria;
    }

    /**
     * Set maxResult
     *
     * @param integer $maxResult
     * @return SiteModule
     */
    public function setMaxResult($maxResult)
    {
        $this->maxResult = $maxResult;

        return $this;
    }

    /**
     * Get maxResult
     *
     * @return integer 
     */
    public function getMaxResult()
    {
        return $this->maxResult;
    }

    /**
     * Set orderBy
     *
     * @param string $orderBy
     * @return SiteModule
     */
    public function setOrderBy($orderBy)
    {
        $this->orderBy = $orderBy;

        return $this;
    }

    /**
     * Get orderBy
     *
     * @return string 
     */
    public function getOrderBy()
    {
        return $this->orderBy;
    }
}
