Propiedad con unidad_principal

This commit is contained in:
Juan Pablo Vial
2024-06-07 17:16:58 -04:00
parent fa978728ce
commit b27a6fab33
2 changed files with 9 additions and 1 deletions

View File

@ -18,6 +18,13 @@ class Propiedad extends Ideal\Repository
public function create(?array $data = null): Model\Venta\Propiedad
{
$map = (new Implement\Repository\MapperParser())
->register('unidad_principal', (new Implement\Repository\Mapper())
->setProperty('unidades')
->setDefault([])
->setFunction(function($data) {
return [$this->unidadService->getById($data['unidad_principal'])];
})
)
->register('estado', new Implement\Repository\Mapper\Boolean('estado'));
return $this->parseData(new Model\Venta\Propiedad(), $data, $map);
}
@ -34,7 +41,7 @@ class Propiedad extends Ideal\Repository
{
$model->id = $this->saveNew(
['unidad_principal', 'estacionamientos', 'bodegas', 'estado'],
[null,
[$model->principal()?->id,
implode(',', array_map(function(Model\Venta\Unidad $unidad) {return $unidad->id;}, $model->estacionamientos())),
implode(',', array_map(function(Model\Venta\Unidad $unidad) {return $unidad->id;}, $model->bodegas())),
1]

View File

@ -36,6 +36,7 @@ class Propiedad extends Service
});
try {
$propiedad = $this->propiedadRepository->fetchVigenteByUnidad($unidades[0]->id);
$propiedad = $this->propiedadRepository->edit($propiedad, ['unidad_principal' => $unidades[0]->id]);
} catch (EmptyResult) {
$propiedad = $this->propiedadRepository->create([
'unidad_principal' => $unidades[0]->id,