UnidadAdministrativa.php 8.53 KB
<?php

namespace UBV\SurUbvBundle\Entity;

use Doctrine\ORM\Mapping as ORM;
use Doctrine\Common\Collections\ArrayCollection;

/**
 * UBV\SurUbvBundle\Entity\UnidadAdministrativa
 *
 * @ORM\Entity(repositoryClass="UBV\SurUbvBundle\Entity\UnidadAdministrativaRepository")
 * @ORM\Table(name="unidad_administrativa", indexes={@ORM\Index(name="fk_unidad_administrativa_unidad_administrativa1_idx", columns={"padre_id"}), @ORM\Index(name="fk_unidad_administrativa_aldea1_idx", columns={"aldea_id"})}, uniqueConstraints={@ORM\UniqueConstraint(name="id_unidad_administrativa_UNIQUE", columns={"id"})})
 */
class UnidadAdministrativa
{
    /**
     * @ORM\Id
     * @ORM\Column(type="integer")
     * @ORM\GeneratedValue(strategy="IDENTITY")
     * @ORM\SequenceGenerator(sequenceName="unidad_administrativa_id_seq", allocationSize=1, initialValue=1)
     */
    protected $id;

    /**
     * @ORM\Column(type="string", length=70)
     */
    protected $descripcion;

    /**
     * @ORM\Column(type="integer")
     */
    protected $nivel;

    /**
     * @ORM\OneToMany(targetEntity="CuentaBancaria", mappedBy="unidadAdministrativa")
     * @ORM\JoinColumn(name="id", referencedColumnName="unidad_administrativa_id", nullable=false)
     */
    protected $cuentaBancarias;

    /**
     * @ORM\OneToMany(targetEntity="PersonalAdministrativo", mappedBy="unidadAdministrativa")
     * @ORM\JoinColumn(name="id", referencedColumnName="unidad_administrativa_id", nullable=false)
     */
    protected $personalAdministrativos;

    /**
     * @ORM\OneToMany(targetEntity="UnidadAdministrativa", mappedBy="unidadAdministrativa")
     * @ORM\JoinColumn(name="id", referencedColumnName="padre_id", nullable=false)
     */
    protected $unidadAdministrativas;

    /**
     * @ORM\OneToMany(targetEntity="UnidadAdministrativaTelefono", mappedBy="unidadAdministrativa")
     * @ORM\JoinColumn(name="id", referencedColumnName="unidad_administrativa_id", nullable=false)
     */
    protected $unidadAdministrativaTelefonos;

    /**
     * @ORM\ManyToOne(targetEntity="UnidadAdministrativa", inversedBy="unidadAdministrativas")
     * @ORM\JoinColumn(name="padre_id", referencedColumnName="id")
     */
    protected $unidadAdministrativa;

    /**
     * @ORM\ManyToOne(targetEntity="Aldea", inversedBy="unidadAdministrativas")
     * @ORM\JoinColumn(name="aldea_id", referencedColumnName="id", nullable=false)
     */
    protected $aldea;

    public function __construct()
    {
        $this->cuentaBancarias = new ArrayCollection();
        $this->personalAdministrativos = new ArrayCollection();
        $this->unidadAdministrativas = new ArrayCollection();
        $this->unidadAdministrativaTelefonos = new ArrayCollection();
    }

    public function __sleep()
    {
        return array('id', 'descripcion', 'nivel', 'padre_id', 'aldea_id');
    }

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

    /**
     * Set descripcion
     *
     * @param string $descripcion
     * @return UnidadAdministrativa
     */
    public function setDescripcion($descripcion)
    {
        $this->descripcion = $descripcion;

        return $this;
    }

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

    /**
     * Set nivel
     *
     * @param integer $nivel
     * @return UnidadAdministrativa
     */
    public function setNivel($nivel)
    {
        $this->nivel = $nivel;

        return $this;
    }

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

    /**
     * Add cuentaBancarias
     *
     * @param \UBV\SurUbvBundle\Entity\CuentaBancaria $cuentaBancarias
     * @return UnidadAdministrativa
     */
    public function addCuentaBancaria(\UBV\SurUbvBundle\Entity\CuentaBancaria $cuentaBancarias)
    {
        $this->cuentaBancarias[] = $cuentaBancarias;

        return $this;
    }

    /**
     * Remove cuentaBancarias
     *
     * @param \UBV\SurUbvBundle\Entity\CuentaBancaria $cuentaBancarias
     */
    public function removeCuentaBancaria(\UBV\SurUbvBundle\Entity\CuentaBancaria $cuentaBancarias)
    {
        $this->cuentaBancarias->removeElement($cuentaBancarias);
    }

