Commit ba751969 authored by ZOUNON Ahouefa's avatar ZOUNON Ahouefa
Browse files

évènement => événement; recursion correction

parent 4e7a29b9
Loading
Loading
Loading
Loading
Loading

doc/Tables.sql

0 → 100644
+81 −0
Changes for doc/Tables.sql: 81 added lines, 0 removed lines.
Original line number Diff line number Diff line
create table unicaen_evenement_etat
(
    id          serial
        constraint pk_evenement_etat
            primary key,
    code        varchar(255) not null
        constraint un_evenement_etat_code
            unique
                deferrable initially deferred,
    libelle     varchar(255) not null,
    description varchar(2047)
);

create table unicaen_evenement_type
(
    id          serial
        constraint pk_evenement_type
            primary key,
    code        varchar(255) not null
        constraint un_evenement_type_code
            unique
                deferrable initially deferred,
    libelle     varchar(255) not null,
    description varchar(2047),
    parametres  varchar(2047),
    recursion   varchar(64)
);


create table unicaen_evenement_instance
(
    id                 serial
        constraint pk_evenement_instance
            primary key,
    nom                varchar(255)  not null,
    description        varchar(1024) not null,
    type_id            integer       not null
        constraint fk_evenement_instance_type
            references unicaen_evenement_type
            deferrable,
    etat_id            integer       not null
        constraint fk_evenement_instance_etat
            references unicaen_evenement_etat
            deferrable,
    parametres         text,
    date_creation      timestamp     not null,
    date_planification timestamp     not null,
    date_traitement    timestamp,
    log                text,
    parent_id          integer
        constraint fk_evenement_instance_parent
            references unicaen_evenement_instance
            deferrable,
    date_fin           timestamp
);

create index ix_evenement_instance_type
    on unicaen_evenement_instance (type_id);

create index ix_evenement_instance_etat
    on unicaen_evenement_instance (etat_id);

create index ix_evenement_instance_parent
    on unicaen_evenement_instance (parent_id);

create table unicaen_evenement_journal
(
    id             serial
        constraint unicaen_evenement_journal_pk
            primary key,
    date_execution timestamp not null,
    log            text,
    etat_id        integer
        constraint unicaen_evenement_journal_unicaen_evenement_etat_id_fk
            references unicaen_evenement_etat
            on delete set null
);


create unique index unicaen_evenement_journal_id_uindex
    on unicaen_evenement_journal (id);
 No newline at end of file

doc/inserts.sql

0 → 100644
+46 −0
Changes for doc/inserts.sql: 46 added lines, 0 removed lines.
Original line number Diff line number Diff line
INSERT INTO unicaen_evenement_etat (id, code, libelle) VALUES (1, 'en_attente', 'En attente');
INSERT INTO unicaen_evenement_etat (id, code, libelle) VALUES (2, 'en_cours', 'En cours');
INSERT INTO unicaen_evenement_etat (id, code, libelle) VALUES (3, 'echec', 'Échec');
INSERT INTO unicaen_evenement_etat (id, code, libelle) VALUES (4, 'succes', 'Succès');

-- EVENEMENT --------------------------------------------------------------------------------------------------

INSERT INTO unicaen_privilege_categorie (code, libelle, ordre, namespace)
VALUES ('evenementetat', 'Gestion des événements - État', 99991, 'UnicaenEvenement\Provider\Privilege');
INSERT INTO unicaen_privilege_privilege(CATEGORIE_ID, CODE, LIBELLE, ORDRE)
WITH d(code, lib, ordre) AS (
    SELECT 'etat_consultation', 'état - consultation', 10 UNION
    SELECT 'etat_ajout', 'état - ajout', 20 UNION
    SELECT 'etat_edition', 'état - édition', 30 UNION
    SELECT 'etat_suppression', 'état - suppression', 40
)
SELECT cp.id, d.code, d.lib, d.ordre
FROM d
         JOIN unicaen_privilege_categorie cp ON cp.CODE = 'evenementetat';

