diff --git a/src/App.vue b/src/App.vue index 0108a96..e42face 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,40 +1,46 @@ diff --git a/src/components/MenuDownloadFile.vue b/src/components/MenuDownloadFile.vue index 17a7d3f..ee0ae7e 100644 --- a/src/components/MenuDownloadFile.vue +++ b/src/components/MenuDownloadFile.vue @@ -101,8 +101,8 @@ const isEnrichiAvailable = computed(() => (idEtatCurrentDemande.value >= 4 && props.demande.type === 'MODIF') || (idEtatCurrentDemande.value >= 5 && props.demande.type === 'SUPP') ) -const isResultatAvailable = computed(() => idEtatCurrentDemande.value >= 7 && idEtatCurrentDemande.value !== 8) -const isSauvegardeAvailable = computed(() => idEtatCurrentDemande.value >= 7) +const isResultatAvailable = computed(() => idEtatCurrentDemande.value >= 7 && idEtatCurrentDemande.value !== 8 && props.demande.pourcentageProgressionTraitement > 0) +const isSauvegardeAvailable = computed(() => idEtatCurrentDemande.value >= 7 && props.demande.pourcentageProgressionTraitement > 0) onMounted(() => { itemService.getEtatsDemande() diff --git a/src/components/Supp/BtnStop.vue b/src/components/Supp/BtnStop.vue new file mode 100644 index 0000000..6d866ff --- /dev/null +++ b/src/components/Supp/BtnStop.vue @@ -0,0 +1,25 @@ + + diff --git a/src/components/Supp/DialogConfirmationStop.vue b/src/components/Supp/DialogConfirmationStop.vue new file mode 100644 index 0000000..0f8c046 --- /dev/null +++ b/src/components/Supp/DialogConfirmationStop.vue @@ -0,0 +1,33 @@ + + diff --git a/src/plugins/vuetify.js b/src/plugins/vuetify.js index 5d0ef04..fffd9cf 100644 --- a/src/plugins/vuetify.js +++ b/src/plugins/vuetify.js @@ -44,7 +44,8 @@ const itemLightTheme = { disabled: '#808080', archived: '#795548', saisised: '#333333', - waited: '#EC6839' + waited: '#FFC400', + stopped: '#EC6839' }, variables: { 'border-color': '#000000', @@ -86,7 +87,8 @@ const itemDarkTheme = { disabled: '#808080', archived: '#795548', saisised: '#333333', - waited: '#EC6839' + waited: '#FFC400', + stopped: '#EC6839' }, variables: { 'border-color': '#FFFFFF', @@ -129,6 +131,7 @@ const itemRngTheme = { archived: generateRandomHexColor(), saisised: generateRandomHexColor(), waited: generateRandomHexColor(), + stopped: generateRandomHexColor() } } diff --git a/src/service/ItemService.js b/src/service/ItemService.js index 511018d..4635ebd 100644 --- a/src/service/ItemService.js +++ b/src/service/ItemService.js @@ -23,7 +23,6 @@ export class ItemService { } login(login, password) { - const url = import.meta.env.VITE_API_URL + `signin`; //console.info('appel:' + url); return this.client.post(`signin`, {username: login, password: password}) @@ -167,6 +166,10 @@ export class ItemService { return response.data }) } + + stopDemande(id) { + return this.client.patch('stopDemandeSupp/' + id); + } } export default new ItemService() diff --git a/src/views/Recouvrement/RecouvSteps.vue b/src/views/Recouvrement/RecouvSteps.vue index 8eecac5..5cb5392 100644 --- a/src/views/Recouvrement/RecouvSteps.vue +++ b/src/views/Recouvrement/RecouvSteps.vue @@ -63,28 +63,17 @@ - - - Traitement validé - Votre demande est en cours de traitement.
Un mail vous sera envoyé quand celui-ci sera - terminé. -
Vous pouvez retrouver l'ensemble de vos demandes sur votre tableau de bord ITEM. Rubrique "Gérer mes - taux de recouvrement". -
- - - - OK - -
-
+ + @@ -96,6 +85,7 @@ import itemService from '@/service/ItemService'; import router from '@/router'; import DialogSuppression from '@/components/Dialog/DialogSuppression.vue'; import RecapDemande from '@/components/RecapDemande.vue'; +import DialogLancerTraitement from '@/components/Dialog/DialogLancerTraitement.vue' const props = defineProps({id : {type: String}}); const emits = defineEmits(['backendError']); diff --git a/src/views/Suppression/SuppSteps.vue b/src/views/Suppression/SuppSteps.vue index a8275f8..d4e236a 100644 --- a/src/views/Suppression/SuppSteps.vue +++ b/src/views/Suppression/SuppSteps.vue @@ -140,7 +140,12 @@ - + diff --git a/src/views/Suppression/SuppTable.vue b/src/views/Suppression/SuppTable.vue index 13e6f8b..e67b014 100644 --- a/src/views/Suppression/SuppTable.vue +++ b/src/views/Suppression/SuppTable.vue @@ -91,6 +91,7 @@ Terminé Archivé En erreur + Annulé {{ item.etatDemande }} @@ -106,6 +107,7 @@ + @@ -125,6 +127,7 @@ import DialogCommentaire from '@/components/Dialog/DialogCommentaire.vue'; import MenuDownloadFile from '@/components/MenuDownloadFile.vue'; import moment from 'moment/moment'; import {useAuthStore} from "@/store/authStore"; +import BtnStop from "@/components/Supp/BtnStop.vue"; //Emit const emit = defineEmits(['backendError', 'backendSuccess']); @@ -230,7 +233,8 @@ const listStatut = [ 'En attente', 'En cours de traitement', 'Terminé', - 'En erreur' + 'En erreur', + 'Annulé' ]; const listTypeTraitement = ref([]); const contentsDemandesFromServer = ref([]); @@ -345,11 +349,15 @@ function isAvailableFile(demandeNumber, filename) { //Action d'archivage ou suppression selon état de la demande dans le TDB function canArchive(item) { - return item.etatDemande === 'Terminé'; + return item.etatDemande === 'Terminé' || item.etatDemande === 'Annulé'; } function canCancel(item) { - return item.etatDemande !== 'Terminé' && item.etatDemande !== 'En cours de traitement' && item.etatDemande !== 'En attente'; + return item.etatDemande !== 'Terminé' && item.etatDemande !== 'En cours de traitement' && item.etatDemande !== 'En attente' && item.etatDemande !== 'Annulé'; +} + +function canStop(item) { + return item.etatDemande === 'En cours de traitement' || item.etatDemande === 'En attente' } //Suppression d'une demande @@ -389,12 +397,12 @@ function throwError(error) { } function colorProgressBar(item) { - if (item.pourcentageProgressionTraitement === 100) { - if (item.etatDemande === 'Terminé') { - return 'success'; - } else if (item.etatDemande === 'En erreur') { - return 'error'; - } + if (item.etatDemande === 'Terminé') { + return 'success'; + } else if (item.etatDemande === 'En erreur') { + return 'error'; + } else if (item.etatDemande === 'Annulé') { + return 'stopped'; } return 'grey-lighten-1'; }