From fa961ebc3d852501f0fba34f3e4bf5c95414c422 Mon Sep 17 00:00:00 2001 From: cherif Date: Mon, 14 Aug 2023 16:37:39 +0200 Subject: [PATCH] 14/08/23 - 16h30 --- src/App.js | 2 +- src/components/DisplayPartnerSession.js | 626 ++++++++++-------- src/components/GestionAdministrative.js | 137 +++- src/components/Partner.js | 59 +- .../components/_displaypartnersession.scss | 14 +- .../_displaypartnertrainingpagination.scss | 144 +++- 6 files changed, 658 insertions(+), 324 deletions(-) diff --git a/src/App.js b/src/App.js index 7ddb71f..bb1cf14 100644 --- a/src/App.js +++ b/src/App.js @@ -77,7 +77,7 @@ function App() { - + diff --git a/src/components/DisplayPartnerSession.js b/src/components/DisplayPartnerSession.js index cf81523..160cf8f 100644 --- a/src/components/DisplayPartnerSession.js +++ b/src/components/DisplayPartnerSession.js @@ -22,7 +22,7 @@ import { Editor } from '@tinymce/tinymce-react'; import { IoArrowUndoCircle } from "react-icons/io5"; import { GrUserAdmin, GrOrderedList } from "react-icons/gr"; import parse from 'html-react-parser'; -import { FcViewDetails } from "react-icons/fc"; +import { FcViewDetails, FcDisapprove } from "react-icons/fc"; import 'react-tooltip/dist/react-tooltip.css' import { Tooltip } from 'react-tooltip' import add_plus from "../mysy_img/plus.png"; @@ -128,45 +128,6 @@ const DisplayPartnerSession = (props) => { { field: 'duration_unit', headerName: 'unité', width: 100, align: "center", flex: 1 }, - /* { - field: "management", headerName: 'Gestion', - renderCell: (cellValues) => { - return ( - - - - ); - } - }, - { - field: "Print", headerName: 'Editer', - renderCell: (cellValues) => { - return ( - - - - ); - } - },*/ - - - ] const columns_preinscrit = [ @@ -260,7 +221,7 @@ const DisplayPartnerSession = (props) => { -
MySy Info
+
MySy Information
{' '} @@ -306,10 +267,10 @@ const DisplayPartnerSession = (props) => { trigger={} modal @@ -321,7 +282,7 @@ const DisplayPartnerSession = (props) => { -
MySy Info
+
MySy Information
{' '} @@ -358,6 +319,66 @@ const DisplayPartnerSession = (props) => { + ); + } + }, + { + field: "delete", headerName: 'Supprimer', + renderCell: (cellValues) => { + return ( + + { + handleClick_delete(event, cellValues); + }} + > + + + } + modal + nested + position="center center" + > + {close => ( +
+ +
MySy Information
+
+ {' '} + + En confirmant cette opération, l'inscription du stagiaire sera définitivement supprimée.
+ +
+
+
+ + +
+
+ +
+
+
+ )} +
+ + ); } } @@ -462,7 +483,7 @@ const DisplayPartnerSession = (props) => { form.append(filtre2, filtre2_value); } - + const stored_cookie = getCookie('tokenmysypart'); form.append("token", stored_cookie); @@ -511,6 +532,10 @@ const DisplayPartnerSession = (props) => { var internal_url = cellValues.row.class_internal_url; setselected_internal_url(cellValues.row.class_internal_url); + + setselected_class_title(cellValues.row.title); + + setEdite_session("1"); submenu_detail_session(); @@ -534,6 +559,8 @@ const DisplayPartnerSession = (props) => { var internal_url = line.class_internal_url; setselected_internal_url(line.class_internal_url); + setselected_class_title(line.title); + setEdite_session("1"); submenu_detail_session(); @@ -571,10 +598,42 @@ const DisplayPartnerSession = (props) => { function submenu_preinscrit() { setsubmenu("preinscrit"); + + if (document.getElementById("preinscrit")) { + document.getElementById("preinscrit").style.backgroundColor = "#104277"; + document.getElementById("preinscrit").style.color = "white"; + } + + if (document.getElementById("detail_session")) { + document.getElementById("detail_session").style.backgroundColor = "#d8edfc"; + document.getElementById("detail_session").style.color = "black"; + } + + if (document.getElementById("inscrit")) { + document.getElementById("inscrit").style.backgroundColor = "#d8edfc"; + document.getElementById("inscrit").style.color = "black"; + } + } function submenu_inscrit() { setsubmenu("inscrit"); + + if (document.getElementById("inscrit")) { + document.getElementById("inscrit").style.backgroundColor = "#104277"; + document.getElementById("inscrit").style.color = "white"; + } + + if (document.getElementById("detail_session")) { + document.getElementById("detail_session").style.backgroundColor = "#d8edfc"; + document.getElementById("detail_session").style.color = "black"; + } + + if (document.getElementById("preinscrit")) { + document.getElementById("preinscrit").style.backgroundColor = "#d8edfc"; + document.getElementById("preinscrit").style.color = "black"; + } + } async function submenu_detail_session() { @@ -585,6 +644,21 @@ const DisplayPartnerSession = (props) => { desableSessionFields(); } + if (document.getElementById("detail_session")) { + document.getElementById("detail_session").style.backgroundColor = "#104277"; + document.getElementById("detail_session").style.color = "white"; + } + + if (document.getElementById("inscrit")) { + document.getElementById("inscrit").style.backgroundColor = "#d8edfc"; + document.getElementById("inscrit").style.color = "black"; + } + + if (document.getElementById("preinscrit")) { + document.getElementById("preinscrit").style.backgroundColor = "#d8edfc"; + document.getElementById("preinscrit").style.color = "black"; + } + } @@ -595,12 +669,15 @@ const DisplayPartnerSession = (props) => { var internal_url = cellValues.row.class_internal_url; setselected_internal_url(cellValues.row.class_internal_url); + setselected_class_title(cellValues.row.title); + GetListePreinscrit(cellValues.row.code_session, cellValues.row.class_internal_url); GetListeInscrit(cellValues.row.code_session, cellValues.row.class_internal_url); } const [selected_code_session, setselected_code_session] = useState(); const [selected_internal_url, setselected_internal_url] = useState(); + const [selected_class_title, setselected_class_title] = useState(); const [one_selected_internal_url, setone_selected_internal_url] = useState(); @@ -644,11 +721,12 @@ const DisplayPartnerSession = (props) => { //console.log('Success:', result['message']); setliste_participants_file_change_result(result['message']); setliste_participants_file_change_api("true"); - GetListePreinscrit(selected_code_session); - GetListeInscrit(selected_code_session); + GetListePreinscrit(selected_code_session, selected_internal_url); + GetListeInscrit(selected_code_session, selected_internal_url); alert(" Les stagiaires ont été correctement importés"); submenu_inscrit(); + } else if (String(result['status']) === String("Err_Connexion")) { alert('Erreur: ' + result['message']); history.push("/Connexion"); @@ -1250,6 +1328,62 @@ const DisplayPartnerSession = (props) => { }); } + const [DeleteStagiaireData_api, setDeleteStagiaireData_api] = useState(); + const [DeleteStagiaireData_message, setDeleteStagiaireData_message] = useState(); + const [DeleteStagiaireData_result, setDeleteStagiaireData_result] = useState(); + function DeleteStagiaireData(nom, prenom, email) { + + setSendInscriptionCancell_api(); + var form = new FormData(); + //form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA"); + + if (selected_code_session.length <= 0) { + alert(" Vous devez choisir une session"); + return; + } + const stored_cookie = getCookie('tokenmysypart'); + form.append("token", stored_cookie); + form.append("class_internal_url", selected_internal_url); + form.append("session_id", selected_code_session); + form.append("nom", nom); + form.append("prenom", prenom); + form.append("email", email); + + + var myurl = process.env.REACT_APP_API_URL + "myclass/api/DeleteAttendeeInscription/"; + + axios.post(myurl, form).then(res => { + //console.log(" In DeleteStagiaireData res.data.status = " + res.data.status); + //console.log(" In DeleteStagiaireData res.data.message r_class = " + res.data.message); + + if (String(res.data.status) === String("true")) { + setDeleteStagiaireData_api("true"); + setDeleteStagiaireData_result(res.data.message); + GetListePreinscrit(selected_code_session, selected_internal_url); + GetListeInscrit(selected_code_session, selected_internal_url); + + setretval_ch("1"); + alert(" La mise à jour été correctement faite.") + } + else { + setDeleteStagiaireData_api("false"); + setDeleteStagiaireData_message(res.data.message); + setretval_ch("-1"); + alert(res.data.message); + + } + + }).catch((error) => { + + console.warn('DeleteStagiaireData : Not good man :( mysearchtext = ' + error); + setDeleteStagiaireData_api("false"); + setretval_ch("-1"); + alert(" Impossible de supprimer le stagaire"); + }) + } + + + const [retval_ch, setretval_ch] = useState(); const [UpdateStagiaireData_api, setUpdateStagiaireData_api] = useState(); @@ -2678,6 +2812,18 @@ const DisplayPartnerSession = (props) => { } + function handleClick_delete(event, cellValues) { + // Recuperation du motif du refus : + + + var nom = cellValues.row.nom; + var email = cellValues.row.email; + var prenom = cellValues.row.prenom; + + DeleteStagiaireData(nom, prenom, email); + } + + const [p_one_nom_part, setp_one_nom_part] = useState(); const [p_one_prenom_part, setp_one_prenom_part] = useState(); const [p_one_email_part, setp_one_email_part] = useState(); @@ -3357,7 +3503,7 @@ const DisplayPartnerSession = (props) => { const [p_filtre2, setp_filtre2] = useState(); const [p_filtre2_value, setp_filtre2_value] = useState(); - function clean_all_filters(){ + function clean_all_filters() { setp_filtre1(); setp_filtre1_value(); setp_filtre2(); @@ -3372,7 +3518,7 @@ const DisplayPartnerSession = (props) => {

Vos sessions de formation

Utilisez les filtres !
-
+
{ disabled={false} className="disabled_style" value={p_filtre1_value} - onChange={(e) => {setp_filtre1_value(e.target.value); }} + onChange={(e) => { setp_filtre1_value(e.target.value); }} InputProps={{ endAdornment: ( @@ -3423,7 +3569,7 @@ const DisplayPartnerSession = (props) => {
{!!p_filtre1_value && -
+
{
} - +
@@ -3543,89 +3689,50 @@ const DisplayPartnerSession = (props) => { />
- - {/*selectionModel && selectionModel.length >= 1 && -
-
- -     - {actionmass_preinsc_val && - - Traiter - - } - modal - nested - position="center center" - > - - {close => ( -
- -
MySy Information
-
- {' '} - - Confirmer l'action {actionmass_preinsc_val} en masse. -
-
-
- - -
-
- -
-
-
- )} -
- } -
- -
- -
*/} - - -
- {/* */}
+ +
+ +
+ + + + + + + +
+ {session_file_name && } + {String(liste_sessions_file_change_api) === String("true") && } + {String(liste_sessions_file_change_api) === String("false") && } + + + + Télécharger un fichier modèle +
+
 
- -
- - - + + +
@@ -3634,40 +3741,6 @@ const DisplayPartnerSession = (props) => { {String(submenu) === String("detail_session") &&
-
- -
- - - - - - - -
- {session_file_name && } - {String(liste_sessions_file_change_api) === String("true") && } - {String(liste_sessions_file_change_api) === String("false") && } - - - - Télécharger un fichier modèle -
-
- {String(addOneSession) !== "1" &&
Formation
@@ -3720,7 +3793,8 @@ const DisplayPartnerSession = (props) => { disabled={false} className="disabled_style enable_style" value={p_session_ondemande} - onChange={(e) => setp_session_ondemande(e.target.value)} + onChange={(e) => {setp_session_ondemande(e.target.value); + IssessionChanged();}} > Oui    Non   @@ -3757,10 +3831,13 @@ const DisplayPartnerSession = (props) => { disabled={false} className="disabled_style enable_style" value={p_session_status} - onChange={(e) => setp_session_status(e.target.value)} + onChange={(e) => { + setp_session_status(e.target.value); + IssessionChanged();} + } > - Activer    - Désactiver   + Inactif    + Actif  
} @@ -3776,6 +3853,7 @@ const DisplayPartnerSession = (props) => { disabled={false} className="disabled_style enable_style" value={p_session_status_label} + /> @@ -3794,7 +3872,9 @@ const DisplayPartnerSession = (props) => { disabled={false} className="disabled_style enable_style" value={p_session_etape} - onChange={(e) => setp_session_etape(e.target.value)} + onChange={(e) => {setp_session_etape(e.target.value); + IssessionChanged(); + }} > Projet    Planification   @@ -3835,6 +3915,7 @@ const DisplayPartnerSession = (props) => { onChange={(date) => { setSessionstartDate(date); setsessionChanged(true); + IssessionChanged(); } } showTimeSelect={false} @@ -3855,6 +3936,7 @@ const DisplayPartnerSession = (props) => { onChange={(date) => { setSessionendDate(date); setsessionChanged(true); + IssessionChanged(); } } showTimeSelect={false} @@ -3874,6 +3956,7 @@ const DisplayPartnerSession = (props) => { onChange={(date) => { setSessionstartDateInscription(date); setsessionChanged(true); + IssessionChanged(); } } @@ -3896,6 +3979,7 @@ const DisplayPartnerSession = (props) => { onChange={(date) => { setSessionendDateInscription(date); setsessionChanged(true); + IssessionChanged(); } } showTimeSelect={false} @@ -3918,7 +4002,9 @@ const DisplayPartnerSession = (props) => { disabled={false} className="disabled_style" value={p_session_presentiel} - onChange={(e) => setp_session_presentiel(e.target.value)} + onChange={(e) => {setp_session_presentiel(e.target.value); + IssessionChanged();} + } > Oui    Non   @@ -3955,7 +4041,9 @@ const DisplayPartnerSession = (props) => { disabled={false} className="disabled_style" value={p_session_distance} - onChange={(e) => setp_session_distance(e.target.value)} + onChange={(e) => {setp_session_distance(e.target.value); + IssessionChanged();} + } > Oui    Non   @@ -4078,7 +4166,9 @@ const DisplayPartnerSession = (props) => { disabled={false} className="disabled_style" value={p_nb_participant} - onChange={(e) => setp_nb_participant(e.target.value)} + onChange={(e) => {setp_nb_participant(e.target.value); + IssessionChanged();} + } />
@@ -4095,7 +4185,8 @@ const DisplayPartnerSession = (props) => { disabled={false} className="disabled_style" value={p_prix_session} - onChange={(e) => setp_prix_session(e.target.value)} + onChange={(e) => {setp_prix_session(e.target.value); + IssessionChanged();}} />
@@ -4265,7 +4356,8 @@ const DisplayPartnerSession = (props) => { disabled={false} className="disabled_style enable_style" value={p_one_session_ondemande} - onChange={(e) => setp_one_session_ondemande(e.target.value)} + onChange={(e) => {setp_one_session_ondemande(e.target.value); + }} > Oui    @@ -4288,8 +4380,8 @@ const DisplayPartnerSession = (props) => { value={p_one_session_status} onChange={(e) => setp_one_session_status(e.target.value)} > - Activer    - Désactiver   + Inactif    + Actif  
@@ -4653,42 +4745,10 @@ const DisplayPartnerSession = (props) => { {String(submenu) === String("preinscrit") &&
- {String(addOneParticipant) !== "1" && selected_code_session && selected_internal_url &&
- - - -
- Télécharger un fichier modèle -
- - {participant_file_name}
- {String(liste_participants_file_change_api) === String("true") && } - {String(liste_participants_file_change_api) === String("false") && } - - - - -
} {String(addOneParticipant) === "1" &&
-
Ajout d'un nouveau participant a la session {selected_code_session} de la formation {selected_internal_url}
+
Ajout d'un nouveau participant a la session {selected_code_session} de la formation {selected_class_title}
Nom *
{ components={{ Toolbar: GridToolbar, }} - - /> -
- {selectionModel_preinsc && selectionModel_preinsc.length >= 1 &&
@@ -4911,85 +4967,51 @@ const DisplayPartnerSession = (props) => {
} - -
- {/* */} + + {String(addOneParticipant) !== "1" && selected_code_session && selected_internal_url &&
+ + + + +
+ Télécharger un fichier modèle +
+ + {participant_file_name}
+ {String(liste_participants_file_change_api) === String("true") && } + {String(liste_participants_file_change_api) === String("false") && } + + + + +
} +
} +
} {String(submenu) === String("inscrit") &&
{String(addOneParticipant) !== "1" && selected_code_session && selected_internal_url &&
- {selected_code_session && selected_internal_url &&
- - - - -
- Télécharger un fichier modèle -
- - {participant_file_name}
- {String(liste_participants_file_change_api) === String("true") && } - {String(liste_participants_file_change_api) === String("false") && } - - - - -
} - - {!selected_code_session && !selected_internal_url &&
- - - - -
- Télécharger un fichier modèle -
- - {participant_file_name}
- {String(liste_participants_file_change_api) === String("true") && } - {String(liste_participants_file_change_api) === String("false") && } - - - - -
} {String(addOneParticipant) === "1" &&
Ajout d'un nouveau participant
@@ -5116,7 +5138,8 @@ const DisplayPartnerSession = (props) => {
} {String(addOneParticipant) === "1" &&
-
Ajout d'un nouveau participant a la session {selected_code_session} de la formation {selected_internal_url}
+
Ajout d'un nouveau participant a la session {selected_code_session} de la formation {selected_class_title}
+
Nom *
{ /> -
+ {selectionModel_insc && selectionModel_insc.length >= 1 &&
@@ -5340,7 +5363,42 @@ const DisplayPartnerSession = (props) => { }
- {/* */} + + {String(addOneParticipant) !== "1" && selected_code_session && selected_internal_url &&
+ + + + +
+ Télécharger un fichier modèle +
+ + {participant_file_name}
+ {String(liste_participants_file_change_api) === String("true") && } + {String(liste_participants_file_change_api) === String("false") && } + + + + +
} + +
} diff --git a/src/components/GestionAdministrative.js b/src/components/GestionAdministrative.js index 2b30330..bad9c90 100644 --- a/src/components/GestionAdministrative.js +++ b/src/components/GestionAdministrative.js @@ -28,7 +28,7 @@ import fileDownload from 'js-file-download' import { ConsoleView } from "react-device-detect"; import { confirmAlert } from 'react-confirm-alert'; import SendIcon from '@mui/icons-material/Send'; -import { FcViewDetails } from "react-icons/fc"; +import { FcViewDetails, FcDisapprove } from "react-icons/fc"; import parse from 'html-react-parser' import { Editor } from '@tinymce/tinymce-react'; import { FcAddImage } from "react-icons/fc"; @@ -81,7 +81,7 @@ function GestionAdministrative(props) { -
MySy Info
+
MySy Information
{' '} @@ -139,7 +139,7 @@ function GestionAdministrative(props) { -
MySy Info
+
MySy Information
{' '} @@ -188,7 +188,7 @@ function GestionAdministrative(props) { handleClick_refuse(event, cellValues); }} > - + } modal @@ -200,7 +200,7 @@ function GestionAdministrative(props) { -
MySy Info
+
MySy Information
{' '} @@ -237,6 +237,66 @@ function GestionAdministrative(props) { + ); + } + }, + { + field: "delete", headerName: 'Supprimer', + renderCell: (cellValues) => { + return ( + + { + handleClick_delete(event, cellValues); + }} + > + + + } + modal + nested + position="center center" + > + {close => ( +
+ +
MySy Information
+
+ {' '} + + En confirmant cette opération, l'inscription du stagiaire sera définitivement supprimée.
+ +
+
+
+ + +
+
+ +
+
+
+ )} +
+ + ); } } @@ -372,6 +432,71 @@ function GestionAdministrative(props) { ] + function handleClick_delete(event, cellValues) { + // Recuperation du motif du refus : + + + var nom = cellValues.row.nom; + var email = cellValues.row.email; + var prenom = cellValues.row.prenom; + + DeleteStagiaireData(nom, prenom, email); + } + + + const [DeleteStagiaireData_api, setDeleteStagiaireData_api] = useState(); + const [DeleteStagiaireData_message, setDeleteStagiaireData_message] = useState(); + const [DeleteStagiaireData_result, setDeleteStagiaireData_result] = useState(); + function DeleteStagiaireData(nom, prenom, email) { + + setSendInscriptionCancell_api(); + var form = new FormData(); + //form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA"); + + if (mysession.length <= 0) { + alert(" Vous devez choisir une session"); + return; + } + const stored_cookie = getCookie('tokenmysypart'); + form.append("token", stored_cookie); + form.append("class_internal_url", internal_url); + form.append("session_id", mysession); + form.append("nom", nom); + form.append("prenom", prenom); + form.append("email", email); + + + var myurl = process.env.REACT_APP_API_URL + "myclass/api/DeleteAttendeeInscription/"; + + axios.post(myurl, form).then(res => { + //console.log(" In DeleteStagiaireData res.data.status = " + res.data.status); + //console.log(" In DeleteStagiaireData res.data.message r_class = " + res.data.message); + + if (String(res.data.status) === String("true")) { + setDeleteStagiaireData_api("true"); + setDeleteStagiaireData_result(res.data.message); + GetListePreinscrit(mysession); + + setretval_ch("1"); + alert(" La mise à jour été correctement faite.") + } + else { + setDeleteStagiaireData_api("false"); + setDeleteStagiaireData_message(res.data.message); + setretval_ch("-1"); + alert(res.data.message); + + } + + }).catch((error) => { + + console.warn('DeleteStagiaireData : Not good man :( mysearchtext = ' + error); + setDeleteStagiaireData_api("false"); + setretval_ch("-1"); + alert(" Impossible de supprimer le stagaire"); + }) + } + const [UpdateStagiaireEmargement_api, setUpdateStagiaireEmargement_api] = useState(); const [UpdateStagiaireEmargement_message, setUpdateStagiaireEmargement_message] = useState(); @@ -5329,7 +5454,7 @@ function GestionAdministrative(props) { "background": "#c8cfd5", "color": "black", "width": "auto" }} - id='menu_import_participant' name='menu_import_participant'>Choisir un fichier et Importer les participants   + id='menu_import_participant' name='menu_import_participant'>Importer des participants excel   ajout csv