INSERT INTO unicaen_privilege_categorie (code, libelle, ordre, namespace)
VALUES ('evenementinstance', 'Gestion des événements - Instance', 99993, 'UnicaenEvenement\Provider\Privilege');
INSERT INTO unicaen_privilege_privilege(CATEGORIE_ID, CODE, LIBELLE, ORDRE)
WITH d(code, lib, ordre) AS (
    SELECT 'instance_consultation', 'instance - consultation', 10 UNION
    SELECT 'instance_ajout', 'instance - ajout', 20 UNION
    SELECT 'instance_edition', 'instance - édition', 30 UNION
    SELECT 'instance_suppression', 'instance - suppression', 40 UNION
    SELECT 'instance_traitement', 'instance - traitement', 100
)
SELECT cp.id, d.code, d.lib, d.ordre
FROM d
         JOIN unicaen_privilege_categorie cp ON cp.CODE = 'evenementinstance';

INSERT INTO unicaen_privilege_categorie (code, libelle, ordre, namespace)
VALUES ('evenementtype', 'Gestion des événements - Type', 99992, 'UnicaenEvenement\Provider\Privilege');
INSERT INTO unicaen_privilege_privilege(CATEGORIE_ID, CODE, LIBELLE, ORDRE)
WITH d(code, lib, ordre) AS (
    SELECT 'type_consultation', 'type - consultation', 10 UNION
    SELECT 'type_ajout', 'type - ajout', 20 UNION
    SELECT 'type_edition', 'type - édition', 30 UNION
    SELECT 'type_suppression', 'type - suppression', 40
)
SELECT cp.id, d.code, d.lib, d.ordre
FROM d
         JOIN unicaen_privilege_categorie cp ON cp.CODE = 'evenementtype';
 No newline at end of file
+1 −1
Changes for readme.md: 1 added line, 1 removed line.
Original line number Diff line number Diff line
@@ -6,6 +6,6 @@ $ docker exec preecog php public/index.php traiter-evenements

Déclaration dans la crontab
```sh 
# - Traitement des évènements en attente
# - Traitement des événements en attente
*/1 *   * * *   root cd /var/www/html && php public/index.php traiter-evenements 1> /dev/null 2>&1
```
 No newline at end of file
+6 −6
Changes for src/UnicaenEvenement/Controller/EvenementConsoleController.php: 6 added lines, 6 removed lines.
Original line number Diff line number Diff line
@@ -23,7 +23,7 @@ class EvenementConsoleController extends AbstractConsoleController

    /**
     * Temps d'exécution maximal (sec) du script de traitement des événements
     * !! celui-ci doit être en adéquation avec le cycle d'exécution du script de traitement des évènements en attente dans la crontab du serveur
     * !! celui-ci doit être en adéquation avec le cycle d'exécution du script de traitement des événements en attente dans la crontab du serveur
     * @file /etc/crontab
     */
    const MAX_EXECUTION_TIME = 60;
@@ -46,7 +46,7 @@ class EvenementConsoleController extends AbstractConsoleController
        $this->getJournalService()->create($journal);

        $start = new DateTime();
        $this->getConsole()->writeLine("\n* " . ($titre = "Traitement des évènements en attente") . " *\n", ColorInterface::LIGHT_GREEN);
        $this->getConsole()->writeLine("\n* " . ($titre = "Traitement des événements en attente") . " *\n", ColorInterface::LIGHT_GREEN);
        $this->getConsole()->writeLine("Debut du traitement", ColorInterface::GREEN);
        $this->getConsole()->writeLine("-------------------\n", ColorInterface::GREEN);

