UF service en Venta
This commit is contained in:
@ -31,7 +31,7 @@ class Venta extends Service
|
|||||||
protected Venta\BonoPie $bonoPieService,
|
protected Venta\BonoPie $bonoPieService,
|
||||||
protected Venta\Pago $pagoService,
|
protected Venta\Pago $pagoService,
|
||||||
protected Proyecto\Terreno $terrenoService,
|
protected Proyecto\Terreno $terrenoService,
|
||||||
protected Money $moneyService,
|
protected UF $ufService,
|
||||||
protected Valor $valorService
|
protected Valor $valorService
|
||||||
) {
|
) {
|
||||||
parent::__construct($logger);
|
parent::__construct($logger);
|
||||||
@ -177,6 +177,15 @@ class Venta extends Service
|
|||||||
|
|
||||||
protected function process(Model\Venta $venta): Model\Venta
|
protected function process(Model\Venta $venta): Model\Venta
|
||||||
{
|
{
|
||||||
|
if ($venta->uf === 0.0) {
|
||||||
|
$uf = $this->ufService->get($venta->fecha);
|
||||||
|
if ($uf > 0.0) {
|
||||||
|
try {
|
||||||
|
$venta = $this->ventaRepository->edit($venta, ['uf' => $uf]);
|
||||||
|
} catch (Implement\Exception\EmptyResult) {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
$venta->addFactory('formaPago', (new Implement\Repository\Factory())
|
$venta->addFactory('formaPago', (new Implement\Repository\Factory())
|
||||||
->setCallable([$this->formaPagoService, 'getByVenta'])
|
->setCallable([$this->formaPagoService, 'getByVenta'])
|
||||||
->setArgs(['venta_id' => $venta->id]));
|
->setArgs(['venta_id' => $venta->id]));
|
||||||
@ -186,6 +195,7 @@ class Venta extends Service
|
|||||||
$venta->addFactory('currentEstado', (new Implement\Repository\Factory())
|
$venta->addFactory('currentEstado', (new Implement\Repository\Factory())
|
||||||
->setCallable([$this->estadoVentaRepository, 'fetchCurrentByVenta'])
|
->setCallable([$this->estadoVentaRepository, 'fetchCurrentByVenta'])
|
||||||
->setArgs([$venta->id]));
|
->setArgs([$venta->id]));
|
||||||
|
|
||||||
return $venta;
|
return $venta;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -207,7 +217,7 @@ class Venta extends Service
|
|||||||
public function add(array $data): Model\Venta
|
public function add(array $data): Model\Venta
|
||||||
{
|
{
|
||||||
$fecha = new DateTimeImmutable($data['fecha_venta']);
|
$fecha = new DateTimeImmutable($data['fecha_venta']);
|
||||||
$data['uf'] = $this->moneyService->getUF($fecha);
|
$data['uf'] = $this->ufService->get($fecha);
|
||||||
$propietario = $this->addPropietario($data);
|
$propietario = $this->addPropietario($data);
|
||||||
$propiedad = $this->addPropiedad($data);
|
$propiedad = $this->addPropiedad($data);
|
||||||
$formaPago = $this->addFormaPago($data);
|
$formaPago = $this->addFormaPago($data);
|
||||||
@ -445,7 +455,7 @@ class Venta extends Service
|
|||||||
} catch (DateMalformedStringException) {
|
} catch (DateMalformedStringException) {
|
||||||
$fecha = new DateTimeImmutable();
|
$fecha = new DateTimeImmutable();
|
||||||
}
|
}
|
||||||
$uf = $this->moneyService->getUF($fecha);
|
$uf = $this->ufService->get($fecha);
|
||||||
$valor = $data['valor_pago_ufs'] !== '' ? $this->valorService->clean($data['valor_pago_ufs']) * $uf : $this->valorService->clean($data['valor_pago_pesos']);
|
$valor = $data['valor_pago_ufs'] !== '' ? $this->valorService->clean($data['valor_pago_ufs']) * $uf : $this->valorService->clean($data['valor_pago_pesos']);
|
||||||
$pagoData = [
|
$pagoData = [
|
||||||
'valor' => $valor,
|
'valor' => $valor,
|
||||||
@ -471,7 +481,7 @@ class Venta extends Service
|
|||||||
} catch (DateMalformedStringException) {
|
} catch (DateMalformedStringException) {
|
||||||
$fecha = new DateTimeImmutable();
|
$fecha = new DateTimeImmutable();
|
||||||
}
|
}
|
||||||
$uf = $this->moneyService->getUF($fecha);
|
$uf = $this->ufService->get($fecha);
|
||||||
$subsidioData = [
|
$subsidioData = [
|
||||||
'fecha_venta' => $fecha->format('Y-m-d'),
|
'fecha_venta' => $fecha->format('Y-m-d'),
|
||||||
'ahorro' => $this->valorService->clean($data['valor_ahorro']),
|
'ahorro' => $this->valorService->clean($data['valor_ahorro']),
|
||||||
@ -489,7 +499,7 @@ class Venta extends Service
|
|||||||
} catch (DateMalformedStringException) {
|
} catch (DateMalformedStringException) {
|
||||||
$fecha = new DateTimeImmutable();
|
$fecha = new DateTimeImmutable();
|
||||||
}
|
}
|
||||||
$uf = $this->moneyService->getUF($fecha);
|
$uf = $this->ufService->get($fecha);
|
||||||
$valor = $this->valorService->clean($data['valor_credito']) * $uf;
|
$valor = $this->valorService->clean($data['valor_credito']) * $uf;
|
||||||
if ($venta->formaPago()->credito === null) {
|
if ($venta->formaPago()->credito === null) {
|
||||||
if ($data['valor_credito'] === 0) {
|
if ($data['valor_credito'] === 0) {
|
||||||
|
Reference in New Issue
Block a user