diff --git a/src/components/DisplayPartnerSession.js b/src/components/DisplayPartnerSession.js index 3c161cf..2a5b9c6 100644 --- a/src/components/DisplayPartnerSession.js +++ b/src/components/DisplayPartnerSession.js @@ -63,8 +63,9 @@ const DisplayPartnerSession = (props) => { const columns = [ { field: 'id', headerName: 'id', hide: true }, { field: 'class_internal_url', headerName: 'class_internal_url', hide: true }, - { field: 'code_session', headerName: 'code session', hide: false }, - { field: 'date_debut', headerName: 'date debut', hide: false }, + { field: 'code_session', headerName: 'Code session', hide: false }, + { field: 'statut', headerName: 'Statut', hide: false }, + { field: 'date_debut', headerName: 'Date debut', hide: false }, { field: 'date_fin', headerName: 'Datefin', width: 100, hideable: false, flex: 1 }, { field: 'distantiel', headerName: 'Distantiel', width: 100, hideable: false, flex: 1 }, { field: 'presentiel', headerName: 'Presentiel', width: 150, flex: 1 }, @@ -421,7 +422,6 @@ const DisplayPartnerSession = (props) => { const [Edite_session, setEdite_session] = useState(); /* Envoi de l'envoi de l'email de confirmation de la validation de l'inscription */ function handleClick_edit_session(event, cellValues) { - var email = cellValues.row.email; var code_session = cellValues.row.code_session; @@ -433,11 +433,34 @@ const DisplayPartnerSession = (props) => { setEdite_session("1"); submenu_detail_session(); - //GetListePreinscrit(cellValues.row.code_session, cellValues.row.class_internal_url); - //GetListeInscrit(cellValues.row.code_session, cellValues.row.class_internal_url); GetCurrentSession(cellValues.row.code_session, cellValues.row.class_internal_url); + GetListePreinscrit(cellValues.row.code_session, cellValues.row.class_internal_url); + + GetListeInscrit(cellValues.row.code_session, cellValues.row.class_internal_url); + } + + + function handleClick_edit_session_From_Line(selected_row_id) { + + var line = JSON.parse(rowss[selected_row_id]); + + var code_session = line.code_session; + setselected_code_session(line.code_session); + + var internal_url = line.class_internal_url; + setselected_internal_url(line.class_internal_url); + + setEdite_session("1"); + submenu_detail_session(); + + + GetCurrentSession(line.code_session, line.class_internal_url); + + GetListePreinscrit(line.code_session, line.class_internal_url); + + GetListeInscrit(line.code_session, line.class_internal_url); } @@ -473,8 +496,15 @@ const DisplayPartnerSession = (props) => { setsubmenu("inscrit"); } - function submenu_detail_session() { + async function submenu_detail_session() { setsubmenu("detail_session"); + + await sleep(5); + if (!edit_session_form) { + desableSessionFields(); + } + + } function handleClickSessionManagement(event, cellValues) { @@ -603,6 +633,10 @@ const DisplayPartnerSession = (props) => { const hiddenFileInput = React.useRef(null); /* Recuperation de la liste des inscrits */ + + const [nb_stagiaire_Inscrit, setnb_stagiaire_Inscrit] = useState("0"); + + const [selectionModel_insc, setSelectionModel_insc] = React.useState([]); const [rowss_insc, setRows_insc] = useState([]); const [rowss_preinsc, setRows_preinsc] = useState([]); @@ -645,6 +679,7 @@ const DisplayPartnerSession = (props) => { if (String(data['status']) === String("true")) { //console.log("erreur rrrr:" + data['status']) setGetListePreinscrit_insc_api("true"); + setnb_stagiaire_Inscrit(data['message'].length) } else if (String(data['status']) === String("Err_Connexion")) { alert('Erreur: ' + data['message']); @@ -777,6 +812,8 @@ const DisplayPartnerSession = (props) => { } + const [nb_stagiaire_Preinscrit, setnb_stagiaire_Preinscrit] = useState("0"); + const [GetListePreinscrit_api, setGetListePreinscrit_api] = useState(); const [GetListePreinscrit_meassage, setGetListePreinscrit_meassage] = useState(); const [GetListePreinscrit_result, setGetListePreinscrit_result] = useState([]) @@ -790,7 +827,7 @@ const DisplayPartnerSession = (props) => { form.append("session_id", localsessionid); form.append("status", "0"); - console.log(" ### localsessionid = ", localsessionid, " -- class_internal_url = ", class_internal_url); + //console.log(" ### localsessionid = ", localsessionid, " -- class_internal_url = ", class_internal_url); /* /!\ : Cette fonction a besoin d'un token actif @@ -816,12 +853,15 @@ const DisplayPartnerSession = (props) => { //console.log('Success:', data['message'], "data['status'] = ", data['status']); setGetListePreinscrit_result(data['message']); setRows_preinsc(data['message']); + + //console.log(" #### LENGHT GetListePreinscrit = ", data['message'].length); if (String(data['status']) === String("Err_Connexion")) { alert('Erreur: ' + data['message']); history.push("/Connexion"); } else if (String(data['status']) === String("true")) { setGetListePreinscrit_api("true"); + setnb_stagiaire_Preinscrit(data['message'].length) } else { @@ -1089,7 +1129,7 @@ const DisplayPartnerSession = (props) => { } - await sleep(100); + await sleep(5); } @@ -1348,6 +1388,12 @@ const DisplayPartnerSession = (props) => { document.getElementsByName("code_session")[0].disabled = true; document.getElementsByName("code_session")[0].style.backgroundColor = "#ECEFF1"; + document.getElementsByName("session_status")[0].disabled = true; + document.getElementsByName("session_status")[0].style.backgroundColor = "#ECEFF1"; + + document.getElementsByName("session_etape")[0].disabled = true; + document.getElementsByName("session_etape")[0].style.backgroundColor = "#ECEFF1"; + document.getElementsByName("sessiondatedebut")[0].disabled = true; document.getElementsByName("sessiondatedebut")[0].style.backgroundColor = "#ECEFF1"; @@ -1398,9 +1444,17 @@ const DisplayPartnerSession = (props) => { function enableSessionFields() { setedit_session_form(true); + document.getElementsByName("code_session")[0].disabled = false; document.getElementsByName("code_session")[0].style.backgroundColor = "#FFFFFF"; + document.getElementsByName("session_status")[0].disabled = false; + document.getElementsByName("session_status")[0].style.backgroundColor = "#FFFFFF"; + + document.getElementsByName("session_etape")[0].disabled = false; + document.getElementsByName("session_etape")[0].style.backgroundColor = "#FFFFFF"; + + document.getElementsByName("sessiondatedebut")[0].disabled = false; document.getElementsByName("sessiondatedebut")[0].style.backgroundColor = "#FFFFFF"; @@ -1447,9 +1501,24 @@ const DisplayPartnerSession = (props) => { } function clearSessionFields() { - document.getElementsByName("code_session")[0].value = ""; - document.getElementsByName("sessiondatedebut")[0].value = ""; - document.getElementsByName("sessiondatefin")[0].value = ""; + + if (document.getElementsByName("sessiondatedebut")[0]) + document.getElementsByName("code_session")[0].value = ""; + + if (document.getElementsByName("sessiondatedebut")[0]) + document.getElementsByName("sessiondatedebut")[0].value = ""; + + if (document.getElementsByName("sessiondatefin")[0]) + document.getElementsByName("sessiondatefin")[0].value = ""; + + if (document.getElementsByName("session_status")[0]) + document.getElementsByName("session_status")[0].value = ""; + + if (document.getElementsByName("session_etape")[0]) + document.getElementsByName("session_etape")[0].value = ""; + + + if (document.getElementsByName("adresse")[0]) document.getElementsByName("adresse")[0].value = ""; @@ -1486,6 +1555,29 @@ const DisplayPartnerSession = (props) => { setSessionstartDate(); seturlpreview_certif(); setfield_contenu_ftion(); + + + setp_myclass_title(); + setp_code_session(); + setp_adresse(); + setp_ville(); + setp_formateur(); + setp_lms_class_code(); + setp_nb_participant(); + setp_prix_session(); + setp_session_etape_label(); + setp_session_etape(); + setp_session_status_label(); + setp_session_status(); + setp_session_presentiel_label(); + setp_session_presentiel(); + setp_session_distance_label(); + setp_session_distance(); + setp_session_ondemande_label(); + setp_session_ondemande(); + + + } @@ -1548,7 +1640,7 @@ const DisplayPartnerSession = (props) => { alert(" Vous devez choisir une formation "); return; } - console.log(" one_myclass_internal_url = ", selected_internal_url); + // console.log(" one_myclass_internal_url = ", selected_internal_url); @@ -1557,6 +1649,16 @@ const DisplayPartnerSession = (props) => { return; } + var new_code_session = "" + if (document.getElementById("code_session") && document.getElementById("code_session").value != "") { + new_code_session = document.getElementById("code_session").value; + } + if (new_code_session.trim() == "") { + alert(" Le code session est obligatoire"); + return; + } + + nb_participant = "" if (document.getElementById("nb_participant") && document.getElementById("nb_participant").value != "") { nb_participant = document.getElementById("nb_participant").value; @@ -1637,8 +1739,9 @@ const DisplayPartnerSession = (props) => { //form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA"); const stored_cookie = getCookie('tokenmysypart'); form.append("token", stored_cookie); + form.append("session_id", GetCurrentSession_id); form.append("class_internal_url", selected_internal_url); - form.append("formation_session_id", selected_code_session); + form.append("formation_session_id", new_code_session); form.append("date_debut", format(SessionstartDate, 'dd/MM/yyyy kk:mm:ss')); form.append("date_fin", format(SessionendDate, 'dd/MM/yyyy kk:mm:ss')); form.append("prix_session", prix_session); @@ -1652,11 +1755,12 @@ const DisplayPartnerSession = (props) => { form.append("code_session", code_session); form.append("formateur", formateur); form.append("lms_class_code", lms_class_code); - form.append("session_status", sessionStatus); form.append("date_debut_inscription", format(SessionstartDateInscription, 'dd/MM/yyyy kk:mm:ss')); form.append("date_fin_inscription", format(SessionendDateInscription, 'dd/MM/yyyy kk:mm:ss')); form.append("attestation_certif", selectedCertif); + form.append("session_status", p_session_status); + form.append("session_etape", p_session_etape); var contenu_ftion = ""; if (editorRef_contenu_ftion.current) { contenu_ftion = editorRef_contenu_ftion.current.getContent(); @@ -1683,8 +1787,8 @@ const DisplayPartnerSession = (props) => { setCreateSessionFormation_result(res.data.message); setsessionChanged(false); desableSessionFields(); - GetCurrentClass_trainingsession(); - alert(" La session a été mise à jour"); + GetCurrentSession(selected_code_session, selected_internal_url); + alert(String(res.data.message)); } else if (String(res.data.status) === String("Err_Connexion")) { alert('Erreur: ' + res.data.message); @@ -1693,7 +1797,7 @@ const DisplayPartnerSession = (props) => { else { setCreateSessionFormation_api("false"); setCreateSessionFormation_message(res.data.message); - alert(res.data.message) + alert("Erreur : " + String(res.data.message)); } }).catch((error) => { @@ -1841,8 +1945,6 @@ const DisplayPartnerSession = (props) => { } - - //form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA"); const stored_cookie = getCookie('tokenmysypart'); form.append("token", stored_cookie); @@ -1894,7 +1996,7 @@ const DisplayPartnerSession = (props) => { alert(" La session a été correctement ajoutée"); One_clearSessionFields(); setaddOneSession(); - GetCurrentPartnerClass(); + GetCurrentSession(selected_code_session, one_myclass_internal_url); } else if (String(res.data.status) === String("Err_Connexion")) { alert('Erreur: ' + res.data.message); @@ -1953,13 +2055,24 @@ const DisplayPartnerSession = (props) => { const [p_session_presentiel, setp_session_presentiel] = useState("0"); const [p_session_presentiel_label, setp_session_presentiel_label] = useState(""); + const [p_session_status, setp_session_status] = useState(); + const [p_session_status_label, setp_session_status_label] = useState(); + const [p_session_etape, setp_session_etape] = useState(); + const [p_session_etape_label, setp_session_etape_label] = useState(); + + + const [GetCurrentSession_id, setGetCurrentSession_id] = useState(); + const [GetCurrentSession_api, setGetCurrentSession_api] = useState(); const [GetCurrentSession_message, setGetCurrentSession_message] = useState(); const [GetCurrentSession_result, setGetCurrentSession_result] = useState(); function GetCurrentSession(local_session_id, local_selected_internal_url) { + clean_old_messages(); + clearSessionFields(); + var form = new FormData(); //form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA"); const stored_cookie = getCookie('tokenmysypart'); @@ -1981,6 +2094,37 @@ const DisplayPartnerSession = (props) => { setGetCurrentSession_result(res.data.message); var mylocaltraining = JSON.parse(res.data.message); + if (mylocaltraining._id) { + setGetCurrentSession_id(mylocaltraining._id); + } + + if (mylocaltraining.session_status) { + setp_session_status(mylocaltraining.session_status); + if (String(mylocaltraining.session_status) === "1") + setp_session_status_label("Actif"); + else + setp_session_status_label("Inactif"); + } + + if (mylocaltraining.session_etape) { + setp_session_etape(mylocaltraining.session_etape); + + if (String(mylocaltraining.session_etape) === "0") + setp_session_etape_label("Projet"); + else if (String(mylocaltraining.session_etape) === "1") + setp_session_etape_label("Planification"); + else if (String(mylocaltraining.session_etape) === "2") + setp_session_etape_label("Planifiée"); + else if (String(mylocaltraining.session_etape) === "3") + setp_session_etape_label("Terminée"); + else if (String(mylocaltraining.session_etape) === "4") + setp_session_etape_label("Facturée"); + else if (String(mylocaltraining.session_etape) === "-1") + setp_session_etape_label("Annulée"); + + } + + if (mylocaltraining.date_debut) { var date_du = new Date(moment(mylocaltraining.date_debut, "DD/MM/YYYY HH:mm:ss")); @@ -2004,7 +2148,6 @@ const DisplayPartnerSession = (props) => { } if (mylocaltraining.attestation_certif) { - setselectedCertif(mylocaltraining.attestation_certif); GetSpecificAttestation_Certif(mylocaltraining.attestation_certif); @@ -2012,20 +2155,20 @@ const DisplayPartnerSession = (props) => { document.getElementsByName("myclass_title")[0].value = ""; if (mylocaltraining.myclass[0].title) - document.getElementsByName("myclass_title")[0].value = mylocaltraining.myclass[0].title; + setp_myclass_title(mylocaltraining.myclass[0].title); document.getElementsByName("code_session")[0].value = ""; if (mylocaltraining.code_session) - document.getElementsByName("code_session")[0].value = mylocaltraining.code_session; + setp_code_session(mylocaltraining.code_session); document.getElementsByName("nb_participant")[0].value = ""; if (mylocaltraining.nb_participant) - document.getElementsByName("nb_participant")[0].value = mylocaltraining.nb_participant; + setp_nb_participant(mylocaltraining.nb_participant); document.getElementsByName("prix_session")[0].value = ""; if (mylocaltraining.prix_session) - document.getElementsByName("prix_session")[0].value = mylocaltraining.prix_session; + setp_prix_session(mylocaltraining.prix_session); if (mylocaltraining.distantiel) { setp_session_distance(mylocaltraining.distantiel); @@ -2060,27 +2203,27 @@ const DisplayPartnerSession = (props) => { document.getElementsByName("adresse")[0].value = ""; if (mylocaltraining.adresse) - document.getElementsByName("adresse")[0].value = mylocaltraining.adresse; + setp_adresse(mylocaltraining.adresse); document.getElementsByName("ville")[0].value = ""; if (mylocaltraining.ville) { - document.getElementsByName("ville")[0].value = mylocaltraining.ville; + setp_ville(mylocaltraining.ville); } document.getElementsByName("formateur")[0].value = ""; if (mylocaltraining.formateur) { - document.getElementsByName("formateur")[0].value = mylocaltraining.formateur; + setp_formateur(mylocaltraining.formateur); } document.getElementsByName("lms_class_code")[0].value = ""; if (mylocaltraining.lms_class_code) { - document.getElementsByName("lms_class_code")[0].value = mylocaltraining.lms_class_code; + setis_lms_class_code(mylocaltraining.lms_class_code); } document.getElementsByName("code_postal")[0].value = ""; if (mylocaltraining.code_postal) - document.getElementsByName("code_postal")[0].value = mylocaltraining.code_postal; + setp_code_postal(mylocaltraining.code_postal); if (String(mylocaltraining.session_status) === "true") @@ -2111,6 +2254,28 @@ const DisplayPartnerSession = (props) => { } + + const [p_myclass_title, setp_myclass_title] = useState(""); + const [p_code_session, setp_code_session] = useState(""); + const [p_adresse, setp_adresse] = useState(""); + const [p_code_postal, setp_code_postal] = useState(""); + const [p_ville, setp_ville] = useState(""); + const [p_formateur, setp_formateur] = useState(""); + const [p_lms_class_code, setp_lms_class_code] = useState(""); + const [p_nb_participant, setp_nb_participant] = useState(""); + const [p_prix_session, setp_prix_session] = useState(""); + + + const [p_one_myclass_title, setp_one_myclass_title] = useState(""); + const [p_one_code_session, setp_one_code_session] = useState(""); + const [p_one_adresse, setp_one_adresse] = useState(""); + const [p_one_code_postal, setp_one_code_postal] = useState(""); + const [p_one_ville, setp_one_ville] = useState(""); + const [p_one_formateur, setp_one_formateur] = useState(""); + const [p_one_lms_class_code, setp_one_lms_class_code] = useState(""); + const [p_one_nb_participant, setp_one_nb_participant] = useState(""); + const [p_one_prix_session, setp_one_prix_session] = useState(""); + function annuleSessionUpdate() { clearSessionFields(); setsessionChanged(false); @@ -2297,878 +2462,20 @@ const DisplayPartnerSession = (props) => { setEdite_session("0"); } + + function IssessionChanged() { + setsessionChanged(true); + } + + return (