Loading front/Mission/Suivi.vue +5 −55 Changes for front/Mission/Suivi.vue: 5 added lines, 55 removed lines. Original line number Diff line number Diff line <template> <u-calendar :date="date" @changeDate="changeDate" @addEvent="addVolumeHoraire" :can-add-event="true" :events="suivi"/> <u-calendar :date="date" @changeDate="changeDate" @addEvent="ajoutVolumeHoraire" :can-add-event="true" :events="suivi"/> </template> <script> Loading @@ -23,16 +23,6 @@ export default { return { date: new Date(), suivi: [], // component: markRaw(SuiviEvent), // color: 'yellow', // date: new Date(2023, 1, 5), // missionId: null, // horaireDebut: null, // horaireFin: null, // heures: null, // nocturne: false, // formation: false, // description: '5', }; }, methods: { Loading @@ -41,58 +31,18 @@ export default { this.date = dateObj; }, toto() { console.log('prout'); }, addVolumeHoraire(dateObj, event) ajoutVolumeHoraire(dateObj, event) { const urlParams = { intervenant: this.intervenant, date: dateObj.toISOString().slice(0, 10) // date au format Y-m-d }; event.currentTarget.dataset.url = unicaenVue.url('intervenant/:intervenant/missions-suivi-ajout/:date', urlParams); modAjax(event.currentTarget, (widget) => { this.refresh(); }); }, editVolumeHoraire(calEvent, event) { const urlParams = { intervenant: this.intervenant, id: calEvent.id }; event.currentTarget.dataset.url = unicaenVue.url('intervenant/:intervenant/missions-suivi-modification/:id', urlParams); event.currentTarget.dataset.url = unicaenVue.url('mission/suivi/ajout/:intervenant/:date', urlParams); modAjax(event.currentTarget, (widget) => { this.refresh(); }); }, saveVolumeHoraire(event) { console.log('submit!!!'); event.preventDefault(); this.modal.hide(); this.vhr.date = new Date(this.vhr.date); if (this.vhrIndex === undefined) { this.realise.push(this.vhr); } else { this.realise[this.vhrIndex] = this.vhr; } // reste le passage et le retour du serveur... }, deleteVolumeHoraire(calEvent, event) { const index = this.realise.indexOf(calEvent); this.realise.splice(index, 1); console.log(index); console.log(this.realise); }, refresh() { const colors = [ Loading @@ -108,9 +58,8 @@ export default { let colorIndex = 0; let missionsColors = []; // SuiviEvent.data.suivi = this; unicaenVue.axios.get( unicaenVue.url("intervenant/:intervenant/missions-suivi-data", {intervenant: this.intervenant}) unicaenVue.url("mission/suivi/data/:intervenant", {intervenant: this.intervenant}) ).then(response => { let newSuivi = []; for (let i in response.data) { Loading @@ -123,6 +72,7 @@ export default { missionSuivi.color = missionsColors[missionSuivi.mission.id]; missionSuivi.component = markRaw(SuiviEvent); missionSuivi.date = new Date(missionSuivi.date); missionSuivi.intervenant = this.intervenant; newSuivi.push(missionSuivi); } this.suivi = newSuivi; Loading front/Mission/SuiviEvent.vue +67 −11 Changes for front/Mission/SuiviEvent.vue: 67 added lines, 11 removed lines. Original line number Diff line number Diff line <template> <div class="event-content"> <p>{{ event.mission.libelleCourt }}</p> <p> de {{ event.heureDebut }} à {{ event.heureFin }}, {{ event.heures }} heures <p class="mission">{{ event.mission.libelleCourt }}</p> <p class="horaires"> de {{ heureDebut }} à {{ heureFin }}, soient {{ heures }} heures <b-badge v-if="event.nocturne">Nocturne</b-badge> <b-badge v-if="event.formation">En formation</b-badge> </p> <p v-if="event.description">{{ event.description }}</p> <p class="description" v-if="event.description">{{ event.description }}</p> </div> <div class="event-actions"> <div class="btn-group btn-group-sm"> <button class="btn btn-light" @click="editEvent"> <button class="btn btn-light" @click="modifier" title="Modifier le suivi"> <u-icon name="pen-to-square"/> </button> <button class="btn btn-light" @click="deleteEvent"> <button class="btn btn-light" @click="valider" title="Valider le suivi"> <u-icon name="check" class="text-success"/> </button> <button class="btn btn-light" @click="devalider" title="Dévalider le suivi" data-content="Voulez-vous vraiment dévalider ce suivi ?"> <u-icon name="xmark" class="text-danger"/> </button> <button class="btn btn-light" @click="supprimer" title="Supprimer le suivi" data-content="Voulez-vous vraiment supprimer ce suivi ?"> <u-icon name="trash-can" class="text-danger"/> </button> </div> Loading @@ -26,21 +34,56 @@ export default { props: { event: {type: Object, required: true}, }, data(){ data() { return { suivi: this.$parent.$parent, }; }, computed: { heureDebut() { return this.event.heureDebut.toString().replace(':', 'h'); }, heureFin() { return this.event.heureFin.toString().replace(':', 'h'); }, heures() { return Util.floatToString(this.event.heures); }, }, methods: { modifier(event) { const urlParams = { intervenant: this.event.intervenant, id: this.event.id }; event.currentTarget.dataset.url = unicaenVue.url('mission/suivi/modification/:id', urlParams); modAjax(event.currentTarget, (widget) => { this.suivi.refresh(); }); }, supprimer(event) { popConfirm(event.currentTarget, (response) => { this.suivi.refresh(); }); }, editEvent(event) valider(event) { this.suivi.editVolumeHoraire(this.event, event); this.suivi.refresh(); }, deleteEvent(event) devalider(event) { this.suivi.deleteVolumeHoraire(this.event, event); popConfirm(event.currentTarget, (response) => { this.suivi.refresh(); }); }, }, Loading @@ -53,6 +96,19 @@ export default { flex-grow: 1; } .event-content p { margin-bottom: .2rem; } .event-content p.mission { font-weight: bold; } .event-content p.horaires { font-style: italic; font-weight: lighter; } .event-actions { align-self: flex-start; } Loading module/Mission/config/module.config.php +2 −160 Changes for module/Mission/config/module.config.php: 2 added lines, 160 removed lines. Original line number Diff line number Diff line Loading @@ -2,134 +2,13 @@ namespace Mission; use Application\Entity\Db\WfEtape; use Application\Provider\Privilege\Privileges; use Mission\Controller\MissionController; use Mission\Controller\MissionTypeController; use Mission\Service\MissionTypeService; use Mission\Service\MissionTypeServiceFactory; use UnicaenPrivilege\Assertion\AssertionFactory; use UnicaenPrivilege\Guard\PrivilegeController; return [ 'routes' => [ 'intervenant' => [ 'child_routes' => [ 'missions' => [ 'route' => '/:intervenant/missions', 'controller' => MissionController::class, 'action' => 'index', 'privileges' => Privileges::MISSION_VISUALISATION, //'assertion' => Assertion\MissionAssertion::class, ], 'missions-suivi' => [ 'route' => '/:intervenant/missions-suivi', 'controller' => MissionController::class, 'action' => 'suivi', 'privileges' => Privileges::MISSION_EDITION_REALISE, //'assertion' => Assertion\MissionAssertion::class, ], 'missions-suivi-data' => [ 'route' => '/:intervenant/missions-suivi-data', 'controller' => MissionController::class, 'action' => 'suivi-data', 'privileges' => Privileges::MISSION_VISUALISATION, //'assertion' => Assertion\MissionAssertion::class, ], 'missions-suivi-ajout' => [ 'route' => '/:intervenant/missions-suivi-ajout[/:date]', 'controller' => MissionController::class, 'action' => 'suivi-ajout', 'privileges' => Privileges::MISSION_EDITION_REALISE, //'assertion' => Assertion\MissionAssertion::class, ], 'missions-suivi-modification' => [ 'route' => '/:intervenant/missions-suivi-modification/:volumeHoraireMission', 'controller' => MissionController::class, 'action' => 'suivi-modification', 'privileges' => Privileges::MISSION_EDITION_REALISE, //'assertion' => Assertion\MissionAssertion::class, ], ], ], 'mission' => [ 'route' => '/mission', 'may_terminate' => false, 'child_routes' => [ 'liste' => [ 'route' => '/liste/:intervenant', 'controller' => MissionController::class, 'action' => 'liste', 'privileges' => Privileges::MISSION_VISUALISATION, //'assertion' => Assertion\MissionAssertion::class, ], 'get' => [ 'route' => '/get/:mission', 'controller' => MissionController::class, 'action' => 'get', 'privileges' => Privileges::MISSION_VISUALISATION, //'assertion' => Assertion\MissionAssertion::class, ], 'ajout' => [ 'route' => '/ajout/:intervenant', 'controller' => MissionController::class, 'action' => 'ajout', 'privileges' => Privileges::MISSION_EDITION, //'assertion' => Assertion\MissionAssertion::class, ], 'saisie' => [ 'route' => '/saisie/:mission', 'controller' => MissionController::class, 'action' => 'saisie', 'privileges' => Privileges::MISSION_EDITION, //'assertion' => Assertion\MissionAssertion::class, ], 'supprimer' => [ 'route' => '/supprimer/:mission', 'controller' => MissionController::class, 'action' => 'supprimer', 'privileges' => Privileges::MISSION_EDITION, ], 'valider' => [ 'route' => '/valider/:mission', 'controller' => MissionController::class, 'action' => 'valider', 'privileges' => Privileges::MISSION_VALIDATION, ], 'devalider' => [ 'route' => '/devalider/:mission', 'controller' => MissionController::class, 'action' => 'devalider', 'privileges' => Privileges::MISSION_DEVALIDATION, ], 'volume-horaire' => [ 'route' => '/volume-horaire', 'controller' => MissionController::class, 'may_terminate' => false, 'child_routes' => [ 'supprimer' => [ 'route' => '/supprimer/:volumeHoraireMission', 'controller' => MissionController::class, 'action' => 'volume-horaire-supprimer', 'privileges' => Privileges::MISSION_EDITION, ], 'valider' => [ 'route' => '/valider/:volumeHoraireMission', 'controller' => MissionController::class, 'action' => 'volume-horaire-valider', 'privileges' => Privileges::MISSION_VALIDATION, ], 'devalider' => [ 'route' => '/devalider/:volumeHoraireMission', 'controller' => MissionController::class, 'action' => 'volume-horaire-devalider', 'privileges' => Privileges::MISSION_DEVALIDATION, ], ], ], ], ], 'missions-type' => [ 'route' => '/missions-type', 'controller' => MissionTypeController::class, Loading @@ -155,34 +34,6 @@ return [ 'navigation' => [ 'intervenant' => [ 'pages' => [ 'missions' => [ 'label' => "Missions", 'title' => "Missions", 'route' => 'intervenant/missions', 'paramsInject' => [ 'intervenant', ], 'workflow-etape-code' => WfEtape::CODE_MISSION_SAISIE, 'withtarget' => true, 'visible' => Assertion\MissionAssertion::class, 'order' => 8, ], 'missions-suivi' => [ 'label' => "Suivi de missions", 'title' => "Suivi de missions", 'route' => 'intervenant/missions-suivi', 'paramsInject' => [ 'intervenant', ], 'workflow-etape-code' => WfEtape::CODE_MISSION_SAISIE_REALISE, 'withtarget' => true, 'visible' => Assertion\MissionAssertion::class, 'order' => 10, ], ], ], 'administration' => [ 'pages' => [ 'intervenants' => [ Loading @@ -203,21 +54,12 @@ return [ ], 'controllers' => [ MissionController::class => Controller\MissionControllerFactory::class, MissionTypeController::class => Controller\MissionTypeControllerFactory::class, Controller\MissionTypeController::class => Controller\MissionTypeControllerFactory::class, ], 'services' => [ MissionTypeService::class => MissionTypeServiceFactory::class, Service\MissionTypeService::class => Service\MissionTypeServiceFactory::class, Assertion\MissionAssertion::class => AssertionFactory::class, Service\MissionService::class => Service\MissionServiceFactory::class, ], 'forms' => [ Form\MissionForm::class => Form\MissionFormFactory::class, Form\MissionSuiviForm::class => Form\MissionSuiviFormFactory::class, ], 'view_helpers' => [ ], ]; No newline at end of file module/Mission/config/saisie.config.php 0 → 100644 +129 −0 Changes for module/Mission/config/saisie.config.php: 129 added lines, 0 removed lines. Original line number Diff line number Diff line <?php namespace Mission; use Application\Entity\Db\WfEtape; use Application\Provider\Privilege\Privileges; use UnicaenPrivilege\Assertion\AssertionFactory; use UnicaenPrivilege\Guard\PrivilegeController; return [ 'routes' => [ 'intervenant' => [ 'child_routes' => [ 'missions' => [ 'route' => '/:intervenant/missions', 'controller' => Controller\SaisieController::class, 'action' => 'index', 'privileges' => Privileges::MISSION_VISUALISATION, //'assertion' => Assertion\MissionAssertion::class, ], ], ], 'mission' => [ 'route' => '/mission', 'may_terminate' => false, 'child_routes' => [ 'liste' => [ 'route' => '/liste/:intervenant', 'controller' => Controller\SaisieController::class, 'action' => 'liste', 'privileges' => Privileges::MISSION_VISUALISATION, //'assertion' => Assertion\MissionAssertion::class, ], 'get' => [ 'route' => '/get/:mission', 'controller' => Controller\SaisieController::class, 'action' => 'get', 'privileges' => Privileges::MISSION_VISUALISATION, //'assertion' => Assertion\MissionAssertion::class, ], 'ajout' => [ 'route' => '/ajout/:intervenant', 'controller' => Controller\SaisieController::class, 'action' => 'ajout', 'privileges' => Privileges::MISSION_EDITION, //'assertion' => Assertion\MissionAssertion::class, ], 'saisie' => [ 'route' => '/saisie/:mission', 'controller' => Controller\SaisieController::class, 'action' => 'saisie', 'privileges' => Privileges::MISSION_EDITION, //'assertion' => Assertion\MissionAssertion::class, ], 'supprimer' => [ 'route' => '/supprimer/:mission', 'controller' => Controller\SaisieController::class, 'action' => 'supprimer', 'privileges' => Privileges::MISSION_EDITION, ], 'valider' => [ 'route' => '/valider/:mission', 'controller' => Controller\SaisieController::class, 'action' => 'valider', 'privileges' => Privileges::MISSION_VALIDATION, ], 'devalider' => [ 'route' => '/devalider/:mission', 'controller' => Controller\SaisieController::class, 'action' => 'devalider', 'privileges' => Privileges::MISSION_DEVALIDATION, ], 'volume-horaire' => [ 'route' => '/volume-horaire', 'controller' => Controller\SaisieController::class, 'may_terminate' => false, 'child_routes' => [ 'supprimer' => [ 'route' => '/supprimer/:volumeHoraireMission', 'controller' => Controller\SaisieController::class, 'action' => 'volume-horaire-supprimer', 'privileges' => Privileges::MISSION_EDITION, ], 'valider' => [ 'route' => '/valider/:volumeHoraireMission', 'controller' => Controller\SaisieController::class, 'action' => 'volume-horaire-valider', 'privileges' => Privileges::MISSION_VALIDATION, ], 'devalider' => [ 'route' => '/devalider/:volumeHoraireMission', 'controller' => Controller\SaisieController::class, 'action' => 'volume-horaire-devalider', 'privileges' => Privileges::MISSION_DEVALIDATION, ], ], ], ], ], ], 'navigation' => [ 'intervenant' => [ 'pages' => [ 'missions' => [ 'label' => "Missions", 'title' => "Missions", 'route' => 'intervenant/missions', 'paramsInject' => [ 'intervenant', ], 'workflow-etape-code' => WfEtape::CODE_MISSION_SAISIE, 'withtarget' => true, 'visible' => Assertion\MissionAssertion::class, 'order' => 8, ], ], ], ], 'controllers' => [ Controller\SaisieController::class => Controller\SaisieControllerFactory::class, ], 'forms' => [ Form\MissionForm::class => Form\MissionFormFactory::class, ], ]; No newline at end of file module/Mission/config/suivi.config.php 0 → 100644 +86 −0 Changes for module/Mission/config/suivi.config.php: 86 added lines, 0 removed lines. Original line number Diff line number Diff line <?php namespace Mission; use Application\Entity\Db\WfEtape; use Application\Provider\Privilege\Privileges; use UnicaenPrivilege\Assertion\AssertionFactory; use UnicaenPrivilege\Guard\PrivilegeController; return [ 'routes' => [ 'intervenant' => [ 'child_routes' => [ 'missions-suivi' => [ 'route' => '/:intervenant/missions-suivi', 'controller' => Controller\SuiviController::class, 'action' => 'index', 'privileges' => Privileges::MISSION_EDITION_REALISE, //'assertion' => Assertion\MissionAssertion::class, ], ], ], 'mission' => [ 'child_routes' => [ 'suivi' => [ 'route' => '/suivi', 'child_routes' => [ 'data' => [ 'route' => '/data/:intervenant', 'controller' => Controller\SuiviController::class, 'action' => 'data', 'privileges' => Privileges::MISSION_VISUALISATION, //'assertion' => Assertion\MissionAssertion::class, ], 'ajout' => [ 'route' => '/ajout/:intervenant/:date', 'controller' => Controller\SuiviController::class, 'action' => 'ajout', 'privileges' => Privileges::MISSION_EDITION_REALISE, //'assertion' => Assertion\MissionAssertion::class, ], 'modification' => [ 'route' => '/modification/:volumeHoraireMission', 'controller' => Controller\SuiviController::class, 'action' => 'modification', 'privileges' => Privileges::MISSION_EDITION_REALISE, //'assertion' => Assertion\MissionAssertion::class, ], ], ], ], ], ], 'navigation' => [ 'intervenant' => [ 'pages' => [ 'missions-suivi' => [ 'label' => "Suivi de missions", 'title' => "Suivi de missions", 'route' => 'intervenant/missions-suivi', 'paramsInject' => [ 'intervenant', ], 'workflow-etape-code' => WfEtape::CODE_MISSION_SAISIE_REALISE, 'withtarget' => true, 'visible' => Assertion\MissionAssertion::class, 'order' => 10, ], ], ], ], 'controllers' => [ Controller\SuiviController::class => Controller\SuiviControllerFactory::class, ], 'forms' => [ Form\MissionSuiviForm::class => Form\MissionSuiviFormFactory::class, ], 'view_helpers' => [ ], ]; No newline at end of file Loading
front/Mission/Suivi.vue +5 −55 Changes for front/Mission/Suivi.vue: 5 added lines, 55 removed lines. Original line number Diff line number Diff line <template> <u-calendar :date="date" @changeDate="changeDate" @addEvent="addVolumeHoraire" :can-add-event="true" :events="suivi"/> <u-calendar :date="date" @changeDate="changeDate" @addEvent="ajoutVolumeHoraire" :can-add-event="true" :events="suivi"/> </template> <script> Loading @@ -23,16 +23,6 @@ export default { return { date: new Date(), suivi: [], // component: markRaw(SuiviEvent), // color: 'yellow', // date: new Date(2023, 1, 5), // missionId: null, // horaireDebut: null, // horaireFin: null, // heures: null, // nocturne: false, // formation: false, // description: '5', }; }, methods: { Loading @@ -41,58 +31,18 @@ export default { this.date = dateObj; }, toto() { console.log('prout'); }, addVolumeHoraire(dateObj, event) ajoutVolumeHoraire(dateObj, event) { const urlParams = { intervenant: this.intervenant, date: dateObj.toISOString().slice(0, 10) // date au format Y-m-d }; event.currentTarget.dataset.url = unicaenVue.url('intervenant/:intervenant/missions-suivi-ajout/:date', urlParams); modAjax(event.currentTarget, (widget) => { this.refresh(); }); }, editVolumeHoraire(calEvent, event) { const urlParams = { intervenant: this.intervenant, id: calEvent.id }; event.currentTarget.dataset.url = unicaenVue.url('intervenant/:intervenant/missions-suivi-modification/:id', urlParams); event.currentTarget.dataset.url = unicaenVue.url('mission/suivi/ajout/:intervenant/:date', urlParams); modAjax(event.currentTarget, (widget) => { this.refresh(); }); }, saveVolumeHoraire(event) { console.log('submit!!!'); event.preventDefault(); this.modal.hide(); this.vhr.date = new Date(this.vhr.date); if (this.vhrIndex === undefined) { this.realise.push(this.vhr); } else { this.realise[this.vhrIndex] = this.vhr; } // reste le passage et le retour du serveur... }, deleteVolumeHoraire(calEvent, event) { const index = this.realise.indexOf(calEvent); this.realise.splice(index, 1); console.log(index); console.log(this.realise); }, refresh() { const colors = [ Loading @@ -108,9 +58,8 @@ export default { let colorIndex = 0; let missionsColors = []; // SuiviEvent.data.suivi = this; unicaenVue.axios.get( unicaenVue.url("intervenant/:intervenant/missions-suivi-data", {intervenant: this.intervenant}) unicaenVue.url("mission/suivi/data/:intervenant", {intervenant: this.intervenant}) ).then(response => { let newSuivi = []; for (let i in response.data) { Loading @@ -123,6 +72,7 @@ export default { missionSuivi.color = missionsColors[missionSuivi.mission.id]; missionSuivi.component = markRaw(SuiviEvent); missionSuivi.date = new Date(missionSuivi.date); missionSuivi.intervenant = this.intervenant; newSuivi.push(missionSuivi); } this.suivi = newSuivi; Loading
front/Mission/SuiviEvent.vue +67 −11 Changes for front/Mission/SuiviEvent.vue: 67 added lines, 11 removed lines. Original line number Diff line number Diff line <template> <div class="event-content"> <p>{{ event.mission.libelleCourt }}</p> <p> de {{ event.heureDebut }} à {{ event.heureFin }}, {{ event.heures }} heures <p class="mission">{{ event.mission.libelleCourt }}</p> <p class="horaires"> de {{ heureDebut }} à {{ heureFin }}, soient {{ heures }} heures <b-badge v-if="event.nocturne">Nocturne</b-badge> <b-badge v-if="event.formation">En formation</b-badge> </p> <p v-if="event.description">{{ event.description }}</p> <p class="description" v-if="event.description">{{ event.description }}</p> </div> <div class="event-actions"> <div class="btn-group btn-group-sm"> <button class="btn btn-light" @click="editEvent"> <button class="btn btn-light" @click="modifier" title="Modifier le suivi"> <u-icon name="pen-to-square"/> </button> <button class="btn btn-light" @click="deleteEvent"> <button class="btn btn-light" @click="valider" title="Valider le suivi"> <u-icon name="check" class="text-success"/> </button> <button class="btn btn-light" @click="devalider" title="Dévalider le suivi" data-content="Voulez-vous vraiment dévalider ce suivi ?"> <u-icon name="xmark" class="text-danger"/> </button> <button class="btn btn-light" @click="supprimer" title="Supprimer le suivi" data-content="Voulez-vous vraiment supprimer ce suivi ?"> <u-icon name="trash-can" class="text-danger"/> </button> </div> Loading @@ -26,21 +34,56 @@ export default { props: { event: {type: Object, required: true}, }, data(){ data() { return { suivi: this.$parent.$parent, }; }, computed: { heureDebut() { return this.event.heureDebut.toString().replace(':', 'h'); }, heureFin() { return this.event.heureFin.toString().replace(':', 'h'); }, heures() { return Util.floatToString(this.event.heures); }, }, methods: { modifier(event) { const urlParams = { intervenant: this.event.intervenant, id: this.event.id }; event.currentTarget.dataset.url = unicaenVue.url('mission/suivi/modification/:id', urlParams); modAjax(event.currentTarget, (widget) => { this.suivi.refresh(); }); }, supprimer(event) { popConfirm(event.currentTarget, (response) => { this.suivi.refresh(); }); }, editEvent(event) valider(event) { this.suivi.editVolumeHoraire(this.event, event); this.suivi.refresh(); }, deleteEvent(event) devalider(event) { this.suivi.deleteVolumeHoraire(this.event, event); popConfirm(event.currentTarget, (response) => { this.suivi.refresh(); }); }, }, Loading @@ -53,6 +96,19 @@ export default { flex-grow: 1; } .event-content p { margin-bottom: .2rem; } .event-content p.mission { font-weight: bold; } .event-content p.horaires { font-style: italic; font-weight: lighter; } .event-actions { align-self: flex-start; } Loading
module/Mission/config/module.config.php +2 −160 Changes for module/Mission/config/module.config.php: 2 added lines, 160 removed lines. Original line number Diff line number Diff line Loading @@ -2,134 +2,13 @@ namespace Mission; use Application\Entity\Db\WfEtape; use Application\Provider\Privilege\Privileges; use Mission\Controller\MissionController; use Mission\Controller\MissionTypeController; use Mission\Service\MissionTypeService; use Mission\Service\MissionTypeServiceFactory; use UnicaenPrivilege\Assertion\AssertionFactory; use UnicaenPrivilege\Guard\PrivilegeController; return [ 'routes' => [ 'intervenant' => [ 'child_routes' => [ 'missions' => [ 'route' => '/:intervenant/missions', 'controller' => MissionController::class, 'action' => 'index', 'privileges' => Privileges::MISSION_VISUALISATION, //'assertion' => Assertion\MissionAssertion::class, ], 'missions-suivi' => [ 'route' => '/:intervenant/missions-suivi', 'controller' => MissionController::class, 'action' => 'suivi', 'privileges' => Privileges::MISSION_EDITION_REALISE, //'assertion' => Assertion\MissionAssertion::class, ], 'missions-suivi-data' => [ 'route' => '/:intervenant/missions-suivi-data', 'controller' => MissionController::class, 'action' => 'suivi-data', 'privileges' => Privileges::MISSION_VISUALISATION, //'assertion' => Assertion\MissionAssertion::class, ], 'missions-suivi-ajout' => [ 'route' => '/:intervenant/missions-suivi-ajout[/:date]', 'controller' => MissionController::class, 'action' => 'suivi-ajout', 'privileges' => Privileges::MISSION_EDITION_REALISE, //'assertion' => Assertion\MissionAssertion::class, ], 'missions-suivi-modification' => [ 'route' => '/:intervenant/missions-suivi-modification/:volumeHoraireMission', 'controller' => MissionController::class, 'action' => 'suivi-modification', 'privileges' => Privileges::MISSION_EDITION_REALISE, //'assertion' => Assertion\MissionAssertion::class, ], ], ], 'mission' => [ 'route' => '/mission', 'may_terminate' => false, 'child_routes' => [ 'liste' => [ 'route' => '/liste/:intervenant', 'controller' => MissionController::class, 'action' => 'liste', 'privileges' => Privileges::MISSION_VISUALISATION, //'assertion' => Assertion\MissionAssertion::class, ], 'get' => [ 'route' => '/get/:mission', 'controller' => MissionController::class, 'action' => 'get', 'privileges' => Privileges::MISSION_VISUALISATION, //'assertion' => Assertion\MissionAssertion::class, ], 'ajout' => [ 'route' => '/ajout/:intervenant', 'controller' => MissionController::class, 'action' => 'ajout', 'privileges' => Privileges::MISSION_EDITION, //'assertion' => Assertion\MissionAssertion::class, ], 'saisie' => [ 'route' => '/saisie/:mission', 'controller' => MissionController::class, 'action' => 'saisie', 'privileges' => Privileges::MISSION_EDITION, //'assertion' => Assertion\MissionAssertion::class, ], 'supprimer' => [ 'route' => '/supprimer/:mission', 'controller' => MissionController::class, 'action' => 'supprimer', 'privileges' => Privileges::MISSION_EDITION, ], 'valider' => [ 'route' => '/valider/:mission', 'controller' => MissionController::class, 'action' => 'valider', 'privileges' => Privileges::MISSION_VALIDATION, ], 'devalider' => [ 'route' => '/devalider/:mission', 'controller' => MissionController::class, 'action' => 'devalider', 'privileges' => Privileges::MISSION_DEVALIDATION, ], 'volume-horaire' => [ 'route' => '/volume-horaire', 'controller' => MissionController::class, 'may_terminate' => false, 'child_routes' => [ 'supprimer' => [ 'route' => '/supprimer/:volumeHoraireMission', 'controller' => MissionController::class, 'action' => 'volume-horaire-supprimer', 'privileges' => Privileges::MISSION_EDITION, ], 'valider' => [ 'route' => '/valider/:volumeHoraireMission', 'controller' => MissionController::class, 'action' => 'volume-horaire-valider', 'privileges' => Privileges::MISSION_VALIDATION, ], 'devalider' => [ 'route' => '/devalider/:volumeHoraireMission', 'controller' => MissionController::class, 'action' => 'volume-horaire-devalider', 'privileges' => Privileges::MISSION_DEVALIDATION, ], ], ], ], ], 'missions-type' => [ 'route' => '/missions-type', 'controller' => MissionTypeController::class, Loading @@ -155,34 +34,6 @@ return [ 'navigation' => [ 'intervenant' => [ 'pages' => [ 'missions' => [ 'label' => "Missions", 'title' => "Missions", 'route' => 'intervenant/missions', 'paramsInject' => [ 'intervenant', ], 'workflow-etape-code' => WfEtape::CODE_MISSION_SAISIE, 'withtarget' => true, 'visible' => Assertion\MissionAssertion::class, 'order' => 8, ], 'missions-suivi' => [ 'label' => "Suivi de missions", 'title' => "Suivi de missions", 'route' => 'intervenant/missions-suivi', 'paramsInject' => [ 'intervenant', ], 'workflow-etape-code' => WfEtape::CODE_MISSION_SAISIE_REALISE, 'withtarget' => true, 'visible' => Assertion\MissionAssertion::class, 'order' => 10, ], ], ], 'administration' => [ 'pages' => [ 'intervenants' => [ Loading @@ -203,21 +54,12 @@ return [ ], 'controllers' => [ MissionController::class => Controller\MissionControllerFactory::class, MissionTypeController::class => Controller\MissionTypeControllerFactory::class, Controller\MissionTypeController::class => Controller\MissionTypeControllerFactory::class, ], 'services' => [ MissionTypeService::class => MissionTypeServiceFactory::class, Service\MissionTypeService::class => Service\MissionTypeServiceFactory::class, Assertion\MissionAssertion::class => AssertionFactory::class, Service\MissionService::class => Service\MissionServiceFactory::class, ], 'forms' => [ Form\MissionForm::class => Form\MissionFormFactory::class, Form\MissionSuiviForm::class => Form\MissionSuiviFormFactory::class, ], 'view_helpers' => [ ], ]; No newline at end of file
module/Mission/config/saisie.config.php 0 → 100644 +129 −0 Changes for module/Mission/config/saisie.config.php: 129 added lines, 0 removed lines. Original line number Diff line number Diff line <?php namespace Mission; use Application\Entity\Db\WfEtape; use Application\Provider\Privilege\Privileges; use UnicaenPrivilege\Assertion\AssertionFactory; use UnicaenPrivilege\Guard\PrivilegeController; return [ 'routes' => [ 'intervenant' => [ 'child_routes' => [ 'missions' => [ 'route' => '/:intervenant/missions', 'controller' => Controller\SaisieController::class, 'action' => 'index', 'privileges' => Privileges::MISSION_VISUALISATION, //'assertion' => Assertion\MissionAssertion::class, ], ], ], 'mission' => [ 'route' => '/mission', 'may_terminate' => false, 'child_routes' => [ 'liste' => [ 'route' => '/liste/:intervenant', 'controller' => Controller\SaisieController::class, 'action' => 'liste', 'privileges' => Privileges::MISSION_VISUALISATION, //'assertion' => Assertion\MissionAssertion::class, ], 'get' => [ 'route' => '/get/:mission', 'controller' => Controller\SaisieController::class, 'action' => 'get', 'privileges' => Privileges::MISSION_VISUALISATION, //'assertion' => Assertion\MissionAssertion::class, ], 'ajout' => [ 'route' => '/ajout/:intervenant', 'controller' => Controller\SaisieController::class, 'action' => 'ajout', 'privileges' => Privileges::MISSION_EDITION, //'assertion' => Assertion\MissionAssertion::class, ], 'saisie' => [ 'route' => '/saisie/:mission', 'controller' => Controller\SaisieController::class, 'action' => 'saisie', 'privileges' => Privileges::MISSION_EDITION, //'assertion' => Assertion\MissionAssertion::class, ], 'supprimer' => [ 'route' => '/supprimer/:mission', 'controller' => Controller\SaisieController::class, 'action' => 'supprimer', 'privileges' => Privileges::MISSION_EDITION, ], 'valider' => [ 'route' => '/valider/:mission', 'controller' => Controller\SaisieController::class, 'action' => 'valider', 'privileges' => Privileges::MISSION_VALIDATION, ], 'devalider' => [ 'route' => '/devalider/:mission', 'controller' => Controller\SaisieController::class, 'action' => 'devalider', 'privileges' => Privileges::MISSION_DEVALIDATION, ], 'volume-horaire' => [ 'route' => '/volume-horaire', 'controller' => Controller\SaisieController::class, 'may_terminate' => false, 'child_routes' => [ 'supprimer' => [ 'route' => '/supprimer/:volumeHoraireMission', 'controller' => Controller\SaisieController::class, 'action' => 'volume-horaire-supprimer', 'privileges' => Privileges::MISSION_EDITION, ], 'valider' => [ 'route' => '/valider/:volumeHoraireMission', 'controller' => Controller\SaisieController::class, 'action' => 'volume-horaire-valider', 'privileges' => Privileges::MISSION_VALIDATION, ], 'devalider' => [ 'route' => '/devalider/:volumeHoraireMission', 'controller' => Controller\SaisieController::class, 'action' => 'volume-horaire-devalider', 'privileges' => Privileges::MISSION_DEVALIDATION, ], ], ], ], ], ], 'navigation' => [ 'intervenant' => [ 'pages' => [ 'missions' => [ 'label' => "Missions", 'title' => "Missions", 'route' => 'intervenant/missions', 'paramsInject' => [ 'intervenant', ], 'workflow-etape-code' => WfEtape::CODE_MISSION_SAISIE, 'withtarget' => true, 'visible' => Assertion\MissionAssertion::class, 'order' => 8, ], ], ], ], 'controllers' => [ Controller\SaisieController::class => Controller\SaisieControllerFactory::class, ], 'forms' => [ Form\MissionForm::class => Form\MissionFormFactory::class, ], ]; No newline at end of file
module/Mission/config/suivi.config.php 0 → 100644 +86 −0 Changes for module/Mission/config/suivi.config.php: 86 added lines, 0 removed lines. Original line number Diff line number Diff line <?php namespace Mission; use Application\Entity\Db\WfEtape; use Application\Provider\Privilege\Privileges; use UnicaenPrivilege\Assertion\AssertionFactory; use UnicaenPrivilege\Guard\PrivilegeController; return [ 'routes' => [ 'intervenant' => [ 'child_routes' => [ 'missions-suivi' => [ 'route' => '/:intervenant/missions-suivi', 'controller' => Controller\SuiviController::class, 'action' => 'index', 'privileges' => Privileges::MISSION_EDITION_REALISE, //'assertion' => Assertion\MissionAssertion::class, ], ], ], 'mission' => [ 'child_routes' => [ 'suivi' => [ 'route' => '/suivi', 'child_routes' => [ 'data' => [ 'route' => '/data/:intervenant', 'controller' => Controller\SuiviController::class, 'action' => 'data', 'privileges' => Privileges::MISSION_VISUALISATION, //'assertion' => Assertion\MissionAssertion::class, ], 'ajout' => [ 'route' => '/ajout/:intervenant/:date', 'controller' => Controller\SuiviController::class, 'action' => 'ajout', 'privileges' => Privileges::MISSION_EDITION_REALISE, //'assertion' => Assertion\MissionAssertion::class, ], 'modification' => [ 'route' => '/modification/:volumeHoraireMission', 'controller' => Controller\SuiviController::class, 'action' => 'modification', 'privileges' => Privileges::MISSION_EDITION_REALISE, //'assertion' => Assertion\MissionAssertion::class, ], ], ], ], ], ], 'navigation' => [ 'intervenant' => [ 'pages' => [ 'missions-suivi' => [ 'label' => "Suivi de missions", 'title' => "Suivi de missions", 'route' => 'intervenant/missions-suivi', 'paramsInject' => [ 'intervenant', ], 'workflow-etape-code' => WfEtape::CODE_MISSION_SAISIE_REALISE, 'withtarget' => true, 'visible' => Assertion\MissionAssertion::class, 'order' => 10, ], ], ], ], 'controllers' => [ Controller\SuiviController::class => Controller\SuiviControllerFactory::class, ], 'forms' => [ Form\MissionSuiviForm::class => Form\MissionSuiviFormFactory::class, ], 'view_helpers' => [ ], ]; No newline at end of file