<?php
namespace Incoviba\nuevo\Proyecto;

use Incoviba\Common\Alias\NewModel;
use Incoviba\nuevo\Common\M2;
use Incoviba\nuevo\Venta\Unidad;

/**
 * 
 * @author Aldarien
 * @property int id
 * @property Proyecto proyecto_id
 * @property TipoUnidad tipo_id
 * @property string nombre
 * @property string tipologia
 * @property M2 m2_id
 * @property string descripcion
 *
 */
class UnidadProyecto extends NewModel
{
	protected static $_table = 'unidad_proyectos';
	
	public function proyecto()
	{
		return $this->belongsTo(Proyecto::class, 'proyecto_id')->findOne();
	}
    public function m2()
    {
    	return $this->belongsTo(M2::class, 'm2_id')->findOne();
    }
    public function tipo()
    {
    	return $this->belongsTo(TipoUnidad::class, 'tipo_id')->findOne();
    }
    public function unidades()
    {
    	return $this->hasMany(Unidad::class, 'unidad_proyecto_id')->findMany();
    }
    public function orientaciones()
    {
    	$orientaciones = [];
    	foreach ($this->unidades as $unidad) {
    		if (array_search($unidad->orientacion, $orientaciones) === false) {
    			$orientaciones []= $unidad->orientacion;
    		}
    	}
    	return $orientaciones;
    }
}
