Cartola Diaria

This commit is contained in:
Juan Pablo Vial
2024-02-19 22:39:22 -03:00
parent 51cabee824
commit 879b612493
8 changed files with 529 additions and 249 deletions

View File

@ -53,29 +53,29 @@ class Cartolas extends Controller
return $this->withJson($response, $output);
}
public function diaria(ServerRequestInterface $request, ResponseInterface $response,
Repository\Inmobiliaria $inmobiliariaRepository,
Repository\Banco $bancoRepository,
Repository\Inmobiliaria\Cuenta $cuentaRepository,
Service\Cartola $cartolaService): ResponseInterface
{
$body = $request->getParsedBody();
$output = [
'input' => $body,
'cartola' => []
'cartolas' => []
];
try {
$inmobiliaria = $inmobiliariaRepository->fetchById($body['inmobiliaria_rut']);
$banco = $bancoRepository->fetchById($body['banco_id']);
$fecha = new DateTimeImmutable($body['fecha']);
$file = $request->getUploadedFiles()['file'];
$output['cartola'] = $cartolaService->diaria($inmobiliaria, $banco, $fecha, $file);
} catch (EmptyResult $exception) {
$this->logger->debug($exception);
$fields = json_decode($body['fields']);
foreach ($fields as $field) {
try {
$cuenta = $cuentaRepository->fetchById($body["cuenta_id{$field}"]);
$fecha = new DateTimeImmutable($body["fecha{$field}"]);
$file = $request->getUploadedFiles()["file{$field}"];
$output['cartolas'][$field] = $cartolaService->diaria($cuenta, $fecha, $file);
} catch (EmptyResult $exception) {
$this->logger->debug($exception);
}
}
return $this->withJson($response, $output);
}
public function ayer(ServerRequestInterface $request, ResponseInterface $response,
Repository\Inmobiliaria $inmobiliariaRepository,
Repository\Banco $bancoRepository,
Repository\Inmobiliaria\Cuenta $cuentaRepository,
Repository\Cartola $cartolaRepository): ResponseInterface
{
@ -85,14 +85,10 @@ class Cartolas extends Controller
'cartola' => []
];
try {
$inmobiliaria = $inmobiliariaRepository->fetchById($body['inmobiliaria_rut']);
$banco = $bancoRepository->fetchById($body['banco_id']);
$cuenta = $cuentaRepository->fetchByInmobiliariaAndBanco($inmobiliaria->rut, $banco->id);
$cuenta = $cuentaRepository->fetchById($body['cuenta_id']);
$fecha = new DateTimeImmutable($body['fecha']);
$output['cartola'] = $cartolaRepository->fetchByCuentaAndFecha($cuenta->id, $fecha);
} catch (EmptyResult $exception) {
$this->logger->critical($exception);
}
} catch (EmptyResult) {}
return $this->withJson($response, $output);
}
}

View File

@ -26,7 +26,7 @@ class Contabilidad extends Controller
$inmobiliarias = $this->fetchRedis($redisService, $redisKey);
} catch (EmptyRedis) {
try {
$inmobiliarias = $inmobiliariaRepository->fetchAllActive();
$inmobiliarias = $inmobiliariaRepository->fetchAll();
$this->saveRedis($redisService, $redisKey, $inmobiliarias, 30 * 24 * 60 * 60);
} catch (EmptyResult) {}
}