FIX: Venta desistida pero sin resciliacion
This commit is contained in:
@ -54,15 +54,16 @@
|
|||||||
}
|
}
|
||||||
$(document).ready(() => {
|
$(document).ready(() => {
|
||||||
const url = '{{$urls->api}}/ventas/pago/{{$venta->resciliacion()->id}}'
|
const url = '{{$urls->api}}/ventas/pago/{{$venta->resciliacion()->id}}'
|
||||||
let old = new Date({{$venta->resciliacion()?->fecha->format('Y') ?? date('Y')}},
|
let old = new Date(Date.parse('{{$venta->resciliacion()?->fecha->format('Y-m-d') ?? $venta->currentEstado()->fecha->format('Y-m-d') ?? $venta->fecha->format('Y-m-d')}}') + 24 * 60 * 60 * 1000)
|
||||||
{{$venta->resciliacion()?->fecha->format('n') ?? date('n')}}-1, {{$venta->resciliacion()?->fecha->format('j') ?? date('j')}})
|
|
||||||
calendar_date_options['initialDate'] = old
|
calendar_date_options['initialDate'] = old
|
||||||
calendar_date_options['onChange'] = function(date, text, mode) {
|
calendar_date_options['onChange'] = function(date, text, mode) {
|
||||||
if (date.getTime() === old.getTime()) {
|
if (date.getTime() === old.getTime()) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
const body = new FormData()
|
const body = new FormData()
|
||||||
body.set('fecha', date.toISOString())
|
const fecha = date
|
||||||
|
fecha.setDate(date.getDate() - 1)
|
||||||
|
body.set('fecha', fecha.toISOString())
|
||||||
$('#loading-spinner-fecha').show()
|
$('#loading-spinner-fecha').show()
|
||||||
APIClient.fetch(url, {method: 'post', body}).then(response => {
|
APIClient.fetch(url, {method: 'post', body}).then(response => {
|
||||||
$('#loading-spinner-fecha').hide()
|
$('#loading-spinner-fecha').hide()
|
||||||
|
@ -4,6 +4,9 @@ namespace Incoviba\Controller;
|
|||||||
use Incoviba\Common\Alias\View;
|
use Incoviba\Common\Alias\View;
|
||||||
use Incoviba\Common\Implement\Exception\EmptyRedis;
|
use Incoviba\Common\Implement\Exception\EmptyRedis;
|
||||||
use Incoviba\Common\Implement\Exception\EmptyResult;
|
use Incoviba\Common\Implement\Exception\EmptyResult;
|
||||||
|
use Incoviba\Exception\ServiceAction\Create;
|
||||||
|
use Incoviba\Exception\ServiceAction\Read;
|
||||||
|
use Incoviba\Exception\ServiceAction\Update;
|
||||||
use Incoviba\Model;
|
use Incoviba\Model;
|
||||||
use Incoviba\Repository;
|
use Incoviba\Repository;
|
||||||
use Incoviba\Service;
|
use Incoviba\Service;
|
||||||
@ -142,9 +145,24 @@ class Ventas
|
|||||||
return $view->render($response, 'ventas.desistir', compact('venta'));
|
return $view->render($response, 'ventas.desistir', compact('venta'));
|
||||||
}
|
}
|
||||||
public function desistida(ServerRequestInterface $request, ResponseInterface $response, Service\Venta $ventaService,
|
public function desistida(ServerRequestInterface $request, ResponseInterface $response, Service\Venta $ventaService,
|
||||||
|
Service\Venta\Pago $pagoService,
|
||||||
View $view, int $venta_id): ResponseInterface
|
View $view, int $venta_id): ResponseInterface
|
||||||
{
|
{
|
||||||
$venta = $ventaService->getById($venta_id);
|
try {
|
||||||
|
$venta = $ventaService->getById($venta_id);
|
||||||
|
} catch (Read) {
|
||||||
|
return $view->render($response->withStatus(404), 'not_found');
|
||||||
|
}
|
||||||
|
if ($venta->resciliacion() === null) {
|
||||||
|
$pagoData = [
|
||||||
|
'fecha' => $venta->currentEstado()->fecha->format('Y-m-d'),
|
||||||
|
'valor' => 0
|
||||||
|
];
|
||||||
|
try {
|
||||||
|
$pago = $pagoService->add($pagoData);
|
||||||
|
$ventaService->edit($venta, ['resciliacion' => $pago->id]);
|
||||||
|
} catch (Create | Update) {}
|
||||||
|
}
|
||||||
return $view->render($response, 'ventas.desistida', compact('venta'));
|
return $view->render($response, 'ventas.desistida', compact('venta'));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user