2023-07-24 20:55:26 -04:00
|
|
|
<?php
|
2024-01-17 10:33:11 -03:00
|
|
|
|
2023-07-24 20:55:26 -04:00
|
|
|
use Psr\Container\ContainerInterface;
|
|
|
|
|
|
|
|
return [
|
|
|
|
Incoviba\Service\Login::class => function(ContainerInterface $container) {
|
|
|
|
return new Incoviba\Service\Login(
|
|
|
|
$container->get(Incoviba\Repository\Login::class),
|
2024-07-26 23:15:48 -04:00
|
|
|
$container->get(Incoviba\Repository\User::class),
|
2023-07-24 20:55:26 -04:00
|
|
|
$container->get('COOKIE_NAME'),
|
|
|
|
$container->get('MAX_LOGIN_HOURS'),
|
|
|
|
$container->has('COOKIE_DOMAIN') ? $container->get('COOKIE_DOMAIN') : '',
|
2024-03-20 23:07:49 -03:00
|
|
|
$container->has('COOKIE_PATH') ? $container->get('COOKIE_PATH') : '',
|
|
|
|
$container->has('COOKIE_SEPARATOR') ? $container->get('COOKIE_SEPARATOR') : 'g'
|
2023-07-24 20:55:26 -04:00
|
|
|
);
|
2023-09-13 18:51:46 -03:00
|
|
|
},
|
|
|
|
Incoviba\Service\Money::class => function(ContainerInterface $container) {
|
|
|
|
$mindicador = new Incoviba\Service\Money\MiIndicador(new GuzzleHttp\Client([
|
|
|
|
'base_uri' => 'https://mindicador.cl/api/',
|
|
|
|
'headers' => ['Accept' => 'application/json']
|
|
|
|
]));
|
2023-11-29 20:09:08 -03:00
|
|
|
$ine = new Incoviba\Service\Money\Ine(new GuzzleHttp\Client([
|
|
|
|
'base_uri' => 'https://api-calculadora.ine.cl/ServiciosCalculadoraVariacion'
|
|
|
|
]));
|
2024-02-13 01:16:17 -03:00
|
|
|
return (new Incoviba\Service\Money($container->get(Psr\Log\LoggerInterface::class)))
|
|
|
|
->register('uf', $mindicador)
|
|
|
|
->register('usd', $mindicador)
|
2023-11-29 20:09:08 -03:00
|
|
|
->register('ipc', $ine);
|
2023-09-13 18:51:46 -03:00
|
|
|
},
|
2024-04-02 13:50:08 -03:00
|
|
|
Predis\ClientInterface::class => function(ContainerInterface $container) {
|
2023-10-19 20:46:52 -03:00
|
|
|
return new Predis\Client([
|
|
|
|
'scheme' => 'tcp',
|
|
|
|
'host' => $container->get('REDIS_HOST'),
|
|
|
|
'port' => $container->get('REDIS_PORT')
|
|
|
|
]);
|
2024-01-17 10:33:11 -03:00
|
|
|
},
|
2024-04-02 13:50:08 -03:00
|
|
|
Incoviba\Service\Contabilidad\Cartola::class => function(ContainerInterface $container) {
|
|
|
|
return (new Incoviba\Service\Contabilidad\Cartola(
|
2024-02-12 09:52:48 -03:00
|
|
|
$container->get(Psr\Log\LoggerInterface::class),
|
2024-01-17 10:33:11 -03:00
|
|
|
$container->get(Psr\Http\Message\StreamFactoryInterface::class),
|
2024-02-08 00:06:29 -03:00
|
|
|
$container->get(Incoviba\Common\Define\Contabilidad\Exporter::class),
|
2024-02-13 01:16:17 -03:00
|
|
|
$container->get(Incoviba\Repository\Inmobiliaria::class),
|
2024-02-07 23:48:31 -03:00
|
|
|
$container->get(Incoviba\Repository\Inmobiliaria\Cuenta::class),
|
2024-04-02 13:50:08 -03:00
|
|
|
$container->get(Incoviba\Repository\Contabilidad\Movimiento::class),
|
|
|
|
$container->get(Incoviba\Service\Contabilidad\Movimiento::class),
|
|
|
|
$container->get(Incoviba\Repository\Contabilidad\Cartola::class)
|
2024-02-07 23:48:31 -03:00
|
|
|
))
|
2024-04-02 13:50:08 -03:00
|
|
|
->register('security', $container->get(Incoviba\Service\Contabilidad\Cartola\Security::class))
|
|
|
|
->register('itau', $container->get(Incoviba\Service\Contabilidad\Cartola\Itau::class))
|
|
|
|
->register('santander', $container->get(Incoviba\Service\Contabilidad\Cartola\Santander::class))
|
|
|
|
->register('bci', $container->get(Incoviba\Service\Contabilidad\Cartola\BCI::class));
|
2024-01-17 10:33:11 -03:00
|
|
|
},
|
|
|
|
Incoviba\Common\Define\Contabilidad\Exporter::class => function(ContainerInterface $container) {
|
|
|
|
return $container->get(Incoviba\Service\Contabilidad\Exporter\Nubox::class);
|
|
|
|
},
|
|
|
|
Incoviba\Service\Contabilidad\Exporter\Nubox::class => function(ContainerInterface $container) {
|
2024-04-02 13:50:08 -03:00
|
|
|
return new Incoviba\Service\Contabilidad\Exporter\Nubox($container->get(Incoviba\Repository\Contabilidad\CentroCosto::class),
|
2024-01-17 10:33:11 -03:00
|
|
|
$container->get('folders')->get('uploads'));
|
|
|
|
},
|
|
|
|
Incoviba\Service\Contabilidad\Nubox::class => function(ContainerInterface $container) {
|
|
|
|
return new Incoviba\Service\Contabilidad\Nubox(
|
2024-02-08 00:06:29 -03:00
|
|
|
$container->get(Psr\Log\LoggerInterface::class),
|
2024-04-02 13:50:08 -03:00
|
|
|
$container->get(Incoviba\Repository\Contabilidad\Nubox::class),
|
2024-01-17 10:33:11 -03:00
|
|
|
$container->get(Incoviba\Service\Redis::class),
|
|
|
|
new GuzzleHttp\Client(),
|
|
|
|
$container->get(Psr\Http\Message\RequestFactoryInterface::class),
|
|
|
|
$container->get('nubox')->get('url'));
|
2024-02-23 22:37:09 -03:00
|
|
|
},
|
|
|
|
Incoviba\Service\Informe::class => function(ContainerInterface $container) {
|
|
|
|
return (new Incoviba\Service\Informe(
|
|
|
|
$container->get(Psr\Log\LoggerInterface::class),
|
|
|
|
$container->get('folders')->get('informes'))
|
|
|
|
)
|
|
|
|
->register('xlsx', Incoviba\Service\Informe\Excel::class);
|
|
|
|
},
|
2024-07-26 23:15:48 -04:00
|
|
|
Incoviba\Service\Contabilidad\Informe\Tesoreria\Output\Excel::class => function(ContainerInterface $container) {
|
|
|
|
return new Incoviba\Service\Contabilidad\Informe\Tesoreria\Output\Excel(
|
2024-02-23 22:37:09 -03:00
|
|
|
$container->get(Psr\Log\LoggerInterface::class),
|
|
|
|
$container->get('folders')->get('informes'),
|
|
|
|
$container->get(Incoviba\Service\UF::class),
|
|
|
|
$container->get(Incoviba\Service\USD::class)
|
|
|
|
);
|
2023-10-19 20:46:52 -03:00
|
|
|
}
|
2023-07-24 20:55:26 -04:00
|
|
|
];
|