Auth, Login, Home, Venta->Listados->Precios

This commit is contained in:
Juan Pablo Vial
2023-07-24 20:55:26 -04:00
parent d9d5a15376
commit 1a7b10ce3c
130 changed files with 4302 additions and 0 deletions

View File

@ -0,0 +1,42 @@
<?php
namespace Incoviba\Model\Proyecto;
use Incoviba\Common\Ideal;
use Incoviba\Model;
class ProyectoTipoUnidad extends Ideal\Model
{
public Model\Proyecto $proyecto;
public Model\Venta\TipoUnidad $tipoUnidad;
public string $nombre;
public string $abreviacion;
public float $util;
public float $logia;
public float $terraza;
public string $descripcion;
public function superficie(): float
{
return array_reduce([$this->util, $this->logia, $this->terraza], function($sum, $item) {return $sum + $item;}, 0);
}
public function vendible(): float
{
return array_reduce([$this->util, $this->logia, $this->terraza / 2], function($sum, $item) {return $sum + $item;}, 0);
}
public function jsonSerialize(): mixed
{
return array_merge(parent::jsonSerialize(), [
'proyecto' => $this->proyecto,
'tipo_unidad' => $this->tipoUnidad,
'nombre' => $this->nombre,
'abreviacion' => $this->abreviacion,
'util' => $this->util,
'logia' => $this->logia,
'terraza' => $this->terraza,
'superficie' => $this->superficie(),
'vendible' => $this->vendible(),
'descripcion' => $this->descripcion
]);
}
}