<?php

namespace Neag\MainBundle\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 * Offer
 * 
 * @ORM\Table(name="offers",indexes={@ORM\Index(name="type", columns={"type"}), @ORM\Index(name="price", columns={"price"}), @ORM\Index(name="active", columns={"active"})})  
 * @ORM\Entity  
 */
class Offer
{
    /**
     * @var integer $id
     *
     * @ORM\Column(name="id", type="bigint")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    private $id;    
    
    /**
     * @var integer
     * @ORM\Column(name="type", type="string", length=16)
     * room, hotelroom, 1, 2, 3, 4, 5, 6andmore
     */
    private $type;
    
    /**
     * @var string
     * @ORM\Column(name="street", type="string", length=255)
     */
    private $street;
    
    /**
     * @var string
     * @ORM\Column(name="house_n", type="string", length=16)
     */
    private $houseN;
    
    /**
     * @var integer
     * @ORM\Column(name="price", type="integer")
     */
    private $price;
    
    /**
     * @var integer
     * @ORM\Column(name="floor", type="integer")
     */
    private $floor;
    
    /**
     * @var integer
     * @ORM\Column(name="floors_total", type="integer")
     */
    private $floorsTotal;

    /**
     * @var boolean
     *
     * @ORM\Column(name="active", type="boolean", nullable=false)
     */
    private $active = true;

    /**
     * Set type
     *
     * @param string $type
     * @return Offer
     */
    public function setType($type)
    {
        $this->type = $type;

        return $this;
    }

    /**
     * Get type
     *
     * @return string 
     */
    public function getType()
    {
        return $this->type;
    }
    
    /**
     * Set street
     *
     * @param string $street
     * @return Offer
     */
    public function setStreet($street)
    {
        $this->street = $street;

        return $this;
    }

    /**
     * Get street
     *
     * @return string 
     */
    public function getStreet()
    {
        return $this->street;
    }
    
    /**
     * Set houseN
     *
     * @param string $houseN
     * @return Offer
     */
    public function setHouseN($houseN)
    {
        $this->houseN = $houseN;

        return $this;
    }

    /**
     * Get houseN
     *
     * @return string 
     */
    public function getHouseN()
    {
        return $this->houseN;
    }
    
    /**
     * Set price
     *
     * @param integer $price
     * @return Offer
     */
    public function setPrice($price)
    {
        $this->price = $price;

        return $this;
    }

    /**
     * Get price
     *
     * @return integer 
     */
    public function getPrice()
    {
        return $this->price;
    }
    
    /**
     * Set floor
     *
     * @param integer $floor
     * @return Offer
     */
    public function setFloor($floor)
    {
        $this->floor = $floor;

        return $this;
    }

    /**
     * Get floor
     *
     * @return integer 
     */
    public function getFloor()
    {
        return $this->floor;
    }
    
    /**
     * Set floorsTotal
     *
     * @param integer $floorsTotal
     * @return Offer
     */
    public function setFloorsTotal($floorsTotal)
    {
        $this->floorsTotal = $floorsTotal;

        return $this;
    }

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

    /**
     * Set active
     *
     * @param boolean $active
     * @return Offer
     */
    public function setActive($active)
    {
        $this->active = $active;

        return $this;
    }

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

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