diff --git a/packages/applications/legacy/src/views/pages/projectDetailsPage/components/ProjectActions.tsx b/packages/applications/legacy/src/views/pages/projectDetailsPage/components/ProjectActions.tsx
index 55048dfbf4..b28e4cd632 100644
--- a/packages/applications/legacy/src/views/pages/projectDetailsPage/components/ProjectActions.tsx
+++ b/packages/applications/legacy/src/views/pages/projectDetailsPage/components/ProjectActions.tsx
@@ -58,6 +58,7 @@ const PorteurProjetActions = ({
familleId: project.familleId,
numeroCRE: project.numeroCRE,
}).formatter();
+ const peutDemanderAbandon = !abandonEnCours && !hasAttestationConformité;
return (
@@ -109,7 +110,7 @@ const PorteurProjetActions = ({
Demander un changement de représentant légal
)}
- {!abandonEnCours && (
+ {peutDemanderAbandon && (
<>
& {
};
annuléLe?: DateTime.ValueType;
readonly accorder: typeof accorder;
- readonly annulerRejet: typeof annulerRejet;
readonly annuler: typeof annuler;
readonly confirmer: typeof confirmer;
readonly demander: typeof demander;
@@ -114,7 +112,6 @@ export const getDefaultAbandonAggregate: GetDefaultAggregateState<
},
accorder,
annuler,
- annulerRejet,
confirmer,
demander,
demanderConfirmation,
diff --git "a/packages/domain/laur\303\251at/src/abandon/abandon.register.ts" "b/packages/domain/laur\303\251at/src/abandon/abandon.register.ts"
index d1ad96cbdf..cb1ea6f964 100644
--- "a/packages/domain/laur\303\251at/src/abandon/abandon.register.ts"
+++ "b/packages/domain/laur\303\251at/src/abandon/abandon.register.ts"
@@ -4,7 +4,6 @@ import { registerAccorderAbandonCommand } from './accorder/accorderAbandon.comma
import { registerAccorderAbandonUseCase } from './accorder/accorderAbandon.usecase';
import { registerAnnulerAbandonCommand } from './annuler/annulerAbandon.command';
import { registerAnnulerAbandonUseCase } from './annuler/annulerAbandon.usecase';
-import { registerAnnulerRejetAbandonUseCase } from './annulerRejet/annulerRejetAbandon.usecase';
import { registerConfirmerAbandonCommand } from './confirmer/confirmerAbandon.command';
import { registerConfirmerAbandonUseCase } from './confirmer/confirmerAbandon.usecase';
import {
@@ -21,7 +20,6 @@ import {
} from './lister/listerAbandons.query';
import { registerRejeterAbandonCommand } from './rejeter/rejeterAbandon.command';
import { registerRejeterAbandonUseCase } from './rejeter/rejeterAbandon.usecase';
-import { registerAnnulerRejetAbandonCommand } from './annulerRejet/annulerRejetAbandon.command';
import { registerTransmettrePreuveRecandidatureAbandonCommand } from './transmettre/transmettrePreuveRecandidatureAbandon.command';
import { registerTransmettrePreuveRecandidatureAbandonUseCase } from './transmettre/transmettrePreuveRecandidatureAbandon.usecase';
import { registerDemanderPreuveRecandidatureAbandonCommand } from './demanderPreuveRecandidature/demanderPreuveRecandidatureAbandon.command';
@@ -46,7 +44,6 @@ export const registerAbandonUseCases = ({ loadAggregate }: AbandonCommandDepende
registerDemanderConfirmationAbandonCommand(loadAggregate);
registerRejeterAbandonCommand(loadAggregate);
registerAnnulerAbandonCommand(loadAggregate);
- registerAnnulerRejetAbandonCommand(loadAggregate);
registerTransmettrePreuveRecandidatureAbandonCommand(loadAggregate);
registerDemanderPreuveRecandidatureAbandonCommand(loadAggregate);
@@ -56,7 +53,6 @@ export const registerAbandonUseCases = ({ loadAggregate }: AbandonCommandDepende
registerDemanderConfirmationAbandonUseCase();
registerRejeterAbandonUseCase();
registerAnnulerAbandonUseCase();
- registerAnnulerRejetAbandonUseCase();
registerTransmettrePreuveRecandidatureAbandonUseCase();
registerDemanderPreuveRecandidatureAbandonUseCase();
};
diff --git "a/packages/domain/laur\303\251at/src/abandon/annulerRejet/annulerRejetAbandon.behavior.ts" "b/packages/domain/laur\303\251at/src/abandon/annulerRejet/annulerRejetAbandon.behavior.ts"
deleted file mode 100644
index ff0f7141fe..0000000000
--- "a/packages/domain/laur\303\251at/src/abandon/annulerRejet/annulerRejetAbandon.behavior.ts"
+++ /dev/null
@@ -1,40 +0,0 @@
-import { DateTime, IdentifiantProjet } from '@potentiel-domain/common';
-import { IdentifiantUtilisateur } from '@potentiel-domain/utilisateur';
-
-import { AbandonAggregate } from '../abandon.aggregate';
-import * as StatutAbandon from '../statutAbandon.valueType';
-import { AbandonAnnuléEvent } from '../annuler/annulerAbandon.behavior';
-
-export type AnnulerRejetOptions = {
- dateAnnulation: DateTime.ValueType;
- identifiantUtilisateur: IdentifiantUtilisateur.ValueType;
- identifiantProjet: IdentifiantProjet.ValueType;
-};
-
-export async function annulerRejet(
- this: AbandonAggregate,
- { dateAnnulation, identifiantUtilisateur, identifiantProjet }: AnnulerRejetOptions,
-) {
- this.statut.vérifierQueLeChangementDeStatutEstPossibleEn(StatutAbandon.demandé);
-
- const event: AbandonAnnuléEvent = {
- type: 'AbandonAnnulé-V1',
- payload: {
- identifiantProjet: identifiantProjet.formatter(),
- annuléLe: dateAnnulation.formatter(),
- annuléPar: identifiantUtilisateur.formatter(),
- },
- };
-
- await this.publish(event);
-
- if (this.demande.pièceJustificative) {
- await this.demander({
- dateDemande: this.demande.demandéLe,
- identifiantProjet,
- raison: this.demande.raison,
- identifiantUtilisateur: this.demande.demandéPar,
- pièceJustificative: this.demande.pièceJustificative,
- });
- }
-}
diff --git "a/packages/domain/laur\303\251at/src/abandon/annulerRejet/annulerRejetAbandon.command.ts" "b/packages/domain/laur\303\251at/src/abandon/annulerRejet/annulerRejetAbandon.command.ts"
deleted file mode 100644
index cf8d5b1501..0000000000
--- "a/packages/domain/laur\303\251at/src/abandon/annulerRejet/annulerRejetAbandon.command.ts"
+++ /dev/null
@@ -1,34 +0,0 @@
-import { Message, MessageHandler, mediator } from 'mediateur';
-
-import { DateTime, IdentifiantProjet } from '@potentiel-domain/common';
-import { IdentifiantUtilisateur } from '@potentiel-domain/utilisateur';
-import { LoadAggregate } from '@potentiel-domain/core';
-
-import { loadAbandonFactory } from '../abandon.aggregate';
-
-export type AnnulerRejetAbandonCommand = Message<
- 'Lauréat.Abandon.Command.AnnulerRejetAbandon',
- {
- dateAnnulation: DateTime.ValueType;
- identifiantUtilisateur: IdentifiantUtilisateur.ValueType;
- identifiantProjet: IdentifiantProjet.ValueType;
- }
->;
-
-export const registerAnnulerRejetAbandonCommand = (loadAggregate: LoadAggregate) => {
- const loadAbandon = loadAbandonFactory(loadAggregate);
- const handler: MessageHandler = async ({
- dateAnnulation,
- identifiantUtilisateur,
- identifiantProjet,
- }) => {
- const abandon = await loadAbandon(identifiantProjet);
-
- await abandon.annulerRejet({
- dateAnnulation,
- identifiantProjet,
- identifiantUtilisateur,
- });
- };
- mediator.register('Lauréat.Abandon.Command.AnnulerRejetAbandon', handler);
-};
diff --git "a/packages/domain/laur\303\251at/src/abandon/annulerRejet/annulerRejetAbandon.usecase.ts" "b/packages/domain/laur\303\251at/src/abandon/annulerRejet/annulerRejetAbandon.usecase.ts"
deleted file mode 100644
index affb16f90e..0000000000
--- "a/packages/domain/laur\303\251at/src/abandon/annulerRejet/annulerRejetAbandon.usecase.ts"
+++ /dev/null
@@ -1,40 +0,0 @@
-import { Message, MessageHandler, mediator } from 'mediateur';
-
-import { DateTime, IdentifiantProjet } from '@potentiel-domain/common';
-import { IdentifiantUtilisateur } from '@potentiel-domain/utilisateur';
-
-import { AnnulerRejetAbandonCommand } from './annulerRejetAbandon.command';
-
-export type AnnulerRejetAbandonUseCase = Message<
- 'Lauréat.Abandon.UseCase.AnnulerRejetAbandon',
- {
- identifiantProjetValue: string;
- identifiantUtilisateurValue: string;
- dateAnnulationValue: string;
- }
->;
-
-export const registerAnnulerRejetAbandonUseCase = () => {
- const runner: MessageHandler = async ({
- identifiantUtilisateurValue,
- dateAnnulationValue,
- identifiantProjetValue,
- }) => {
- const identifiantProjet = IdentifiantProjet.convertirEnValueType(identifiantProjetValue);
- const dateAnnulation = DateTime.convertirEnValueType(dateAnnulationValue);
- const identifiantUtilisateur = IdentifiantUtilisateur.convertirEnValueType(
- identifiantUtilisateurValue,
- );
-
- await mediator.send({
- type: 'Lauréat.Abandon.Command.AnnulerRejetAbandon',
- data: {
- dateAnnulation,
- identifiantUtilisateur,
- identifiantProjet,
- },
- });
- };
-
- mediator.register('Lauréat.Abandon.UseCase.AnnulerRejetAbandon', runner);
-};
diff --git "a/packages/domain/laur\303\251at/src/abandon/demander/demanderAbandon.behavior.ts" "b/packages/domain/laur\303\251at/src/abandon/demander/demanderAbandon.behavior.ts"
index 40a2fb7aff..1b36d690a6 100644
--- "a/packages/domain/laur\303\251at/src/abandon/demander/demanderAbandon.behavior.ts"
+++ "b/packages/domain/laur\303\251at/src/abandon/demander/demanderAbandon.behavior.ts"
@@ -46,6 +46,7 @@ export type DemanderOptions = {
identifiantProjet: IdentifiantProjet.ValueType;
pièceJustificative: DocumentProjet.ValueType;
raison: string;
+ estAchevé: boolean;
};
export async function demander(
@@ -56,9 +57,13 @@ export async function demander(
identifiantProjet,
pièceJustificative,
raison,
+ estAchevé,
}: DemanderOptions,
) {
this.statut.vérifierQueLeChangementDeStatutEstPossibleEn(StatutAbandon.demandé);
+ if (estAchevé) {
+ throw new ProjetAchevéError(identifiantProjet);
+ }
if (!pièceJustificative) {
throw new PièceJustificativeObligatoireError();
@@ -114,3 +119,9 @@ class PièceJustificativeObligatoireError extends InvalidOperationError {
super('La pièce justificative est obligatoire');
}
}
+
+class ProjetAchevéError extends InvalidOperationError {
+ constructor(public identifiantProjet: IdentifiantProjet.ValueType) {
+ super("Impossible de demander l'abandon d'un projet achevé");
+ }
+}
diff --git "a/packages/domain/laur\303\251at/src/abandon/demander/demanderAbandon.command.ts" "b/packages/domain/laur\303\251at/src/abandon/demander/demanderAbandon.command.ts"
index 0440665fb3..cc9a77abbb 100644
--- "a/packages/domain/laur\303\251at/src/abandon/demander/demanderAbandon.command.ts"
+++ "b/packages/domain/laur\303\251at/src/abandon/demander/demanderAbandon.command.ts"
@@ -6,6 +6,7 @@ import { DocumentProjet } from '@potentiel-domain/document';
import { LoadAggregate } from '@potentiel-domain/core';
import { loadAbandonFactory } from '../abandon.aggregate';
+import { loadAchèvementFactory } from '../../achèvement/achèvement.aggregate';
export type DemanderAbandonCommand = Message<
'Lauréat.Abandon.Command.DemanderAbandon',
@@ -20,6 +21,8 @@ export type DemanderAbandonCommand = Message<
export const registerDemanderAbandonCommand = (loadAggregate: LoadAggregate) => {
const loadAbandon = loadAbandonFactory(loadAggregate);
+ const loadAchèvement = loadAchèvementFactory(loadAggregate);
+
const handler: MessageHandler = async ({
identifiantProjet,
pièceJustificative,
@@ -28,6 +31,7 @@ export const registerDemanderAbandonCommand = (loadAggregate: LoadAggregate) =>
dateDemande,
}) => {
const abandon = await loadAbandon(identifiantProjet, false);
+ const achèvement = await loadAchèvement(identifiantProjet, false);
await abandon.demander({
identifiantProjet,
@@ -35,6 +39,7 @@ export const registerDemanderAbandonCommand = (loadAggregate: LoadAggregate) =>
raison,
identifiantUtilisateur,
dateDemande,
+ estAchevé: achèvement.estAchevé(),
});
};
mediator.register('Lauréat.Abandon.Command.DemanderAbandon', handler);
diff --git "a/packages/domain/laur\303\251at/src/abandon/index.ts" "b/packages/domain/laur\303\251at/src/abandon/index.ts"
index db87598591..58ed042d88 100644
--- "a/packages/domain/laur\303\251at/src/abandon/index.ts"
+++ "b/packages/domain/laur\303\251at/src/abandon/index.ts"
@@ -1,6 +1,5 @@
import { AccorderAbandonUseCase } from './accorder/accorderAbandon.usecase';
import { AnnulerAbandonUseCase } from './annuler/annulerAbandon.usecase';
-import { AnnulerRejetAbandonUseCase } from './annulerRejet/annulerRejetAbandon.usecase';
import { ConfirmerAbandonUseCase } from './confirmer/confirmerAbandon.usecase';
import {
ConsulterAbandonQuery,
@@ -33,7 +32,6 @@ export type { ConsulterAbandonReadModel, ListerAbandonReadModel };
export type AbandonUseCase =
| AccorderAbandonUseCase
| AnnulerAbandonUseCase
- | AnnulerRejetAbandonUseCase
| ConfirmerAbandonUseCase
| DemanderAbandonUseCase
| DemanderConfirmationAbandonUseCase
@@ -44,7 +42,6 @@ export type AbandonUseCase =
export type {
AccorderAbandonUseCase,
AnnulerAbandonUseCase,
- AnnulerRejetAbandonUseCase,
ConfirmerAbandonUseCase,
DemanderAbandonUseCase,
DemanderConfirmationAbandonUseCase,
diff --git a/packages/domain/utilisateur/src/role.valueType.ts b/packages/domain/utilisateur/src/role.valueType.ts
index dbdbaf8d57..132d945f68 100644
--- a/packages/domain/utilisateur/src/role.valueType.ts
+++ b/packages/domain/utilisateur/src/role.valueType.ts
@@ -100,7 +100,6 @@ const référencielPermissions = {
transmettrePreuveRecandidature:
'Lauréat.Abandon.UseCase.TransmettrePreuveRecandidatureAbandon',
accorder: 'Lauréat.Abandon.UseCase.AccorderAbandon',
- annulerRejet: 'Lauréat.Abandon.UseCase.AnnulerRejetAbandon',
demanderConfirmation: 'Lauréat.Abandon.UseCase.DemanderConfirmationAbandon',
rejeter: 'Lauréat.Abandon.UseCase.RejeterAbandon',
},
@@ -111,7 +110,6 @@ const référencielPermissions = {
transmettrePreuveRecandidature:
'Lauréat.Abandon.Command.TransmettrePreuveRecandidatureAbandon',
accorder: 'Lauréat.Abandon.Command.AccorderAbandon',
- annulerRejet: 'Lauréat.Abandon.Command.AnnulerRejetAbandon',
demanderConfirmation: 'Lauréat.Abandon.Command.DemanderConfirmationAbandon',
rejeter: 'Lauréat.Abandon.Command.RejeterAbandon',
},
@@ -510,12 +508,6 @@ const policies = {
référencielPermissions.lauréat.abandon.command.accorder,
],
},
- 'annuler-rejet': [
- référencielPermissions.candidature.query.consulterProjet,
- référencielPermissions.lauréat.abandon.query.consulter,
- référencielPermissions.lauréat.abandon.usecase.annulerRejet,
- référencielPermissions.lauréat.abandon.command.annulerRejet,
- ],
},
recours: {
consulter: {
@@ -1010,7 +1002,6 @@ const adminPolicies: ReadonlyArray = [
'abandon.accorder',
'abandon.rejeter',
'abandon.demander-confirmation',
- 'abandon.annuler-rejet',
// Recours
'recours.consulter.liste',
diff --git "a/packages/specifications/src/projet/laur\303\251at/abandon/abandon.world.ts" "b/packages/specifications/src/projet/laur\303\251at/abandon/abandon.world.ts"
index 4db07700d3..ec7e984934 100644
--- "a/packages/specifications/src/projet/laur\303\251at/abandon/abandon.world.ts"
+++ "b/packages/specifications/src/projet/laur\303\251at/abandon/abandon.world.ts"
@@ -9,7 +9,6 @@ import { DemanderAbandonFixture } from './fixtures/demanderAbandon.fixture';
import { DemanderConfirmationAbandonFixture } from './fixtures/demanderConfirmationAbandon.fixture';
import { TransmettrePreuveRecandidatureAbandonFixture } from './fixtures/transmettrePreuveRecandidatureAbandon.fixture';
import { RejetAbandonFixture } from './fixtures/rejeterAbandonFixture';
-import { AnnulerRejetAbandonFixture } from './fixtures/annulerRejetAbandon.fixture';
import { DemanderPreuveRecandidatureAbandonFixture } from './fixtures/demanderPreuveRecandidature.fixture';
export class AbandonWord {
@@ -25,12 +24,6 @@ export class AbandonWord {
return this.#annulerAbandonFixture;
}
- #annulerRejetAbandonFixture: AnnulerRejetAbandonFixture;
-
- get annulerRejetAbandonFixture() {
- return this.#annulerRejetAbandonFixture;
- }
-
#confirmerAbandonFixture: ConfirmerAbandonFixture;
get confirmerAbandonFixture() {
@@ -70,7 +63,6 @@ export class AbandonWord {
constructor() {
this.#accorderAbandonFixture = new AccorderAbandonFixture();
this.#annulerAbandonFixture = new AnnulerAbandonFixture();
- this.#annulerRejetAbandonFixture = new AnnulerRejetAbandonFixture();
this.#confirmerAbandonFixture = new ConfirmerAbandonFixture();
this.#demanderAbandonFixture = new DemanderAbandonFixture();
this.#demanderConfirmationAbandonFixture = new DemanderConfirmationAbandonFixture();
@@ -83,7 +75,6 @@ export class AbandonWord {
reinitialiserEnDemande() {
this.#accorderAbandonFixture = new AccorderAbandonFixture();
this.#annulerAbandonFixture = new AnnulerAbandonFixture();
- this.#annulerRejetAbandonFixture = new AnnulerRejetAbandonFixture();
this.#confirmerAbandonFixture = new ConfirmerAbandonFixture();
this.#demanderConfirmationAbandonFixture = new DemanderConfirmationAbandonFixture();
this.#demanderPreuveCandidatureAbandonFixture = new DemanderPreuveRecandidatureAbandonFixture();
diff --git "a/packages/specifications/src/projet/laur\303\251at/abandon/annulerRejetAbandon.feature" "b/packages/specifications/src/projet/laur\303\251at/abandon/annulerRejetAbandon.feature"
deleted file mode 100644
index 1ae8f1788f..0000000000
--- "a/packages/specifications/src/projet/laur\303\251at/abandon/annulerRejetAbandon.feature"
+++ /dev/null
@@ -1,20 +0,0 @@
-# language: fr
-Fonctionnalité: Annuler le rejet d'un abandon d'un projet lauréat
-
- Contexte:
- Etant donné le projet lauréat "Du boulodrome de Marseille"
- Et le porteur "Marcel Patoulatchi" ayant accés au projet lauréat "Du boulodrome de Marseille"
-
- Scénario: Un DGEC validateur annule le rejet de l'abandon d'un projet lauréat
- Etant donné un abandon rejeté pour le projet lauréat
- Quand le DGEC validateur annule le rejet de l'abandon pour le projet lauréat
- Alors l'abandon du projet lauréat devrait être de nouveau demandé
-
- Scénario: Impossible d'annuler le rejet de l'abandon d'un projet lauréat si l'abandon a déjà été accordé
- Etant donné un abandon accordé pour le projet lauréat
- Quand le DGEC validateur annule le rejet de l'abandon pour le projet lauréat
- Alors le DGEC validateur devrait être informé que "L'abandon a déjà été accordé"
-
- Scénario: Impossible d'annuler l'abandon d'un projet lauréat si aucun abandon n'a été demandé
- Quand le DGEC validateur annule le rejet de l'abandon pour le projet lauréat
- Alors le DGEC validateur devrait être informé que "Aucun abandon n'est en cours"
diff --git "a/packages/specifications/src/projet/laur\303\251at/abandon/demanderAbandon.feature" "b/packages/specifications/src/projet/laur\303\251at/abandon/demanderAbandon.feature"
index 4123c32b5a..b4f2a5a8ce 100644
--- "a/packages/specifications/src/projet/laur\303\251at/abandon/demanderAbandon.feature"
+++ "b/packages/specifications/src/projet/laur\303\251at/abandon/demanderAbandon.feature"
@@ -24,6 +24,7 @@ Fonctionnalité: Demander l'abandon d'un projet lauréat
Quand le porteur demande l'abandon pour le projet lauréat
Alors le porteur devrait être informé que "L'abandon a déjà été accordé"
- @NotImplemented
- Scénario: Impossible de demander l'abandon d'un projet si celui-ci est achevé (car l'attestation de conformité et la preuve de transmission au co-contractant ont été transmise)
-
+ Scénario: Impossible de demander l'abandon d'un projet achevé
+ Etant donné une attestation de conformité transmise pour le projet lauréat
+ Quand le porteur demande l'abandon pour le projet lauréat
+ Alors le porteur devrait être informé que "Impossible de demander l'abandon d'un projet achevé"
diff --git "a/packages/specifications/src/projet/laur\303\251at/abandon/fixtures/annulerRejetAbandon.fixture.ts" "b/packages/specifications/src/projet/laur\303\251at/abandon/fixtures/annulerRejetAbandon.fixture.ts"
deleted file mode 100644
index 50a84ab9b1..0000000000
--- "a/packages/specifications/src/projet/laur\303\251at/abandon/fixtures/annulerRejetAbandon.fixture.ts"
+++ /dev/null
@@ -1,39 +0,0 @@
-import { faker } from '@faker-js/faker';
-
-import { AbstractFixture } from '../../../../fixture';
-
-interface AnnulerRejetAbandon {
- readonly annuléeLe: string;
- readonly annuléePar: string;
-}
-
-export class AnnulerRejetAbandonFixture
- extends AbstractFixture
- implements AnnulerRejetAbandon
-{
- #annuléeLe!: string;
-
- get annuléeLe(): string {
- return this.#annuléeLe;
- }
-
- #annuléePar!: string;
-
- get annuléePar(): string {
- return this.#annuléePar;
- }
-
- créer(partialFixture?: Partial>): Readonly {
- const fixture: AnnulerRejetAbandon = {
- annuléeLe: faker.date.soon().toISOString(),
- annuléePar: faker.internet.email(),
- ...partialFixture,
- };
-
- this.#annuléeLe = fixture.annuléeLe;
- this.#annuléePar = fixture.annuléePar;
-
- this.aÉtéCréé = true;
- return fixture;
- }
-}
diff --git "a/packages/specifications/src/projet/laur\303\251at/abandon/stepDefinitions/abandon.when.ts" "b/packages/specifications/src/projet/laur\303\251at/abandon/stepDefinitions/abandon.when.ts"
index ad86ff954f..949e65d993 100644
--- "a/packages/specifications/src/projet/laur\303\251at/abandon/stepDefinitions/abandon.when.ts"
+++ "b/packages/specifications/src/projet/laur\303\251at/abandon/stepDefinitions/abandon.when.ts"
@@ -111,29 +111,6 @@ Quand(
},
);
-Quand(
- `le DGEC validateur annule le rejet de l'abandon pour le projet lauréat`,
- async function (this: PotentielWorld) {
- try {
- const identifiantProjet = this.lauréatWorld.identifiantProjet.formatter();
-
- const { annuléeLe, annuléePar } =
- this.lauréatWorld.abandonWorld.annulerRejetAbandonFixture.créer();
-
- await mediator.send({
- type: 'Lauréat.Abandon.UseCase.AnnulerRejetAbandon',
- data: {
- identifiantProjetValue: identifiantProjet,
- dateAnnulationValue: annuléeLe,
- identifiantUtilisateurValue: annuléePar,
- },
- });
- } catch (error) {
- this.error = error as Error;
- }
- },
-);
-
Quand(
`le DGEC validateur demande une confirmation d'abandon pour le projet lauréat`,
async function (this: PotentielWorld) {
diff --git "a/packages/specifications/src/projet/laur\303\251at/ach\303\250vement/attestationConformit\303\251/modifierAttestationConformit\303\251.feature" "b/packages/specifications/src/projet/laur\303\251at/ach\303\250vement/attestationConformit\303\251/modifierAttestationConformit\303\251.feature"
index 5436320129..70ce4a8e08 100644
--- "a/packages/specifications/src/projet/laur\303\251at/ach\303\250vement/attestationConformit\303\251/modifierAttestationConformit\303\251.feature"
+++ "b/packages/specifications/src/projet/laur\303\251at/ach\303\250vement/attestationConformit\303\251/modifierAttestationConformit\303\251.feature"
@@ -5,7 +5,7 @@ Fonctionnalité: Modifier une attestation de conformité
Etant donné le projet lauréat "Centrale PV"
Scénario: Un porteur modifie une attestation de conformité
- Et une attestation de conformité transmise pour le projet "Centrale PV"
+ Et une attestation de conformité transmise pour le projet lauréat
Quand l'admin modifie l'attestation de conformité pour le projet "Centrale PV" avec :
| format attestation | application/pdf |
| contenu attestation | le nouveau contenu de l'attestation |
@@ -23,7 +23,7 @@ Fonctionnalité: Modifier une attestation de conformité
| mis à jour par | admin |
Scénario: Impossible de modifier une attestation de conformité si la date de transmission au co-contractant est dans le futur
- Et une attestation de conformité transmise pour le projet "Centrale PV"
+ Et une attestation de conformité transmise pour le projet lauréat
Quand l'admin modifie l'attestation de conformité pour le projet "Centrale PV" avec :
| date transmission au co-contractant | 2040-01-01 |
Alors le porteur devrait être informé que "la date de transmission au co-contractant ne peut pas être une date future"
diff --git "a/packages/specifications/src/projet/laur\303\251at/ach\303\250vement/attestationConformit\303\251/stepDefinitions/attestationConformit\303\251.given.ts" "b/packages/specifications/src/projet/laur\303\251at/ach\303\250vement/attestationConformit\303\251/stepDefinitions/attestationConformit\303\251.given.ts"
index 985bdee849..0313d93fce 100644
--- "a/packages/specifications/src/projet/laur\303\251at/ach\303\250vement/attestationConformit\303\251/stepDefinitions/attestationConformit\303\251.given.ts"
+++ "b/packages/specifications/src/projet/laur\303\251at/ach\303\250vement/attestationConformit\303\251/stepDefinitions/attestationConformit\303\251.given.ts"
@@ -7,9 +7,9 @@ import { PotentielWorld } from '../../../../../potentiel.world';
import { convertStringToReadableStream } from '../../../../../helpers/convertStringToReadable';
EtantDonné(
- 'une attestation de conformité transmise pour le projet {string}',
- async function (this: PotentielWorld, nomProjet: string) {
- const { identifiantProjet } = this.lauréatWorld.rechercherLauréatFixture(nomProjet);
+ 'une attestation de conformité transmise pour le projet lauréat',
+ async function (this: PotentielWorld) {
+ const { identifiantProjet } = this.lauréatWorld;
const attestationValue = {
content: convertStringToReadableStream('contenu par défaut'),
diff --git "a/packages/specifications/src/projet/laur\303\251at/ach\303\250vement/attestationConformit\303\251/transmettreAttestationConformit\303\251.feature" "b/packages/specifications/src/projet/laur\303\251at/ach\303\250vement/attestationConformit\303\251/transmettreAttestationConformit\303\251.feature"
index 0c4a9192b0..6ae550ad3f 100644
--- "a/packages/specifications/src/projet/laur\303\251at/ach\303\250vement/attestationConformit\303\251/transmettreAttestationConformit\303\251.feature"
+++ "b/packages/specifications/src/projet/laur\303\251at/ach\303\250vement/attestationConformit\303\251/transmettreAttestationConformit\303\251.feature"
@@ -64,7 +64,7 @@ Fonctionnalité: Transmettre une attestation de conformité
Alors le porteur devrait être informé que "la date de transmission au co-contractant ne peut pas être une date future"
Scénario: Impossible de transmettre une attestation de conformité si le projet a déjà une attestation de conformité
- Et une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Et une attestation de conformité transmise pour le projet lauréat
Quand le porteur transmet une attestation de conformité pour le projet lauréat "Du boulodrome de Marseille" avec :
| format attestation | application/pdf |
| contenu attestation | le contenu de l'attestation |
diff --git "a/packages/specifications/src/projet/laur\303\251at/actionnaire/demanderChangementActionnaire.feature" "b/packages/specifications/src/projet/laur\303\251at/actionnaire/demanderChangementActionnaire.feature"
index 21e8de84ea..4670068440 100644
--- "a/packages/specifications/src/projet/laur\303\251at/actionnaire/demanderChangementActionnaire.feature"
+++ "b/packages/specifications/src/projet/laur\303\251at/actionnaire/demanderChangementActionnaire.feature"
@@ -66,6 +66,6 @@ Fonctionnalité: Demander le changement de l'actionnaire d'un projet lauréat
Alors le porteur devrait être informé que "Impossible de demander le changement d'actionnaire car une demande d'abandon est en cours pour le projet"
Scénario: Impossible de demander le changement de l'actionnaire d'un projet achevé
- Etant donné une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Etant donné une attestation de conformité transmise pour le projet lauréat
Quand le porteur demande le changement de l'actionnaire pour le projet lauréat
Alors le porteur devrait être informé que "Impossible de demander le changement d'actionnaire pour un projet achevé"
diff --git "a/packages/specifications/src/projet/laur\303\251at/actionnaire/enregistrerChangementActionnaire.feature" "b/packages/specifications/src/projet/laur\303\251at/actionnaire/enregistrerChangementActionnaire.feature"
index cbfde74253..ad783eaf72 100644
--- "a/packages/specifications/src/projet/laur\303\251at/actionnaire/enregistrerChangementActionnaire.feature"
+++ "b/packages/specifications/src/projet/laur\303\251at/actionnaire/enregistrerChangementActionnaire.feature"
@@ -42,7 +42,7 @@ Fonctionnalité: Enregistrer un changement d'actionnaire d'un projet lauréat
Alors le porteur devrait être informé que "Impossible de demander le changement d'actionnaire car une demande d'abandon est en cours pour le projet"
Scénario: Impossible pour le porteur de modifier l'actionnaire d'un projet achevé
- Etant donné une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Etant donné une attestation de conformité transmise pour le projet lauréat
Quand le porteur enregistre un changement d'actionnaire pour le projet lauréat
Alors le porteur devrait être informé que "Impossible de demander le changement d'actionnaire pour un projet achevé"
diff --git "a/packages/specifications/src/projet/laur\303\251at/actionnaire/modifierActionnaire.feature" "b/packages/specifications/src/projet/laur\303\251at/actionnaire/modifierActionnaire.feature"
index 5dbe028781..5cc170fe0b 100644
--- "a/packages/specifications/src/projet/laur\303\251at/actionnaire/modifierActionnaire.feature"
+++ "b/packages/specifications/src/projet/laur\303\251at/actionnaire/modifierActionnaire.feature"
@@ -42,7 +42,7 @@ Fonctionnalité: Modifier l'actionnaire d'un projet lauréat
| la DREAL associée au projet |
Scénario: Modifier l'actionnaire d'un projet lauréat abandonné par une dreal ou un admin
- Etant donné une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Etant donné une attestation de conformité transmise pour le projet lauréat
Quand modifie l'actionnaire pour le projet lauréat
Alors l'actionnaire du projet lauréat devrait être mis à jour
Et un email a été envoyé au porteur avec :
diff --git "a/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/actuelles/modifierGarantiesFinanci\303\250resActuelles.feature" "b/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/actuelles/modifierGarantiesFinanci\303\250resActuelles.feature"
index c24e62e83e..5e3991a812 100644
--- "a/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/actuelles/modifierGarantiesFinanci\303\250resActuelles.feature"
+++ "b/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/actuelles/modifierGarantiesFinanci\303\250resActuelles.feature"
@@ -92,7 +92,7 @@ Fonctionnalité: Modifier des garanties financières actuelles
Alors l'utilisateur devrait être informé que "Il n'y a aucunes garanties financières actuelles pour ce projet"
Scénario: Impossible de modifier des garanties financières actuelles si les garanties financières du projet sont levées
- Etant donné une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Etant donné une attestation de conformité transmise pour le projet lauréat
Et des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
Et une demande de mainlevée de garanties financières accordée pour le projet "Du boulodrome de Marseille" achevé
Quand un admin modifie les garanties financières actuelles pour le projet "Du boulodrome de Marseille" avec :
diff --git "a/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/actuelles/\303\251choirGarantiesFinanci\303\250resActuelles.feature" "b/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/actuelles/\303\251choirGarantiesFinanci\303\250resActuelles.feature"
index 24711bd65b..bc09a70c0b 100644
--- "a/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/actuelles/\303\251choirGarantiesFinanci\303\250resActuelles.feature"
+++ "b/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/actuelles/\303\251choirGarantiesFinanci\303\250resActuelles.feature"
@@ -84,7 +84,7 @@ Fonctionnalité: Échoir les garanties financières actuelles d'un projet
Etant donné des garanties financières actuelles pour le projet "Du boulodrome de Marseille" avec :
| type GF | avec-date-échéance |
| date d'échéance | 2024-07-17 |
- Et une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Et une attestation de conformité transmise pour le projet lauréat
Quand un admin échoie les garanties financières actuelles pour le projet "Du boulodrome de Marseille" avec :
| date d'échéance | 2024-07-17 |
| date à vérifier | 2024-07-18 |
diff --git "a/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/d\303\251p\303\264t/soumettreD\303\251p\303\264tGarantiesFinanci\303\250res.feature" "b/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/d\303\251p\303\264t/soumettreD\303\251p\303\264tGarantiesFinanci\303\250res.feature"
index 6f55759824..c356716767 100644
--- "a/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/d\303\251p\303\264t/soumettreD\303\251p\303\264tGarantiesFinanci\303\250res.feature"
+++ "b/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/d\303\251p\303\264t/soumettreD\303\251p\303\264tGarantiesFinanci\303\250res.feature"
@@ -91,7 +91,7 @@ Fonctionnalité: Soumettre de nouvelles garanties financières
Alors l'utilisateur devrait être informé que "Il y a déjà des garanties financières en attente de validation pour ce projet"
Scénario: Impossible de soumettre un dépôt de garanties financières si une demande de mainlevée a été demandée
- Etant donné une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Etant donné une attestation de conformité transmise pour le projet lauréat
Et des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
Et une demande de mainlevée de garanties financières pour le projet "Du boulodrome de Marseille" avec :
| motif | projet-achevé |
@@ -100,7 +100,7 @@ Fonctionnalité: Soumettre de nouvelles garanties financières
Alors l'utilisateur devrait être informé que "Vous ne pouvez pas déposer de nouvelles garanties financières car vous avez une demande de mainlevée de garanties financières en cours"
Scénario: Impossible de soumettre un dépôt de garanties financières si une demande de mainlevée est en instruction
- Etant donné une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Etant donné une attestation de conformité transmise pour le projet lauréat
Et des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
Et une demande de mainlevée de garanties financières en instruction pour le projet "Du boulodrome de Marseille"
Quand un porteur soumet un dépôt de garanties financières pour le projet "Du boulodrome de Marseille" avec :
@@ -108,7 +108,7 @@ Fonctionnalité: Soumettre de nouvelles garanties financières
Alors l'utilisateur devrait être informé que "Vous ne pouvez pas déposer de nouvelles garanties financières car vous avez une mainlevée de garanties financières en cours d'instruction"
Scénario: Impossible de soumettre un dépôt de garanties financières si les garanties financières du projet sont levées
- Etant donné une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Etant donné une attestation de conformité transmise pour le projet lauréat
Et des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
Et une demande de mainlevée de garanties financières accordée pour le projet "Du boulodrome de Marseille" achevé
Quand un porteur soumet un dépôt de garanties financières pour le projet "Du boulodrome de Marseille" avec :
diff --git "a/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/mainlev\303\251e/accorderDemandeMainlev\303\251eGarantiesFinanci\303\250res.feature" "b/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/mainlev\303\251e/accorderDemandeMainlev\303\251eGarantiesFinanci\303\250res.feature"
index 30aabe4ee5..0ac2c6d166 100644
--- "a/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/mainlev\303\251e/accorderDemandeMainlev\303\251eGarantiesFinanci\303\250res.feature"
+++ "b/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/mainlev\303\251e/accorderDemandeMainlev\303\251eGarantiesFinanci\303\250res.feature"
@@ -24,7 +24,7 @@ Fonctionnalité: Accorder une demande de mainlevée des garanties financières
| contenu fichier réponse | contenu du fichier |
Scénario: Un utilisateur Dreal accorde une demande de mainlevée pour un projet achevé
- Etant donné une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Etant donné une attestation de conformité transmise pour le projet lauréat
Et des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
Et une demande de mainlevée de garanties financières pour le projet "Du boulodrome de Marseille" avec :
| motif | projet-achevé |
@@ -42,21 +42,21 @@ Fonctionnalité: Accorder une demande de mainlevée des garanties financières
| contenu fichier réponse | contenu du fichier |
Scénario: Impossible d'accorder une demande de mainlevée si le projet n'a pas de demande de mainlevée
- Etant donné une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Etant donné une attestation de conformité transmise pour le projet lauréat
Et des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
Quand un utilisateur Dreal accorde la demande de mainlevée des garanties financières du projet "Du boulodrome de Marseille"
Alors l'utilisateur devrait être informé que "Il n'y a pas de demande de mainlevée de garanties financières en cours pour ce projet"
Scénario: Impossible d'accorder une demande de mainlevée si le projet a déjà une demande de mainlevée accordée
Etant donné des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
- Et une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Et une attestation de conformité transmise pour le projet lauréat
Et une demande de mainlevée de garanties financières accordée pour le projet "Du boulodrome de Marseille" achevé
Quand un utilisateur Dreal accorde la demande de mainlevée des garanties financières du projet "Du boulodrome de Marseille"
Alors le porteur devrait être informé que "Il y a déjà une demande de mainlevée accordée pour ce projet"
Scénario: Impossible d'accorder une demande de mainlevée si le projet a déjà une demande de mainlevée rejetée et aucune en cours
Etant donné des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
- Et une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Et une attestation de conformité transmise pour le projet lauréat
Et une demande de mainlevée de garanties financières rejetée pour le projet "Du boulodrome de Marseille" achevé
Quand un utilisateur Dreal accorde la demande de mainlevée des garanties financières du projet "Du boulodrome de Marseille"
Alors le porteur devrait être informé que "La dernière demande de mainlevée pour ce projet a été rejetée, aucune n'est en cours"
diff --git "a/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/mainlev\303\251e/annulerDemandeMainlev\303\251eGarantiesFinanci\303\250res.feature" "b/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/mainlev\303\251e/annulerDemandeMainlev\303\251eGarantiesFinanci\303\250res.feature"
index 00456ba474..2da2db9ed1 100644
--- "a/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/mainlev\303\251e/annulerDemandeMainlev\303\251eGarantiesFinanci\303\250res.feature"
+++ "b/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/mainlev\303\251e/annulerDemandeMainlev\303\251eGarantiesFinanci\303\250res.feature"
@@ -5,7 +5,7 @@ Fonctionnalité: Annuler la mainlevée des garanties financières d'un projet
Etant donné le projet lauréat "Du boulodrome de Marseille"
Scénario: Un porteur annule la demande de mainlevée des garanties financières
- Etant donné une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Etant donné une attestation de conformité transmise pour le projet lauréat
Et des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
Et une demande de mainlevée de garanties financières pour le projet "Du boulodrome de Marseille" avec :
| motif | projet-achevé |
@@ -17,7 +17,7 @@ Fonctionnalité: Annuler la mainlevée des garanties financières d'un projet
Alors une demande de mainlevée de garanties financières ne devrait plus être consultable pour le projet "Du boulodrome de Marseille"
Scénario: Impossible d'annuler une demande de mainlevée des garanties financières si la demande de mainlevée n'existe pas
- Etant donné une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Etant donné une attestation de conformité transmise pour le projet lauréat
Et des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
Quand le porteur annule la demande de mainlevée des garanties financières pour le projet "Du boulodrome de Marseille" avec :
| utilisateur | porteur@test.test |
@@ -25,7 +25,7 @@ Fonctionnalité: Annuler la mainlevée des garanties financières d'un projet
Alors le porteur devrait être informé que "Il n'y a pas de demande de mainlevée pour ce projet"
Scénario: Impossible d'annuler une demande de mainlevée des garanties financières si la demande de mainlevée des garanties financières est rejetée
- Etant donné une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Etant donné une attestation de conformité transmise pour le projet lauréat
Et des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
Et une demande de mainlevée de garanties financières rejetée pour le projet "Du boulodrome de Marseille" achevé
Quand le porteur annule la demande de mainlevée des garanties financières pour le projet "Du boulodrome de Marseille" avec :
@@ -34,7 +34,7 @@ Fonctionnalité: Annuler la mainlevée des garanties financières d'un projet
Alors le porteur devrait être informé que "La demande de mainlevée a déjà été rejetée"
Scénario: Impossible d'annuler une demande de mainlevée des garanties financières si la demande de mainlevée des garanties financières est accordée
- Etant donné une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Etant donné une attestation de conformité transmise pour le projet lauréat
Et des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
Et une demande de mainlevée de garanties financières accordée pour le projet "Du boulodrome de Marseille" achevé
Quand le porteur annule la demande de mainlevée des garanties financières pour le projet "Du boulodrome de Marseille" avec :
@@ -43,7 +43,7 @@ Fonctionnalité: Annuler la mainlevée des garanties financières d'un projet
Alors le porteur devrait être informé que "La demande de mainlevée a déjà été accordée"
Scénario: Impossible d'annuler une demande de mainlevée des garanties financières si la demande de mainlevée des garanties financières est en instruction
- Etant donné une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Etant donné une attestation de conformité transmise pour le projet lauréat
Et des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
Et une demande de mainlevée de garanties financières en instruction pour le projet "Du boulodrome de Marseille"
Quand le porteur annule la demande de mainlevée des garanties financières pour le projet "Du boulodrome de Marseille" avec :
diff --git "a/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/mainlev\303\251e/demanderMainlev\303\251eGarantiesFinanci\303\250res.feature" "b/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/mainlev\303\251e/demanderMainlev\303\251eGarantiesFinanci\303\250res.feature"
index 6a2fae1537..30345ac38d 100644
--- "a/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/mainlev\303\251e/demanderMainlev\303\251eGarantiesFinanci\303\250res.feature"
+++ "b/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/mainlev\303\251e/demanderMainlev\303\251eGarantiesFinanci\303\250res.feature"
@@ -19,7 +19,7 @@ Fonctionnalité: Demander la mainlevée des garanties financières d'un projet
| statut | demandé |
Scénario: Un porteur demande la levée des garanties financières de son projet achevé
- Etant donné une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Etant donné une attestation de conformité transmise pour le projet lauréat
Et des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
Quand le porteur demande la mainlevée des garanties financières pour le projet "Du boulodrome de Marseille" avec :
| motif | projet-achevé |
@@ -50,13 +50,13 @@ Fonctionnalité: Demander la mainlevée des garanties financières d'un projet
Alors le porteur devrait être informé que "Il n'y a pas de garanties financières à lever pour ce projet"
Scénario: Impossible de demander la mainlevée des garanties financières d'un projet si les garanties financières sont manquantes pour un projet achevé
- Etant donné une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Etant donné une attestation de conformité transmise pour le projet lauréat
Quand le porteur demande la mainlevée des garanties financières pour le projet "Du boulodrome de Marseille" avec :
| motif | projet-achevé |
Alors le porteur devrait être informé que "Il n'y a pas de garanties financières à lever pour ce projet"
Scénario: Impossible de demander la mainlevée des garanties financières d'un projet s'il y a un dépôt de garanties financières pour le projet
- Etant donné une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Etant donné une attestation de conformité transmise pour le projet lauréat
Etant donné des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
Et un dépôt de garanties financières pour le projet "Du boulodrome de Marseille"
Quand le porteur demande la mainlevée des garanties financières pour le projet "Du boulodrome de Marseille" avec :
@@ -65,7 +65,7 @@ Fonctionnalité: Demander la mainlevée des garanties financières d'un projet
Scénario: Impossible de demander la mainlevée des garanties financières d'un projet si le projet a déjà une demande de mainlevée
Etant donné des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
- Et une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Et une attestation de conformité transmise pour le projet lauréat
Et une demande de mainlevée de garanties financières pour le projet "Du boulodrome de Marseille" avec :
| motif | projet-achevé |
Quand le porteur demande la mainlevée des garanties financières pour le projet "Du boulodrome de Marseille" avec :
@@ -74,7 +74,7 @@ Fonctionnalité: Demander la mainlevée des garanties financières d'un projet
Scénario: Impossible de demander la mainlevée des garanties financières d'un projet si le projet a déjà une demande de mainlevée en cours d'instruction
Etant donné des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
- Et une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Et une attestation de conformité transmise pour le projet lauréat
Et une demande de mainlevée de garanties financières en instruction pour le projet "Du boulodrome de Marseille"
Quand le porteur demande la mainlevée des garanties financières pour le projet "Du boulodrome de Marseille" avec :
| motif | projet-achevé |
@@ -82,7 +82,7 @@ Fonctionnalité: Demander la mainlevée des garanties financières d'un projet
Scénario: Impossible de demander la mainlevée des garanties financières d'un projet si le projet a déjà une demande de mainlevée accordée
Etant donné des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
- Et une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Et une attestation de conformité transmise pour le projet lauréat
Et une demande de mainlevée de garanties financières accordée pour le projet "Du boulodrome de Marseille" achevé
Quand le porteur demande la mainlevée des garanties financières pour le projet "Du boulodrome de Marseille" avec :
| motif | projet-achevé |
@@ -92,7 +92,7 @@ Fonctionnalité: Demander la mainlevée des garanties financières d'un projet
Etant donné des garanties financières actuelles échues pour le projet "Du boulodrome de Marseille" avec :
| date d'échéance | 2024-07-17 |
| type GF | avec-date-échéance |
- Et une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Et une attestation de conformité transmise pour le projet lauréat
Quand le porteur demande la mainlevée des garanties financières pour le projet "Du boulodrome de Marseille" avec :
| motif | projet-achevé |
| utilisateur | porteur@test.test |
@@ -108,7 +108,7 @@ Fonctionnalité: Demander la mainlevée des garanties financières d'un projet
Scénario: Impossible de demander la mainlevée des garanties financières d'un projet si l'attestation de constitution de garanties financières manque pour un projet achevé
Etant donné le projet lauréat "Du boulodrome de Lyon"
- Et une attestation de conformité transmise pour le projet "Du boulodrome de Lyon"
+ Et une attestation de conformité transmise pour le projet lauréat
Quand le porteur demande la mainlevée des garanties financières pour le projet "Du boulodrome de Lyon" avec :
| motif | projet-achevé |
Alors le porteur devrait être informé que "Votre demande n'a pas pu être enregistrée car l'attestation de constitution de vos garanties financières reste à transmettre dans Potentiel"
diff --git "a/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/mainlev\303\251e/d\303\251marrerInstructionDemandeMainlev\303\251eGarantiesFinanci\303\250res.feature" "b/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/mainlev\303\251e/d\303\251marrerInstructionDemandeMainlev\303\251eGarantiesFinanci\303\250res.feature"
index 6555ebe653..f109c29ffc 100644
--- "a/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/mainlev\303\251e/d\303\251marrerInstructionDemandeMainlev\303\251eGarantiesFinanci\303\250res.feature"
+++ "b/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/mainlev\303\251e/d\303\251marrerInstructionDemandeMainlev\303\251eGarantiesFinanci\303\250res.feature"
@@ -20,7 +20,7 @@ Fonctionnalité: Démarrer l'instruction d'une demande de mainlevée des garanti
| mise à jour par | dreal@test.test |
Scénario: Un utilisateur Dreal démarre l'instruction d'une demande de mainlevée pour un projet achevé
- Etant donné une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Etant donné une attestation de conformité transmise pour le projet lauréat
Et des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
Et une demande de mainlevée de garanties financières pour le projet "Du boulodrome de Marseille" avec :
| motif | projet-achevé |
@@ -40,21 +40,21 @@ Fonctionnalité: Démarrer l'instruction d'une demande de mainlevée des garanti
Scénario: Impossible de démarrer une instruction de demande de mainlevée si le projet a déjà une demande de mainlevée en cours d'instruction
Etant donné des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
- Et une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Et une attestation de conformité transmise pour le projet lauréat
Et une demande de mainlevée de garanties financières en instruction pour le projet "Du boulodrome de Marseille"
Quand un utilisateur Dreal démarre l'instruction de la demande de mainlevée des garanties financières du projet "Du boulodrome de Marseille"
Alors le porteur devrait être informé que "Il y a déjà une demande de mainlevée en instruction pour ce projet"
Scénario: Impossible de démarrer une instruction de demande de mainlevée si le projet a déjà une demande de mainlevée accordée
Etant donné des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
- Et une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Et une attestation de conformité transmise pour le projet lauréat
Et une demande de mainlevée de garanties financières accordée pour le projet "Du boulodrome de Marseille" achevé
Quand un utilisateur Dreal démarre l'instruction de la demande de mainlevée des garanties financières du projet "Du boulodrome de Marseille"
Alors le porteur devrait être informé que "Il y a déjà une demande de mainlevée accordée pour ce projet"
Scénario: Impossible de démarrer une instruction de demande de mainlevée si le projet a déjà une demande de mainlevée rejetée et aucune en cours
Etant donné des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
- Et une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Et une attestation de conformité transmise pour le projet lauréat
Et une demande de mainlevée de garanties financières rejetée pour le projet "Du boulodrome de Marseille" achevé
Quand un utilisateur Dreal démarre l'instruction de la demande de mainlevée des garanties financières du projet "Du boulodrome de Marseille" avec :
| utilisateur | dreal@test.test |
diff --git "a/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/mainlev\303\251e/rejeterDemandeMainlev\303\251eGarantiesFinanci\303\250res.feature" "b/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/mainlev\303\251e/rejeterDemandeMainlev\303\251eGarantiesFinanci\303\250res.feature"
index cd71beb3cd..d19efa28e3 100644
--- "a/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/mainlev\303\251e/rejeterDemandeMainlev\303\251eGarantiesFinanci\303\250res.feature"
+++ "b/packages/specifications/src/projet/laur\303\251at/garantiesFinanci\303\250res/mainlev\303\251e/rejeterDemandeMainlev\303\251eGarantiesFinanci\303\250res.feature"
@@ -28,7 +28,7 @@ Fonctionnalité: Rejeter une demande de mainlevée des garanties financières
| motif | projet-abandonné |
Scénario: Un utilisateur Dreal rejette une demande de mainlevée pour un projet achevé
- Etant donné une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Etant donné une attestation de conformité transmise pour le projet lauréat
Et des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
Et une demande de mainlevée de garanties financières pour le projet "Du boulodrome de Marseille" avec :
| motif | projet-achevé |
@@ -50,21 +50,21 @@ Fonctionnalité: Rejeter une demande de mainlevée des garanties financières
| motif | projet-achevé |
Scénario: Impossible de rejeter une demande de mainlevée si le projet n'a pas de demande de mainlevée
- Etant donné une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Etant donné une attestation de conformité transmise pour le projet lauréat
Et des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
Quand un utilisateur Dreal rejette une demande de mainlevée des garanties financières du projet "Du boulodrome de Marseille"
Alors l'utilisateur devrait être informé que "Il n'y a pas de demande de mainlevée de garanties financières en cours pour ce projet"
Scénario: Impossible de rejeter une demande de mainelevée si le projet a déjà une demande de mainlevée accordée
Etant donné des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
- Et une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Et une attestation de conformité transmise pour le projet lauréat
Et une demande de mainlevée de garanties financières accordée pour le projet "Du boulodrome de Marseille" achevé
Quand un utilisateur Dreal rejette une demande de mainlevée des garanties financières du projet "Du boulodrome de Marseille"
Alors le porteur devrait être informé que "Il y a déjà une demande de mainlevée accordée pour ce projet"
Scénario: Impossible de rejeter une demande de mainelevée si le projet a déjà une demande de mainlevée rejetée et aucune en cours
Etant donné des garanties financières actuelles pour le projet "Du boulodrome de Marseille"
- Et une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Et une attestation de conformité transmise pour le projet lauréat
Et une demande de mainlevée de garanties financières rejetée pour le projet "Du boulodrome de Marseille" achevé
Quand un utilisateur Dreal rejette une demande de mainlevée des garanties financières du projet "Du boulodrome de Marseille"
Alors le porteur devrait être informé que "La dernière demande de mainlevée pour ce projet a été rejetée, aucune n'est en cours"
diff --git "a/packages/specifications/src/projet/laur\303\251at/repr\303\251sentant-l\303\251gal/changement/demanderChangementRepr\303\251sentantL\303\251gal.feature" "b/packages/specifications/src/projet/laur\303\251at/repr\303\251sentant-l\303\251gal/changement/demanderChangementRepr\303\251sentantL\303\251gal.feature"
index e550b31379..86cb0dc965 100644
--- "a/packages/specifications/src/projet/laur\303\251at/repr\303\251sentant-l\303\251gal/changement/demanderChangementRepr\303\251sentantL\303\251gal.feature"
+++ "b/packages/specifications/src/projet/laur\303\251at/repr\303\251sentant-l\303\251gal/changement/demanderChangementRepr\303\251sentantL\303\251gal.feature"
@@ -40,7 +40,7 @@ Fonctionnalité: Demander le changement de représentant légal d'un projet laur
Alors le porteur devrait être informé que "Impossible de demander le changement de réprésentant légal car une demande d'abandon est en cours pour le projet"
Scénario: Impossible de demander le changement de représentant légal si le projet est achevé
- Etant donné une attestation de conformité transmise pour le projet "Du boulodrome de Marseille"
+ Etant donné une attestation de conformité transmise pour le projet lauréat
Quand le porteur demande le changement de réprésentant pour le projet lauréat
Alors le porteur devrait être informé que "Impossible de demander le changement de représentant légal pour un projet achevé"
diff --git "a/packages/specifications/src/projet/\303\251limin\303\251/recours/accorderRecours.feature" "b/packages/specifications/src/projet/\303\251limin\303\251/recours/accorderRecours.feature"
index fad77fcb0d..d7d5fedb63 100644
--- "a/packages/specifications/src/projet/\303\251limin\303\251/recours/accorderRecours.feature"
+++ "b/packages/specifications/src/projet/\303\251limin\303\251/recours/accorderRecours.feature"
@@ -5,7 +5,6 @@ Fonctionnalité: Accorder le recours d'un projet éliminé
Etant donné le projet éliminé "Du boulodrome de Marseille"
Et le porteur "Marcel Patoulatchi" ayant accés au projet éliminé "Du boulodrome de Marseille"
- @NotImplemented
Scénario: Un DGEC validateur accorde le recours d'un projet éliminé
Etant donné un recours en cours pour le projet éliminé
Quand le DGEC validateur accorde le recours pour le projet éliminé