Valor de PU cuando unidad no tiene valor
This commit is contained in:
@ -4,14 +4,15 @@ namespace Incoviba\Service\Venta;
|
||||
use PDOException;
|
||||
use Incoviba\Common\Implement\Exception\EmptyResult;
|
||||
use Incoviba\Exception\ServiceAction\{Create, Read, Update};
|
||||
use Incoviba\Repository;
|
||||
use Incoviba\Model;
|
||||
use Incoviba\Repository;
|
||||
use Incoviba\Service;
|
||||
|
||||
class PropiedadUnidad
|
||||
{
|
||||
public function __construct(protected Repository\Venta\PropiedadUnidad $propiedadUnidadRepository,
|
||||
protected Repository\Venta\Unidad $unidadRepository,
|
||||
protected Precio $precioService) {}
|
||||
protected Precio $precioService, protected Service\Valor $valorService) {}
|
||||
|
||||
/**
|
||||
* @param int $unidad_id
|
||||
@ -93,7 +94,11 @@ class PropiedadUnidad
|
||||
public function edit(Model\Venta\PropiedadUnidad $propiedadUnidad, array $data): Model\Venta\PropiedadUnidad
|
||||
{
|
||||
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) {
|
||||
throw new Update(__CLASS__, $exception);
|
||||
}
|
||||
@ -104,7 +109,9 @@ class PropiedadUnidad
|
||||
try {
|
||||
$unidad->precios = $this->precioService->getByUnidad($unidad->id);
|
||||
$unidad->currentPrecio = $this->precioService->getVigenteByUnidad($unidad->id);
|
||||
$unidad->valor = $unidad->currentPrecio->valor;
|
||||
if ($unidad->valor === null) {
|
||||
$unidad->valor = $unidad->currentPrecio->valor;
|
||||
}
|
||||
} catch (Read) {}
|
||||
return $unidad;
|
||||
}
|
||||
|
Reference in New Issue
Block a user