Files
oficial/app/src/Model/Inmobiliaria/Proveedor.php

42 lines
998 B
PHP
Raw Normal View History

2024-06-18 22:41:03 -04:00
<?php
namespace Incoviba\Model\Inmobiliaria;
use Incoviba\Common\Ideal;
2024-12-03 16:45:20 -03:00
use Incoviba\Common\Implement\Exception\EmptyResult;
2024-06-18 22:41:03 -04:00
use Incoviba\Model;
2024-12-03 16:45:20 -03:00
use Incoviba\Model\Inmobiliaria\Proveedor\Datos;
2024-06-18 22:41:03 -04:00
class Proveedor extends Ideal\Model
{
2024-11-28 11:39:19 -03:00
public int $rut;
public string $digito;
public string $nombre;
public ?string $razon;
public ?Model\Persona $contacto;
2024-06-18 22:41:03 -04:00
2024-12-03 16:45:20 -03:00
public ?Datos $datos;
public function datos(): ?Datos
{
if (!isset($this->datos)) {
$this->datos = $this->runFactory('datos');
}
return $this->datos;
}
2024-06-18 22:41:03 -04:00
public function jsonSerialize(): mixed
{
2024-12-03 16:45:20 -03:00
$json = [
2024-11-28 11:39:19 -03:00
'rut' => $this->rut,
'digito' => $this->digito,
'nombre' => $this->nombre,
'razon' => $this->razon,
2024-12-03 16:45:20 -03:00
'datos' => null,
2024-11-28 11:39:19 -03:00
'contacto' => $this->contacto
];
2024-12-03 16:45:20 -03:00
try {
$json['datos'] = $this->datos();
} catch (EmptyResult) {}
return $json;
2024-06-18 22:41:03 -04:00
}
}