    /**
     * Get cuentaBancarias
     *
     * @return \Doctrine\Common\Collections\Collection 
     */
    public function getCuentaBancarias()
    {
        return $this->cuentaBancarias;
    }

    /**
     * Add personalAdministrativos
     *
     * @param \UBV\SurUbvBundle\Entity\PersonalAdministrativo $personalAdministrativos
     * @return UnidadAdministrativa
     */
    public function addPersonalAdministrativo(\UBV\SurUbvBundle\Entity\PersonalAdministrativo $personalAdministrativos)
    {
        $this->personalAdministrativos[] = $personalAdministrativos;

        return $this;
    }

    /**
     * Remove personalAdministrativos
     *
     * @param \UBV\SurUbvBundle\Entity\PersonalAdministrativo $personalAdministrativos
     */
    public function removePersonalAdministrativo(\UBV\SurUbvBundle\Entity\PersonalAdministrativo $personalAdministrativos)
    {
        $this->personalAdministrativos->removeElement($personalAdministrativos);
    }

    /**
     * Get personalAdministrativos
     *
     * @return \Doctrine\Common\Collections\Collection 
     */
    public function getPersonalAdministrativos()
    {
        return $this->personalAdministrativos;
    }

    /**
     * Add unidadAdministrativas
     *
     * @param \UBV\SurUbvBundle\Entity\UnidadAdministrativa $unidadAdministrativas
     * @return UnidadAdministrativa
     */
    public function addUnidadAdministrativa(\UBV\SurUbvBundle\Entity\UnidadAdministrativa $unidadAdministrativas)
    {
        $this->unidadAdministrativas[] = $unidadAdministrativas;

        return $this;
    }

    /**
     * Remove unidadAdministrativas
     *
     * @param \UBV\SurUbvBundle\Entity\UnidadAdministrativa $unidadAdministrativas
     */
    public function removeUnidadAdministrativa(\UBV\SurUbvBundle\Entity\UnidadAdministrativa $unidadAdministrativas)
    {
        $this->unidadAdministrativas->removeElement($unidadAdministrativas);
    }

    /**
     * Get unidadAdministrativas
     *
     * @return \Doctrine\Common\Collections\Collection 
     */
    public function getUnidadAdministrativas()
    {
        return $this->unidadAdministrativas;
    }

    /**
     * Add unidadAdministrativaTelefonos
     *
     * @param \UBV\SurUbvBundle\Entity\UnidadAdministrativaTelefono $unidadAdministrativaTelefonos
     * @return UnidadAdministrativa
     */
    public function addUnidadAdministrativaTelefono(\UBV\SurUbvBundle\Entity\UnidadAdministrativaTelefono $unidadAdministrativaTelefonos)
    {
        $this->unidadAdministrativaTelefonos[] = $unidadAdministrativaTelefonos;

        return $this;
    }

    /**
     * Remove unidadAdministrativaTelefonos
     *
     * @param \UBV\SurUbvBundle\Entity\UnidadAdministrativaTelefono $unidadAdministrativaTelefonos
     */
    public function removeUnidadAdministrativaTelefono(\UBV\SurUbvBundle\Entity\UnidadAdministrativaTelefono $unidadAdministrativaTelefonos)
    {
        $this->unidadAdministrativaTelefonos->removeElement($unidadAdministrativaTelefonos);
    }

    /**
     * Get unidadAdministrativaTelefonos
     *
     * @return \Doctrine\Common\Collections\Collection 
     */
    public function getUnidadAdministrativaTelefonos()
    {
        return $this->unidadAdministrativaTelefonos;
    }

    /**
     * Set unidadAdministrativa
     *
     * @param \UBV\SurUbvBundle\Entity\UnidadAdministrativa $unidadAdministrativa
     * @return UnidadAdministrativa
     */
    public function setUnidadAdministrativa(\UBV\SurUbvBundle\Entity\UnidadAdministrativa $unidadAdministrativa = null)
    {
        $this->unidadAdministrativa = $unidadAdministrativa;

        return $this;
    }

    /**
     * Get unidadAdministrativa
     *
     * @return \UBV\SurUbvBundle\Entity\UnidadAdministrativa 
     */
    public function getUnidadAdministrativa()
    {
        return $this->unidadAdministrativa;
    }

    /**
     * Set aldea
     *
     * @param \UBV\SurUbvBundle\Entity\Aldea $aldea
     * @return UnidadAdministrativa
     */
    public function setAldea(\UBV\SurUbvBundle\Entity\Aldea $aldea)
    {
        $this->aldea = $aldea;

        return $this;
    }

    /**
     * Get aldea
     *
     * @return \UBV\SurUbvBundle\Entity\Aldea 
     */
    public function getAldea()
    {
        return $this->aldea;
    }
    
    public function __toString() {
      return $this->descripcion;
    }
}