<?php
namespace Modules\Additional\Specifique\Client92;

use Modules\Additional\Specifique\Client92\Modules\Controller\ConsultationBudgetController;
use Modules\Additional\Specifique\Client92\Modules\Controller\ImportBudgetController;
use Skeleton\Router;
use Skeleton\Module;
use Helpers\Parametres\Parametres;
use Modules\Additional\Specifique\Client92\Modules\API\Controller\ConsultationBudgetController as ControllerConsultationBudgetController;
use Psr\Container\ContainerInterface;
use Skeleton\Renderer\RendererInterface;

class Specifique92Module extends Module
{

    const DEFINITIONS = __DIR__ . '/config.php';

    // private $router, $container
    public function __construct(ContainerInterface $container)
    {
        $router = $container->get(Router::class);
        $container->get(RendererInterface::class)->addPath('Specifique92', __DIR__);

        $parametres = new Parametres();
        $global     = $parametres->expression_global;

        $base_url = $container->get('baseUrl') . $container->get('Specifique92.prefix');

        $router->get($base_url . '/importBudget', ImportBudgetController::class, 'Specifique92.ImportBudget.import');
        $router->get($base_url . '/ajax/importBudget', ImportBudgetController::class, 'Specifique92.ImportBudget.ajaxImport');
        $router->get($base_url . '/ajax/recapAnomalie', ImportBudgetController::class, 'Specifique92.ImportBudget.recapAnomalie');
     
        $router->get($base_url . '/consultationBudget', ConsultationBudgetController::class, 'Specifique92.ConsultationBudget.listeBudget');
        $router->get($base_url . '/ajax/detailBudget'. '/{codeSte:'.$global.'+}/{periode:'.$global.'+}/{centreCout:'.$global.'+}/{ordreInterne:'.$global.'+}/{domaneActiv:'.$global.'+}/{pays:'.$global.'+}/{gamme:'.$global.'+}', ConsultationBudgetController::class, 'Specifique92.ConsultationBudget.ajaxDetailBudget');
        $router->get($base_url . '/ajax/updateBudget', ConsultationBudgetController::class, 'Specifique92.ConsultationBudget.ajaxUpdateBudget');
        $router->get($base_url . '/deleteBudget'. '/{codeSte:'.$global.'+}/{periode:'.$global.'+}/{centreCout:'.$global.'+}/{ordreInterne:'.$global.'+}/{domaneActiv:'.$global.'+}/{pays:'.$global.'+}/{gamme:'.$global.'+}', ConsultationBudgetController::class, 'Specifique92.ConsultationBudget.deleteBudget');
    
        $router->get($base_url . '/addLigneBudget', ConsultationBudgetController::class, 'Specifique92.ConsultationBudget.addLigneBudget');
        $router->get($base_url . '/ajax/ligneBudget', ConsultationBudgetController::class, 'Specifique92.ConsultationBudget.ajaxLigneBudget');
        $router->get($base_url . '/ajax/updateSociete', ConsultationBudgetController::class, 'Specifique92.ConsultationBudget.ajaxUpdateSociete');
        $router->get($base_url . '/export/consoBudget', ConsultationBudgetController::class, 'Specifique92.ConsultationBudget.exportConsoBudget');
        $router->get($base_url . '/batch/export', ControllerConsultationBudgetController::class, 'Specifique92.ConsultationBudget.batchExportConso');
    }
}