@@ -67,18 +67,18 @@ class EvenementConsoleController extends AbstractConsoleController
            try {
                if ($evenement !== null) {
                    $this->evenementGestionService->traiterEvent($evenement);
                    $this->getConsole()->writeLine(sprintf("- traitement de l'évènement #%s", $evenement->getId()));
                    $texte .= "Traitement de l'évènement #". $evenement->getId()." <br/>";
                    $this->getConsole()->writeLine(sprintf("- traitement de l'événement #%s", $evenement->getId()));
                    $texte .= "Traitement de l'événement #". $evenement->getId()." <br/>";
                    $nbOp++;
                }
            } catch (Exception $e) {
                $this->getConsole()->writeLine(sprintf("- échec du traitement de l'évènement #%s", $evenement->getId()), ColorInterface::RED);
                $this->getConsole()->writeLine(sprintf("- échec du traitement de l'événement #%s", $evenement->getId()), ColorInterface::RED);
                $texte .= "<strong> Échec du traitement </strong> <br/>";
            }
        }

        if($nbOp == 0) {
            $this->getConsole()->writeLine("Aucun évènement à traiter.");
            $this->getConsole()->writeLine("Aucun événement à traiter.");
        }

        $this->getConsole()->writeLine("\n-------------------",ColorInterface::GREEN);
+8 −8
Changes for src/UnicaenEvenement/Controller/EvenementController.php: 8 added lines, 8 removed lines.
Original line number Diff line number Diff line
@@ -22,7 +22,7 @@ class EvenementController extends AbstractActionController {
    public function afficherAction() : ViewModel
    {
        $evenement = $this->evenementService->find($this->params()->fromRoute('evenement'));
        $title = "Détail de l'évènement";
        $title = "Détail de l'événement";

        return new ViewModel([
            'title' => $title,
@@ -38,7 +38,7 @@ class EvenementController extends AbstractActionController {
        try {
            foreach ($evenements as $evenement) {
                if ($evenement) {
                    // on ne traite que les évènements en attente
                    // on ne traite que les événements en attente
                    if ($evenement->getEtat()->getCode() == Etat::EN_ATTENTE AND $evenement->getDatePlanification() <= (new DateTime())) {
                        $evenement = $this->evenementGestionService->traiterEvent($evenement);
                        $etat = $evenement->getEtat();
@@ -61,7 +61,7 @@ class EvenementController extends AbstractActionController {
            }

            return new JsonModel([
                'message' => "Traitement des évènements sélectionnés",
                'message' => "Traitement des événements sélectionnés",
                'status' => 'success',
                'result' => $data,
            ]);
@@ -70,7 +70,7 @@ class EvenementController extends AbstractActionController {
            var_dump($e);
            die();
            return new JsonModel([
                'message' => "Une erreur est survenue lors du traitement des évènements sélectionnés.",
                'message' => "Une erreur est survenue lors du traitement des événements sélectionnés.",
                'status' => 'error',
                'result' => $data,
            ]);
@@ -92,14 +92,14 @@ class EvenementController extends AbstractActionController {
                $data[$evenement->getId()] = [$etat->getCode(), $etat->getLibelle()];
            }
            return new JsonModel([
                'message' => "État des évènements sélectionnés modifié avec succès.",
                'message' => "État des événements sélectionnés modifié avec succès.",
                'status' => 'success',
                'result' => $data,
            ]);
        }
        catch (Exception $e) {
            return new JsonModel([
                'message' => "Une erreur est survenue lors de la modification de l'état des évènements sélectionnés",
                'message' => "Une erreur est survenue lors de la modification de l'état des événements sélectionnés",
                'status' => 'error',
                'result' => $data,
            ]);
@@ -123,7 +123,7 @@ class EvenementController extends AbstractActionController {
            $this->evenementService->commit();

            return new JsonModel([
                'message' => "Évènements sélectionnés supprimés avec succès.",
                'message' => "Événements sélectionnés supprimés avec succès.",
                'status' => 'success',
                'result' => $data,
            ]);
@@ -131,7 +131,7 @@ class EvenementController extends AbstractActionController {
        catch (Exception $e) {
            $this->evenementService->rollBack();
            return new JsonModel([
                'message' => "Une erreur est survenue lors de la suppression des évènements sélectionnés.",
                'message' => "Une erreur est survenue lors de la suppression des événements sélectionnés.",
                'status' => 'error',
            ]);
        }
Loading