Files
oficial/app/setup/setups/services.php

84 lines
4.4 KiB
PHP
Raw Normal View History

<?php
2024-01-17 10:33:11 -03:00
use Psr\Container\ContainerInterface;
return [
Incoviba\Service\Login::class => function(ContainerInterface $container) {
return new Incoviba\Service\Login(
$container->get(Incoviba\Repository\Login::class),
$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-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-17 22:33:33 -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
}
];