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

use Skeleton\Router;
use Skeleton\Module;
use Psr\Container\ContainerInterface;
use Helpers\Parametres\Parametres;
use Modules\Ajax\Controller\TreeviewController;
use Skeleton\Renderer\RendererInterface;
use Modules\Additional\Specifique\Client128\Modules\Commande\Controller\LitigeCommandeController;
use Modules\Additional\Specifique\Client128\Modules\EtatStatistique\Controller\EtatStatistiqueController;

class Specifique128Module extends Module
{

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



    // private $router, $container
    public function __construct(ContainerInterface $container)
    {
        $parametres     = new Parametres();
        $id_commande = $parametres->id_commande;
        $global = $parametres->expression_global;
       
        $router = $container->get(Router::class);
        $container->get(RendererInterface::class)->addPath('Specifique128', __DIR__);
        $container->get(RendererInterface::class)->addPath('Specifique128Commande', __DIR__.'/Modules/Commande/view');
        $container->get(RendererInterface::class)->addPath('Specifique128Reporting', __DIR__.'/Modules/EtatStatistique/view');

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

        // Controller Commande
        $router->get($base_url . '/Commande/clotureLitige/{id_commande:'.$id_commande.'+}[/{menuLeft:'.$global.'+}/{menuActif:'.$global.'+}]', LitigeCommandeController::class, 'Specifique128.LitigeCommande.clotureLitige');
        $router->get($base_url . '/Commande/clotureLitige/enregistrement/{id_commande:'.$id_commande.'+}[/{menuLeft:'.$global.'+}/{menuActif:'.$global.'+}]', LitigeCommandeController::class, 'Specifique128.LitigeCommande.enregistrementCloture');

        // Controller Etats Statistiques
            // Liste des lignes de commande + détail
        $router->get($base_url . '/EtatStatistique/listeCdeDetail', EtatStatistiqueController::class, 'Specifique128.EtatStatistique.listeCdeDetail');
        $router->get($base_url . '/EtatStatistique/listeCdeDetail/export', EtatStatistiqueController::class, 'Specifique128.EtatStatistique.exportCdeDetail');
        $router->get($base_url . '/EtatStatistique/listeCde', EtatStatistiqueController::class, 'Specifique128.EtatStatistique.listeCde');
        $router->get($base_url . '/EtatStatistique/listeCde/export', EtatStatistiqueController::class, 'Specifique128.EtatStatistique.exportCde');

        $router->get($base_url . '/EtatStatistique/ajaxListUo', TreeviewController::class, 'Specifique128.EtatStatistique.uoTreeview');
    }
}
