<?php

namespace VGM\WOBundle\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 * NoticeLoop
 */
class NoticeLoop
{


    /**
     * @var integer
     */
    private $id;

    /**
     * @var \DateTime
     */
    private $generated;

    /**
     * @var \DateTime
     */
    private $dismissed;

    /**
     * @var string
     */
    private $text;

    /**
     * @var boolean
     */
    private $p_overtime;

    /**
     * @var boolean
     */
    private $c_overtime;

    /**
     * @var boolean
     */
    private $u_overtime;

    /**
     * @var \VGM\WOBundle\Entity\LaborLoop
     */
    private $loop;


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

    /**
     * Set generated
     *
     * @param \DateTime $generated
     * @return NoticeLoop
     */
    public function setGenerated($generated)
    {
        $this->generated = $generated;

        return $this;
    }

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

    /**
     * Set dismissed
     *
     * @param \DateTime $dismissed
     * @return NoticeLoop
     */
    public function setDismissed($dismissed)
    {
        $this->dismissed = $dismissed;

        return $this;
    }

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

    /**
     * Set text
     *
     * @param string $text
     * @return NoticeLoop
     */
    public function setText($text)
    {
        $this->text = $text;

        return $this;
    }

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

    /**
     * Set p_overtime
     *
     * @param boolean $pOvertime
     * @return NoticeLoop
     */
    public function setPOvertime($pOvertime)
    {
        $this->p_overtime = $pOvertime;

        return $this;
    }

    /**
     * Get p_overtime
     *
     * @return boolean 
     */
    public function getPOvertime()
    {
        return $this->p_overtime;
    }

    /**
     * Set c_overtime
     *
     * @param boolean $cOvertime
     * @return NoticeLoop
     */
    public function setCOvertime($cOvertime)
    {
        $this->c_overtime = $cOvertime;

        return $this;
    }

    /**
     * Get c_overtime
     *
     * @return boolean 
     */
    public function getCOvertime()
    {
        return $this->c_overtime;
    }

    /**
     * Set u_overtime
     *
     * @param boolean $uOvertime
     * @return NoticeLoop
     */
    public function setUOvertime($uOvertime)
    {
        $this->u_overtime = $uOvertime;

        return $this;
    }

    /**
     * Get u_overtime
     *
     * @return boolean 
     */
    public function getUOvertime()
    {
        return $this->u_overtime;
    }

    /**
     * Set loop
     *
     * @param \VGM\WOBundle\Entity\LaborLoop $loop
     * @return NoticeLoop
     */
    public function setLoop(\VGM\WOBundle\Entity\LaborLoop $loop = null)
    {
        $this->loop = $loop;

        return $this;
    }

    /**
     * Get loop
     *
     * @return \VGM\WOBundle\Entity\LaborLoop 
     */
    public function getLoop()
    {
        return $this->loop;
    }
    /**
     * @ORM\PrePersist
     */
    public function setDefaultsValue()
    {
        if($this->generated == null)
            $this->generated = new \DateTime();
        if($this->u_overtime == null)
            $this->u_overtime = false;
        if($this->p_overtime == null)
            $this->p_overtime = false;
        if($this->c_overtime == null)
            $this->c_overtime = false;
    }
    /**
     * @var boolean
     */
    private $archived;


    /**
     * Set archived
     *
     * @param boolean $archived
     *
     * @return NoticeLoop
     */
    public function setArchived($archived)
    {
        $this->archived = $archived;

        return $this;
    }

    /**
     * Get archived
     *
     * @return boolean
     */
    public function getArchived()
    {
        return $this->archived;
    }
}
