src/AppBundle/Entity/UnidadMedida.php line 14

  1. <?php
  2. namespace AppBundle\Entity;
  3. use Doctrine\ORM\Mapping as ORM;
  4. /**
  5.  * UnidadMedidad.
  6.  *
  7.  * @ORM\Table(name="unidad_medida")
  8.  * @ORM\Entity(repositoryClass="AppBundle\Repository\UnidadMedidaRepository")
  9.  * @ORM\HasLifecycleCallbacks()
  10.  */
  11. class UnidadMedida
  12. {
  13.     const UM_USADAS = [
  14.         'ST' => ['nombre' => 'Unidad','abreviatura' => 'Uni'],
  15.         'M' => ['nombre' => 'Metro','abreviatura' => 'Mtr'], 
  16.         'KG' => ['nombre' => 'Kilogramo','abreviatura' => 'KG']
  17.     ];    
  18.     /**
  19.      * @var int
  20.      *
  21.      * @ORM\Column(name="id", type="string", length=3)
  22.      * @ORM\Id
  23.      */
  24.     private $id;
  25.     /**
  26.      * @var string
  27.      *
  28.      * @ORM\Column(name="nombre_es", type="string", length=255)
  29.      */
  30.     private $nombreEs;
  31.     /**
  32.      * @var string
  33.      *
  34.      * @ORM\Column(name="nombre_en", type="string", length=255)
  35.      */
  36.     private $nombreEn;
  37.     /**
  38.      * @var string
  39.      *
  40.      * @ORM\Column(name="abreviatura_en", type="string", length=255)
  41.      */
  42.     private $abreviaturaEn;
  43.     /**
  44.      * @var string
  45.      *
  46.      * @ORM\Column(name="abreviatura_es", type="string", length=255)
  47.      */
  48.     private $abreviaturaEs;
  49.     public function __construct()
  50.     {
  51.     }
  52.     /**
  53.      * Set id.
  54.      *
  55.      * @param int $id
  56.      *
  57.      * @return UnidadMedida
  58.      */
  59.     public function setId($id)
  60.     {
  61.         $this->id $id;
  62.         return $this;
  63.     }
  64.     /**
  65.      * Get id.
  66.      *
  67.      * @return int
  68.      */
  69.     public function getId()
  70.     {
  71.         return $this->id;
  72.     }
  73.     /**
  74.      * Set nombreEs.
  75.      *
  76.      * @param string $nombreEs
  77.      *
  78.      * @return UnidadMedida
  79.      */
  80.     public function setNombreEs($nombreEs)
  81.     {
  82.         $this->nombreEs $nombreEs;
  83.         return $this;
  84.     }
  85.     /**
  86.      * Get nombreEs.
  87.      *
  88.      * @return string
  89.      */
  90.     public function getNombreEs()
  91.     {
  92.         return $this->nombreEs;
  93.     }
  94.     /**
  95.      * Set nombreEn.
  96.      *
  97.      * @param string $nombreEn
  98.      *
  99.      * @return UnidadMedida
  100.      */
  101.     public function setNombreEn($nombreEn)
  102.     {
  103.         $this->nombreEn $nombreEn;
  104.         return $this;
  105.     }
  106.     /**
  107.      * Get nombreEn.
  108.      *
  109.      * @return string
  110.      */
  111.     public function getNombreEn()
  112.     {
  113.         return $this->nombreEn;
  114.     }
  115.     /**
  116.      * Set abreviaturaEn.
  117.      *
  118.      * @param string $abreviaturaEn
  119.      *
  120.      * @return UnidadMedida
  121.      */
  122.     public function setAbreviaturaEn($abreviaturaEn)
  123.     {
  124.         $this->abreviaturaEn $abreviaturaEn;
  125.         return $this;
  126.     }
  127.     /**
  128.      * Get abreviaturaEn.
  129.      *
  130.      * @return string
  131.      */
  132.     public function getAbreviaturaEn()
  133.     {
  134.         return $this->abreviaturaEn;
  135.     }
  136.     /**
  137.      * Set abreviaturaEs.
  138.      *
  139.      * @param string $abreviaturaEs
  140.      *
  141.      * @return UnidadMedida
  142.      */
  143.     public function setAbreviaturaEs($abreviaturaEs)
  144.     {
  145.         $this->abreviaturaEs $abreviaturaEs;
  146.         return $this;
  147.     }
  148.     /**
  149.      * Get abreviaturaEs.
  150.      *
  151.      * @return string
  152.      */
  153.     public function getAbreviaturaEs()
  154.     {
  155.         return $this->abreviaturaEs;
  156.     }
  157.     public function inicializadorConConstantes($id){
  158.         if(!empty(self::UM_USADAS[$id]) && null!==self::UM_USADAS[$id]){
  159.             $this->id $id;
  160.             $this->nombreEs self::UM_USADAS[$id]['nombre'];
  161.             $this->abreviaturaEs self::UM_USADAS[$id]['abreviatura'];
  162.         }
  163.         return $this;
  164.     }
  165.     /**
  166.      * * Devuelve la Entidad en formato array.
  167.      * @return array
  168.      */
  169.     public function __toArray(): array
  170.     {
  171.         return [
  172.             'id' => $this->getId(),
  173.             'name' => $this->getNombreEs(),
  174.             'abbr' => $this->getAbreviaturaEs(),
  175.         ];
  176.     }
  177. }