From 08b2ea228dc42cee6e385d4d3631c3f450f25204 Mon Sep 17 00:00:00 2001 From: lwih Date: Mon, 20 Jan 2025 15:45:15 +0100 Subject: [PATCH] feat: add RapportNav as MissionSource --- .../domain/entities/mission/MissionSource.kt | 1 + frontend/cypress/mappings/get-missions.json | 29 +++++++++++++++++++ .../shared/ExternalActionsDialog.tsx | 20 +++++++++---- .../components/MissionList/constants.ts | 3 +- .../src/features/Mission/mission.types.ts | 6 ++-- 5 files changed, 50 insertions(+), 9 deletions(-) diff --git a/backend/src/main/kotlin/fr/gouv/cnsp/monitorfish/domain/entities/mission/MissionSource.kt b/backend/src/main/kotlin/fr/gouv/cnsp/monitorfish/domain/entities/mission/MissionSource.kt index 68a8fd36fa..7f502a6f39 100644 --- a/backend/src/main/kotlin/fr/gouv/cnsp/monitorfish/domain/entities/mission/MissionSource.kt +++ b/backend/src/main/kotlin/fr/gouv/cnsp/monitorfish/domain/entities/mission/MissionSource.kt @@ -5,4 +5,5 @@ enum class MissionSource { MONITORFISH, POSEIDON_CACEM, POSEIDON_CNSP, + RAPPORT_NAV, } diff --git a/frontend/cypress/mappings/get-missions.json b/frontend/cypress/mappings/get-missions.json index 3873e8b9c6..3070a13b3d 100644 --- a/frontend/cypress/mappings/get-missions.json +++ b/frontend/cypress/mappings/get-missions.json @@ -548,6 +548,35 @@ "envActions": [], "missionSource": "MONITORENV", "isUnderJdp": false + }, + { + "id": 50, + "missionTypes": ["SEA"], + "controlUnits": [ + { + "id": 10484, + "administration": "Douane", + "name": "BGC Lorient - DF 36 Kan An Avel", + "resources": [], + "contact": null, + "isArchived": false + } + ], + "openBy": "Michael Wilson", + "completedBy": "Michael Brooks", + "observationsCacem": "", + "observationsCnsp": null, + "facade": null, + "isGeometryComputedFromControls": false, + "geom": { + "type": "MultiPolygon", + "coordinates": [] + }, + "startDateTimeUtc": "2023-03-15T11:22:11.923703Z", + "endDateTimeUtc": "2023-03-20T12:14:02.923703Z", + "envActions": [], + "missionSource": "RAPPORT_NAV", + "isUnderJdp": false } ] } diff --git a/frontend/src/features/Mission/components/MissionForm/shared/ExternalActionsDialog.tsx b/frontend/src/features/Mission/components/MissionForm/shared/ExternalActionsDialog.tsx index 836cf398b7..f7e7720d76 100644 --- a/frontend/src/features/Mission/components/MissionForm/shared/ExternalActionsDialog.tsx +++ b/frontend/src/features/Mission/components/MissionForm/shared/ExternalActionsDialog.tsx @@ -9,6 +9,18 @@ type ExternalActionsModalProps = { export function ExternalActionsDialog({ onClose, sources }: ExternalActionsModalProps) { const isCACEM = sources.includes(Mission.MissionSource.MONITORENV) + const isRapportNav = sources.includes(Mission.MissionSource.RAPPORT_NAV) + + const getPersonToContact = () => { + if (isCACEM) { + return 'le CACEM' + } + if (isRapportNav) { + return "l'unité" + } + + return '' + } return ( @@ -17,13 +29,9 @@ export function ExternalActionsDialog({ onClose, sources }: ExternalActionsModal - {`La mission ne peut pas être supprimée, car elle comporte des événements ajoutés par ${ - isCACEM ? 'le CACEM' : '' - }.`} + {`La mission ne peut pas être supprimée, car elle comporte des événements ajoutés par ${getPersonToContact()}.`} - {`Si vous souhaitez tout de même la supprimer, veuillez contacter ${ - isCACEM ? 'le CACEM' : '' - } pour qu'il supprime d'abord + {`Si vous souhaitez tout de même la supprimer, veuillez contacter ${getPersonToContact()} pour qu'il supprime d'abord ses événements.`} diff --git a/frontend/src/features/Mission/components/MissionList/constants.ts b/frontend/src/features/Mission/components/MissionList/constants.ts index 55cd7a04ba..9fff400466 100644 --- a/frontend/src/features/Mission/components/MissionList/constants.ts +++ b/frontend/src/features/Mission/components/MissionList/constants.ts @@ -151,7 +151,8 @@ export const MISSION_SOURCE_LABEL: Record = { [Mission.MissionSource.MONITORENV]: 'CACEM', [Mission.MissionSource.MONITORFISH]: 'CNSP', [Mission.MissionSource.POSEIDON_CACEM]: 'CACEM (Poseidon)', - [Mission.MissionSource.POSEIDON_CNSP]: 'CNSP (Poseidon)' + [Mission.MissionSource.POSEIDON_CNSP]: 'CNSP (Poseidon)', + [Mission.MissionSource.RAPPORT_NAV]: 'RapportNav' } export const MISSION_TYPE_LABEL: Record = { diff --git a/frontend/src/features/Mission/mission.types.ts b/frontend/src/features/Mission/mission.types.ts index 4a79d5af0c..6c0e046894 100644 --- a/frontend/src/features/Mission/mission.types.ts +++ b/frontend/src/features/Mission/mission.types.ts @@ -35,13 +35,15 @@ export namespace Mission { MONITORENV = 'MONITORENV', MONITORFISH = 'MONITORFISH', POSEIDON_CACEM = 'POSEIDON_CACEM', - POSEIDON_CNSP = 'POSEIDON_CNSP' + POSEIDON_CNSP = 'POSEIDON_CNSP', + RAPPORT_NAV = 'RAPPORT_NAV' } export enum MissionSourceLabel { MONITORENV = 'CACEM', MONITORFISH = 'CNSP', POSEIDON_CACEM = 'CACEM (Poseidon)', - POSEIDON_CNSP = 'CNSP (Poseidon)' + POSEIDON_CNSP = 'CNSP (Poseidon)', + RAPPORT_NAV = 'RapportNav' } /* eslint-disable typescript-sort-keys/string-enum */