feature/cierres #30

Merged
aldarien merged 460 commits from feature/cierres into develop 2025-09-11 15:16:17 -03:00
329 changed files with 826 additions and 13293 deletions
Showing only changes of commit e6892ee085 - Show all commits

View File

@ -4,14 +4,15 @@ namespace Incoviba\Service\Venta;
use PDOException; use PDOException;
use Incoviba\Common\Implement\Exception\EmptyResult; use Incoviba\Common\Implement\Exception\EmptyResult;
use Incoviba\Exception\ServiceAction\{Create, Read, Update}; use Incoviba\Exception\ServiceAction\{Create, Read, Update};
use Incoviba\Repository;
use Incoviba\Model; use Incoviba\Model;
use Incoviba\Repository;
use Incoviba\Service;
class PropiedadUnidad class PropiedadUnidad
{ {
public function __construct(protected Repository\Venta\PropiedadUnidad $propiedadUnidadRepository, public function __construct(protected Repository\Venta\PropiedadUnidad $propiedadUnidadRepository,
protected Repository\Venta\Unidad $unidadRepository, protected Repository\Venta\Unidad $unidadRepository,
protected Precio $precioService) {} protected Precio $precioService, protected Service\Valor $valorService) {}
/** /**
* @param int $unidad_id * @param int $unidad_id
@ -93,7 +94,11 @@ class PropiedadUnidad
public function edit(Model\Venta\PropiedadUnidad $propiedadUnidad, array $data): Model\Venta\PropiedadUnidad public function edit(Model\Venta\PropiedadUnidad $propiedadUnidad, array $data): Model\Venta\PropiedadUnidad
{ {
try { try {
return $this->process($this->propiedadUnidadRepository->edit($propiedadUnidad, $data)); $filteredData = $this->propiedadUnidadRepository->filterData($data);
if (array_key_exists('valor', $filteredData)) {
$filteredData['valor'] = $this->valorService->clean($filteredData['valor']);
}
return $this->process($this->propiedadUnidadRepository->edit($propiedadUnidad, $filteredData));
} catch (PDOException $exception) { } catch (PDOException $exception) {
throw new Update(__CLASS__, $exception); throw new Update(__CLASS__, $exception);
} }
@ -104,7 +109,9 @@ class PropiedadUnidad
try { try {
$unidad->precios = $this->precioService->getByUnidad($unidad->id); $unidad->precios = $this->precioService->getByUnidad($unidad->id);
$unidad->currentPrecio = $this->precioService->getVigenteByUnidad($unidad->id); $unidad->currentPrecio = $this->precioService->getVigenteByUnidad($unidad->id);
if ($unidad->valor === null) {
$unidad->valor = $unidad->currentPrecio->valor; $unidad->valor = $unidad->currentPrecio->valor;
}
} catch (Read) {} } catch (Read) {}
return $unidad; return $unidad;
} }