diff --git a/public/sample/template_import_apprenant.csv b/public/sample/template_import_apprenant.csv new file mode 100644 index 0000000..2c3da50 --- /dev/null +++ b/public/sample/template_import_apprenant.csv @@ -0,0 +1,2 @@ +civilite;nom;prenom;email;telephone;employeur;client_rattachement_email;adresse;code_postal;ville;pays;tuteur1_nom;tuteur1_prenom;tuteur1_email;tuteur1_telephone;tuteur2_nom;tuteur2_prenom;tuteur2_email;tuteur2_telephone;opco;comment;tuteur1_adresse;tuteur1_cp;tuteur1_ville;tuteur1_pays;tuteur1_include_com;tuteur2_adresse;tuteur2_cp;tuteur2_ville;tuteur2_pays;tuteur2_include_com +M;nom_appre_1;prenom_appre_1;appre1@test.fr;1223;empl_appre1;;;;;;;;;;;;;;;;;;;;;;;;; diff --git a/src/components/AddClassManual.js b/src/components/AddClassManual.js index 81208da..3d6e83b 100644 --- a/src/components/AddClassManual.js +++ b/src/components/AddClassManual.js @@ -421,6 +421,8 @@ const AddClassManual = (props) => { //console.log(" In get_partner_class res.data.message r_class = " + res.data.message); setmyApiResponse("True"); setResult(res.data.message); + + var mylocaltraining = JSON.parse(res.data.message); @@ -637,7 +639,7 @@ const AddClassManual = (props) => { }).catch((error) => { setLoading(false); - console.warn('Not good man :( mysearchtext = '); + console.warn('Not good man :( mysearchtext = ', error); setmyApiResponse("False"); //setmyApimyApiMessage("") }) diff --git a/src/components/AddPartnerClient.js b/src/components/AddPartnerClient.js index 38ad60e..f02fe96 100644 --- a/src/components/AddPartnerClient.js +++ b/src/components/AddPartnerClient.js @@ -2871,7 +2871,7 @@ const AddParnerClient = (props) => { {String(JSON.parse(client).include_com) === "1" && } diff --git a/src/components/Apprenant.js b/src/components/Apprenant.js index 874fd68..70dc50a 100644 --- a/src/components/Apprenant.js +++ b/src/components/Apprenant.js @@ -21,10 +21,7 @@ import Popup from 'reactjs-popup'; import 'reactjs-popup/dist/index.css'; import { FcSearch } from "react-icons/fc"; import { FcCancel, FcApproval, FcAcceptDatabase, FcPrint, FcAlarmClock, FcMultipleSmartphones, FcWorkflow } from "react-icons/fc"; -import DatePicker from "react-datepicker"; -import "react-datepicker/dist/react-datepicker.css"; -import { format, set } from 'date-fns' -import moment from "moment"; + import InputAdornment from '@mui/material/InputAdornment'; import { AiFillCloseCircle, AiOutlineConsoleSql } from "react-icons/ai"; import Box from '@mui/material/Box'; @@ -42,15 +39,14 @@ import img_loading_spin from "./../mysy_img/mysy_spin_loading.gif"; import { Fab } from "@material-ui/core"; import { IoMdAddCircle, IoIosRemoveCircleOutline } from "react-icons/io"; import { AiTwotoneEdit, AiTwotoneSave } from "react-icons/ai"; -import { confirmAlert } from 'react-confirm-alert'; +import { FcEditImage } from "react-icons/fc"; import ToggleSwitch from "./ToggleSwitch"; import Module_Historique_Action from "./Module_Historique_Action"; -import { HiDocumentCheck } from "react-icons/hi2"; -import { BsSend } from "react-icons/bs"; +import { FcSpeaker } from "react-icons/fc"; import Autocomplete from '@mui/material/Autocomplete'; import { FcOpenedFolder } from "react-icons/fc"; import Module_Absence from "./Module_Absence"; - +import { RiMoreFill } from "react-icons/ri"; const Apprenant = (props) => { const history = useHistory(); @@ -183,6 +179,14 @@ const Apprenant = (props) => { onClick={(event) => { + if (cellValues.row._id && String(cellValues.row._id).length > 2) { + var tmp = cellValues.row.session_code+"&"+cellValues.row.session_id+"&"+cellValues.row.class_internal_url+"&"+p_detail_email; + + window.open( + process.env.REACT_APP_FRONT_URL + "Partner/mes_stagiaires/" + String(cellValues.row._id)+"/"+String(tmp), + '_blank' + ); + } //handleClick_edit_apprenant_From_Line(cellValues.row.id); }} > @@ -289,7 +293,7 @@ const Apprenant = (props) => { const [p_detail_tuteur1_cp, setp_detail_tuteur1_cp] = useState(""); const [p_detail_tuteur1_ville, setp_detail_tuteur1_ville] = useState(""); const [p_detail_tuteur1_pays, setp_detail_tuteur1_pays] = useState(""); - const [p_detail_tuteur1_include_com, setp_detail_tuteur1_include_com] = useState(""); + const [p_detail_tuteur1_include_com, setp_detail_tuteur1_include_com] = useState(false); const [p_detail_tuteur2_nom, setp_detail_tuteur2_nom] = useState(""); const [p_detail_tuteur2_prenom, setp_detail_tuteur2_prenom] = useState(""); const [p_detail_tuteur2_email, setp_detail_tuteur2_email] = useState(""); @@ -298,7 +302,7 @@ const Apprenant = (props) => { const [p_detail_tuteur2_cp, setp_detail_tuteur2_cp] = useState(""); const [p_detail_tuteur2_ville, setp_detail_tuteur2_ville] = useState(""); const [p_detail_tuteur2_pays, setp_detail_tuteur2_pays] = useState(""); - const [p_detail_tuteur2_include_com, setp_detail_tuteur2_include_com] = useState(""); + const [p_detail_tuteur2_include_com, setp_detail_tuteur2_include_com] = useState(false); const [p_detail_date_creation, setp_detail_date_creation] = useState(""); @@ -487,7 +491,10 @@ const Apprenant = (props) => { } if (mylocaltraining.tuteur1_include_com) { - setp_detail_tuteur1_include_com(mylocaltraining.tuteur1_include_com); + setp_detail_tuteur1_include_com(false); + if (String(mylocaltraining.tuteur2_include_com) === "1") + setp_detail_tuteur1_include_com(true); + } if (mylocaltraining.tuteur2_nom) { @@ -523,7 +530,9 @@ const Apprenant = (props) => { } if (mylocaltraining.tuteur2_include_com) { - setp_detail_tuteur2_include_com(mylocaltraining.tuteur2_include_com); + setp_detail_tuteur2_include_com(false); + if (String(mylocaltraining.tuteur2_include_com) === "1") + setp_detail_tuteur2_include_com(true); } if (mylocaltraining.date_creation) { @@ -877,6 +886,8 @@ const Apprenant = (props) => { setfield_detail_ville(''); setfield_detail_pays(''); + + setfield_detail_tuteur1_nom(''); setfield_detail_tuteur1_prenom(''); setfield_detail_tuteur1_email(''); @@ -886,6 +897,27 @@ const Apprenant = (props) => { setfield_detail_tuteur2_email(''); setfield_detail_tuteur2_telephone(''); + setp_detail_tuteur1_nom(''); + setp_detail_tuteur1_prenom(''); + setp_detail_tuteur1_email(''); + setp_detail_tuteur1_telephone(''); + setp_detail_tuteur1_adresse(''); + setp_detail_tuteur1_cp(''); + setp_detail_tuteur1_ville(''); + setp_detail_tuteur1_pays(''); + setp_detail_tuteur1_include_com(false); + + setp_detail_tuteur2_nom(''); + setp_detail_tuteur2_prenom(''); + setp_detail_tuteur2_email(''); + setp_detail_tuteur2_telephone(''); + setp_detail_tuteur2_adresse(''); + setp_detail_tuteur2_cp(''); + setp_detail_tuteur2_ville(''); + setp_detail_tuteur2_pays(''); + setp_detail_tuteur2_include_com(false); + + setisimgclassSelected(""); setuserimgclassprofil(""); setisimgclassSelected_recid(""); @@ -947,11 +979,6 @@ const Apprenant = (props) => { } - if (document.getElementsByName("field_detail_tuteur1_nom") && document.getElementsByName("field_detail_tuteur1_nom")[0]) { - document.getElementsByName("field_detail_tuteur1_nom")[0].value = ""; - - } - if (document.getElementsByName("field_detail_tuteur1_prenom") && document.getElementsByName("field_detail_tuteur1_prenom")[0]) { document.getElementsByName("field_detail_tuteur1_prenom")[0].value = ""; ; @@ -1071,10 +1098,6 @@ const Apprenant = (props) => { document.getElementsByName("field_detail_pays")[0].style.backgroundColor = "#ECEFF1"; } - if (document.getElementsByName("field_detail_tuteur1_nom") && document.getElementsByName("field_detail_tuteur1_nom")[0]) { - document.getElementsByName("field_detail_tuteur1_nom")[0].disabled = true; - document.getElementsByName("field_detail_tuteur1_nom")[0].style.backgroundColor = "#ECEFF1"; - } if (document.getElementsByName("field_detail_tuteur1_nom") && document.getElementsByName("field_detail_tuteur1_nom")[0]) { document.getElementsByName("field_detail_tuteur1_nom")[0].disabled = true; @@ -1175,52 +1198,6 @@ const Apprenant = (props) => { document.getElementsByName("field_detail_pays")[0].style.backgroundColor = "#FFFFFF"; } - if (document.getElementsByName("field_detail_tuteur1_nom") && document.getElementsByName("field_detail_tuteur1_nom")[0]) { - document.getElementsByName("field_detail_tuteur1_nom")[0].disabled = false; - document.getElementsByName("field_detail_tuteur1_nom")[0].style.backgroundColor = "#FFFFFF"; - } - - if (document.getElementsByName("field_detail_tuteur1_nom") && document.getElementsByName("field_detail_tuteur1_nom")[0]) { - document.getElementsByName("field_detail_tuteur1_nom")[0].disabled = false; - document.getElementsByName("field_detail_tuteur1_nom")[0].style.backgroundColor = "#FFFFFF"; - } - - if (document.getElementsByName("field_detail_tuteur1_prenom") && document.getElementsByName("field_detail_tuteur1_prenom")[0]) { - document.getElementsByName("field_detail_tuteur1_prenom")[0].disabled = false; - document.getElementsByName("field_detail_tuteur1_prenom")[0].style.backgroundColor = "#FFFFFF"; - } - - if (document.getElementsByName("field_detail_tuteur1_email") && document.getElementsByName("field_detail_tuteur1_email")[0]) { - document.getElementsByName("field_detail_tuteur1_email")[0].disabled = false; - document.getElementsByName("field_detail_tuteur1_email")[0].style.backgroundColor = "#FFFFFF"; - } - - if (document.getElementsByName("field_detail_tuteur1_telephone") && document.getElementsByName("field_detail_tuteur1_telephone")[0]) { - document.getElementsByName("field_detail_tuteur1_telephone")[0].disabled = false; - document.getElementsByName("field_detail_tuteur1_telephone")[0].style.backgroundColor = "#FFFFFF"; - } - - if (document.getElementsByName("field_detail_tuteur2_nom") && document.getElementsByName("field_detail_tuteur2_nom")[0]) { - document.getElementsByName("field_detail_tuteur2_nom")[0].disabled = false; - document.getElementsByName("field_detail_tuteur2_nom")[0].style.backgroundColor = "#FFFFFF"; - } - - if (document.getElementsByName("field_detail_tuteur2_prenom") && document.getElementsByName("field_detail_tuteur2_prenom")[0]) { - document.getElementsByName("field_detail_tuteur2_prenom")[0].disabled = false; - document.getElementsByName("field_detail_tuteur2_prenom")[0].style.backgroundColor = "#FFFFFF"; - } - - if (document.getElementsByName("field_detail_tuteur2_email") && document.getElementsByName("field_detail_tuteur2_email")[0]) { - document.getElementsByName("field_detail_tuteur2_email")[0].disabled = false; - document.getElementsByName("field_detail_tuteur2_email")[0].style.backgroundColor = "#FFFFFF"; - } - - if (document.getElementsByName("field_detail_tuteur2_telephone") && document.getElementsByName("field_detail_tuteur2_telephone")[0]) { - document.getElementsByName("field_detail_tuteur2_telephone")[0].disabled = false; - document.getElementsByName("field_detail_tuteur2_telephone")[0].style.backgroundColor = "#FFFFFF"; - } - - } @@ -1583,7 +1560,7 @@ const Apprenant = (props) => { const value = event.target.value; - if (String(value) === "supprimer" || String(value) === "dupliquer" || String(value) === "desactiver") { + if (String(value) === "supprimer" || String(value) === "inscription") { setactionmass_ftion_val(value); } else { @@ -1591,10 +1568,11 @@ const Apprenant = (props) => { } } + async function actionmass_ftion_Traitemet() { - var liste_session = GetSelectedRowsSession(); + var liste_apprenant = GetSelectedRowsSession(); //console.log(" liste_formation = ", liste_formation); //console.log(" actionmass_ftion_val = ", actionmass_ftion_val); @@ -1602,21 +1580,15 @@ const Apprenant = (props) => { if (String(actionmass_ftion_val) === String("supprimer")) { //console.log(" ### liste session : ", liste_session) - //Delete_LIST_Session_Formation(liste_session); + Delete_LIST_Apprenant(liste_apprenant); } - else if (String(actionmass_ftion_val) === String("dupliquer")) { - //Dupliquer_LIST_Session_Formation(liste_session); + else if (String(actionmass_ftion_val) === String("inscription")) { + setDialog_add_inscription_open(true); } - else if (String(actionmass_ftion_val) === String("publier")) { - } - - else if (String(actionmass_ftion_val) === String("desactiver")) { - - } } @@ -1957,7 +1929,7 @@ const Apprenant = (props) => { axios.post(myurl, form).then(res => { //console.log(" In Get_Appenant_List_Inscription res.data.status = " + res.data.status); - //console.log(" In Get_Appenant_List_Inscription res.data.message r_class = " + res.data.message); + console.log(" In Get_Appenant_List_Inscription res.data.message r_class = " + res.data.message); if (String(res.data.status) === String("true")) { setGet_Appenant_List_Inscription_api("true"); @@ -2150,16 +2122,21 @@ const Apprenant = (props) => { let file_size = event.target.files[0].size; let file_type = event.target.files[0].type; - setfile_1_name(event.target.files[0]); + var tab = file_type.split('/'); + if (tab.length != 2 || String(tab[1]).toLocaleLowerCase() !== "pdf") { + alert("Seuls les fichier 'pdf' sont autorisés "); + return; + } + console.log("file_size = ", file_size, " file_type = ", file_type); if (file_size > 10000000) { alert("Le fichier ne doit pas depasser un 1 Méga octets"); - console.log("Le fichier ne doit pas depasser un 1 Méga octets"); return; } + setfile_1_name(event.target.files[0]); return; @@ -2803,6 +2780,128 @@ const Apprenant = (props) => { } + const [Delete_LIST_Apprenant_api, setDelete_LIST_Apprenant_api] = useState(); + const [Delete_LIST_Apprenant_message, setDelete_LIST_Apprenant_message] = useState(); + const [Delete_LIST_Apprenant_result, setDelete_LIST_Apprenant_result] = useState(); + function Delete_LIST_Apprenant(local_liste_apprenant) { + + var form = new FormData(); + //form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA"); + + //console.log(" #### local_liste_session = ", local_liste_session) + + const stored_cookie = getCookie('tokenmysypart'); + form.append("token", stored_cookie); + form.append("list_apprenant_id", local_liste_apprenant); + + + + var myurl = process.env.REACT_APP_API_URL + "myclass/api/Delete_List_Apprenant/"; + setLoading(true); + axios.post(myurl, form).then(res => { + //console.log(" In Delete_LIST_Apprenant res.data.status = " + res.data.status); + //console.log(" In Delete_LIST_Apprenant res.data.message r_class = " + res.data.message); + + setLoading(false); + + if (String(res.data.status) === String("true")) { + setDelete_LIST_Apprenant_api("true"); + setDelete_LIST_Apprenant_result(res.data.message); + + setadd_One_Apprenant(''); + setdisplay_detail_apprenant(''); + Clear_Detail_Apprenant_Fields(); + setselected_apprenant_id(''); + setgridline_id(''); + window.scrollTo({ + top: 0, + behavior: "smooth", + }); + + Get_All_Apprenant(); + + alert(res.data.message); + } + else { + setDelete_LIST_Apprenant_api("false"); + setDelete_LIST_Apprenant_message(res.data.message); + alert(res.data.message); + + } + + }).catch((error) => { + setLoading(false); + console.warn('Delete_LIST_Apprenant : Not good man :( mysearchtext = ' + error); + setDelete_LIST_Apprenant_api("false"); + alert(" Impossible de supprimer la liste des apprenants"); + }) + } + + const [Add_Inscription_List_Apprenant_api, setAdd_Inscription_List_Apprenant_api] = useState(); + const [Add_Inscription_List_Apprenant_message, setAdd_Inscription_List_Apprenant_message] = useState(); + const [Add_Inscription_List_Apprenant_result, setAdd_Inscription_List_Apprenant_result] = useState(); + function Add_Inscription_List_Apprenant() { + + + var liste_apprenant = GetSelectedRowsSession(); + var form = new FormData(); + + const stored_cookie = getCookie('tokenmysypart'); + form.append("token", stored_cookie); + form.append("list_apprenant_id", liste_apprenant); + form.append("session_id", p_dialog_session_id); + form.append("type_apprenant", p_dialog_type_apprenant); + form.append("modefinancement", p_dialog_financement); + + + + var myurl = process.env.REACT_APP_API_URL + "myclass/api/Apprenant_Inscrire_Session_List/"; + + setLoading(true); + axios.post(myurl, form).then(res => { + //console.log(" In Add_Inscription_List_Apprenant res.data.status = " + res.data.status); + //console.log(" In Add_Inscription_List_Apprenant res.data.message r_class = " + res.data.message); + + setLoading(false); + if (String(res.data.status) === String("true")) { + + setAdd_Inscription_List_Apprenant_api("true"); + setAdd_Inscription_List_Apprenant_result(res.data.message); + + Dialog_add_inscription_handleClose_buton(); + + Get_All_Apprenant(); + + setp_dialog_session_id(''); + setp_dialog_type_apprenant(''); + setp_dialog_financement(''); + setSelectionModel([]); + + alert(res.data.message); + if (document.getElementById('myRef_head')) { + var divh = document.getElementById('myRef_head').offsetTop; + window.scrollTo({ + top: divh, + behavior: "smooth", + }); + } + + } + else { + setAdd_Inscription_List_Apprenant_api("false"); + setAdd_Inscription_List_Apprenant_message(res.data.message); + alert(res.data.message); + } + + }).catch((error) => { + setLoading(false); + console.warn('Add_Inscription_List_Apprenant : Not good man :( Add_Inscription_List_Apprenant = ' + error); + setAdd_Inscription_List_Apprenant_api("false"); + alert(" Impossible d'inscrire les apprenant à cette session "); + + }) + } + const myRef_head = useRef(null); const [apprenant_data_changed, setapprenant_data_changed] = useState(''); const [apprenant_data_edit_mode, setapprenant_data_edit_mode] = useState(''); @@ -2950,6 +3049,233 @@ const Apprenant = (props) => { } + const [quel_tuteur, setquel_tuteur] = useState("1"); + const [Dialog_tuteur_1_message, setDialog_tuteur_1_message] = React.useState(false); + const [Dialog_tuteur_1_open, setDialog_tuteur_1_open] = React.useState(false); + + function Dialog_1_handle_change_tuteur(message) { + setDialog_tuteur_1_message(message); + setDialog_tuteur_1_open(true); + } + + const Dialog_tuteur_1_handleClose = () => { + //alert(" Utiliser le bouton 'fermer' "); + //setOpen(false); + }; + + const Dialog_tuteur_1_handleClose_buton = () => { + setDialog_tuteur_1_open(false); + }; + + const [Add_Update_Apprenant_Tuteur_api, setAdd_Update_Apprenant_Tuteur_api] = useState(); + const [Add_Update_Apprenant_Tuteur_message, setAdd_Update_Apprenant_Tuteur_message] = useState(); + const [Add_Update_Apprenant_Tuteur_result, setAdd_Update_Apprenant_Tuteur_result] = useState(); + function Add_Update_Apprenant_Tuteur() { + var form = new FormData(); + //form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA"); + + + const stored_cookie = getCookie('tokenmysypart'); + form.append("token", stored_cookie); + form.append("_id", selected_apprenant_id); + + if (String(quel_tuteur) === "1") { + if (p_detail_tuteur1_nom && String(p_detail_tuteur1_nom).trim() !== "") + form.append("tuteur1_nom", p_detail_tuteur1_nom); + else { + alert(" Le nom du tuteur est invalide "); + return; + } + + + if (p_detail_tuteur1_prenom && String(p_detail_tuteur1_prenom).trim() !== "") + form.append("tuteur1_prenom", p_detail_tuteur1_prenom); + else { + alert(" Le prénom du tuteur est invalide "); + return; + } + + if (p_detail_tuteur1_email && String(p_detail_tuteur1_email).trim() !== "") { + var validRegex = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/; + if (!p_detail_tuteur1_email.trim().match(validRegex)) { + alert("L'adresse email du tuteur est invalide."); + return; + } + + form.append("tuteur1_email", p_detail_tuteur1_email.trim()); + } else { + alert("L'adresse email du tuteur est invalide."); + return; + } + + + if (p_detail_tuteur1_telephone) + form.append("tuteur1_telephone", p_detail_tuteur1_telephone); + else + form.append("tuteur1_telephone", ""); + + + if (p_detail_tuteur1_adresse) + form.append("tuteur1_adresse", p_detail_tuteur1_adresse); + else + form.append("tuteur1_adresse", ""); + + + if (p_detail_tuteur1_cp) + form.append("tuteur1_cp", p_detail_tuteur1_cp); + else + form.append("tuteur1_cp", ""); + + if (p_detail_tuteur1_ville) + form.append("tuteur1_ville", p_detail_tuteur1_ville); + else + form.append("tuteur1_ville", ""); + + if (p_detail_tuteur1_pays) + form.append("tuteur1_pays", p_detail_tuteur1_pays); + else + form.append("tuteur1_pays", ""); + + + + if (p_detail_tuteur1_include_com && String(p_detail_tuteur1_include_com) === "true") + form.append("tuteur1_include_com", "1"); + else + form.append("tuteur1_include_com", "0"); + + } + + if (String(quel_tuteur) === "2") { + if (p_detail_tuteur2_nom && String(p_detail_tuteur2_nom).trim() !== "") + form.append("tuteur2_nom", p_detail_tuteur2_nom); + else { + alert(" Le nom du tuteur est invalide "); + return; + } + + + if (p_detail_tuteur2_prenom && String(p_detail_tuteur2_prenom).trim() !== "") + form.append("tuteur2_prenom", p_detail_tuteur2_prenom); + else { + alert(" Le prénom du tuteur est invalide "); + return; + } + + if (p_detail_tuteur2_email && String(p_detail_tuteur2_email).trim() !== "") { + var validRegex = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/; + if (!p_detail_tuteur2_email.trim().match(validRegex)) { + alert("L'adresse email du tuteur est invalide."); + return; + } + form.append("tuteur2_email", p_detail_tuteur2_email.trim()); + } else { + alert("L'adresse email du tuteur est invalide."); + return; + } + + + + if (p_detail_tuteur2_telephone) + form.append("tuteur2_telephone", p_detail_tuteur2_telephone); + else + form.append("tuteur2_telephone", ""); + + + if (p_detail_tuteur2_adresse) + form.append("tuteur2_adresse", p_detail_tuteur2_adresse); + else + form.append("tuteur2_adresse", ""); + + + if (p_detail_tuteur2_cp) + form.append("tuteur2_cp", p_detail_tuteur2_cp); + else + form.append("tuteur2_cp", ""); + + if (p_detail_tuteur2_ville) + form.append("tuteur2_ville", p_detail_tuteur2_ville); + else + form.append("tuteur2_ville", ""); + + if (p_detail_tuteur2_pays) + form.append("tuteur2_pays", p_detail_tuteur2_pays); + else + form.append("tuteur2_pays", ""); + + + + if (p_detail_tuteur2_include_com && String(p_detail_tuteur2_include_com) === "true") + form.append("tuteur2_include_com", "1"); + else + form.append("tuteur2_include_com", "0"); + + } + + var myurl = process.env.REACT_APP_API_URL + "myclass/api/Update_Apprenant_Tuteurs/"; + setLoading(true); + axios.post(myurl, form).then(res => { + //console.log(" In UpdateStagiaireData res.data.status = " + res.data.status); + //console.log(" In UpdateStagiaireData res.data.message r_class = " + res.data.message); + + setLoading(false); + if (String(res.data.status) === String("true")) { + setAdd_Update_Apprenant_Tuteur_api("true"); + setAdd_Update_Apprenant_Tuteur_result(res.data.message); + Dialog_tuteur_1_handleClose_buton(); + + alert(res.data.message); + + } + else { + setAdd_Update_Apprenant_Tuteur_api("false"); + setAdd_Update_Apprenant_Tuteur_message(res.data.message); + alert(res.data.message); + } + + }).catch((error) => { + setLoading(false); + console.warn('UpdateStagiaireData : Not good man :( mysearchtext = ' + error); + setAdd_Update_Apprenant_Tuteur_api("false"); + alert(" Impossible de mettre à jour le tuteur"); + + }) + } + + + const New_Type_apprenant = [ + { "id": "0", "label": "Autre" }, + { "id": "1", "label": "Salariés" }, + { "id": "2", "label": "Apprentis" }, + { "id": "3", "label": "Particuliers" }, + { "id": "4", "label": "Sans Emploi" } + ] + + + + const New_Financement = [ + { + value: 'cpf', + label: 'CPF', + }, + { + value: 'perso', + label: 'Fonds Propres', + }, + { + value: 'entreprise', + label: 'Votre entreprise', + }, + + { + value: 'mixte_cpf_perso', + label: 'CPF & Fonds Propres', + }, + { + value: 'autre', + label: 'Autre', + }, + + ]; return ( @@ -3037,6 +3363,361 @@ const Apprenant = (props) => { + + + + + Tuteur {quel_tuteur} + {String(quel_tuteur) === "1" && + + {Dialog_tuteur_1_message} + + + + + +
Nom + { + setp_detail_tuteur1_nom(e.target.value); + } + } + + /> + +
+ +
Prénom + { + setp_detail_tuteur1_prenom(e.target.value); + }} + /> +
+ +
Email + { + setp_detail_tuteur1_email(e.target.value); + }} + /> +
+ + +
Téléphone + { + setp_detail_tuteur1_telephone(e.target.value); + }} + /> +
+ +
Adresse + { + setp_detail_tuteur1_adresse(e.target.value); + }} + /> +
+ +
Code postal + { + setp_detail_tuteur1_cp(e.target.value); + }} + /> +
+ +
Ville + { + setp_detail_tuteur1_ville(e.target.value); + }} + /> +
+ +
Pays + { + setp_detail_tuteur1_pays(e.target.value); + }} + /> +
+ + {/*
Inclure Communication + { + setp_detail_tuteur1_include_com(e.target.checked) + }} /> +
*/} + + + +
+ + + +
+
+ +
} + + {String(quel_tuteur) === "2" && + + {Dialog_tuteur_1_message} + + + +
Nom + { + setp_detail_tuteur2_nom(e.target.value); + } + } + + /> + +
+ +
Prénom + { + setp_detail_tuteur2_prenom(e.target.value); + }} + /> +
+ +
Email + { + setp_detail_tuteur2_email(e.target.value); + }} + /> +
+ + +
Téléphone + { + setp_detail_tuteur2_telephone(e.target.value); + }} + /> +
+ +
Adresse + { + setp_detail_tuteur2_adresse(e.target.value); + }} + /> +
+ +
Code postal + { + setp_detail_tuteur2_cp(e.target.value); + }} + /> +
+ +
Ville + { + setp_detail_tuteur2_ville(e.target.value); + }} + /> +
+ +
Pays + { + setp_detail_tuteur2_pays(e.target.value); + }} + /> +
+ + {/*
Inclure Communication + { + setp_detail_tuteur2_include_com(e.target.checked) + }} /> +
*/} + + + +
+ + + +
+
+ + +
} + + + +
+
+ + + +
+ +
+ +
+
+ +
+ +
{ }} - renderInput={(params) => } /> }
Type apprenant - { + if (value && value.id) { + setp_dialog_type_apprenant(value.id); - value={p_dialog_type_apprenant} - onChange={(e) => { - setp_dialog_type_apprenant(e.target.value); + } + + }} + + renderInput={(params) => } - } - - > - - salariés   - Autre   - + />
Mode Financement - { + if (value && value.value) { + setp_dialog_financement(value.value); - value={p_dialog_financement} - onChange={(e) => { - setp_dialog_financement(e.target.value); + } + + }} + + renderInput={(params) => } - } - - > - - Fonds Propres   - Autre   - + />
@@ -3129,7 +3803,9 @@ const Apprenant = (props) => {
- + {selectionModel.length <= 1 && } + + {selectionModel.length > 1 && }
@@ -3410,13 +4086,13 @@ const Apprenant = (props) => { onSelectionModelChange={(newSelectionModel) => { setSelectionModel(newSelectionModel); - /*if (newSelectionModel.length === 1) - handleClick_edit_session_From_Line(newSelectionModel);*/ - if (newSelectionModel.length !== 1) { - /* setaddOneParticipant(); - setdisplay_detail_insc(); - setselected_code_session();*/ - setsubmenu(); + + if (newSelectionModel.length > 1) { + setadd_One_Apprenant(''); + setdisplay_detail_apprenant(''); + Clear_Detail_Apprenant_Fields(); + setselected_apprenant_id(''); + setgridline_id(''); } }} selectionModel={selectionModel} @@ -3533,7 +4209,7 @@ const Apprenant = (props) => { > Action    Supprimer   - Dupliquer   + Inscrire   @@ -3555,12 +4231,16 @@ const Apprenant = (props) => { -
MySy Information
+
MySy Information - {actionmass_ftion_val}
{' '} + {String(actionmass_ftion_val) === "supprimer" && + Confirmer la suppression de {selectionModel.length} apprenants . + } - Confirmer l'action {actionmass_ftion_val} en masse pour {selectionModel.length} lignes. - + {String(actionmass_ftion_val) === "inscription" && + Confirmer l'inscription de {selectionModel.length} apprenants à la session que vous aller choisir à présent. + }
@@ -3625,7 +4305,7 @@ const Apprenant = (props) => { onChange={liste_apprenants_file_change} /> - Télécharger un fichier modèle + Télécharger un fichier modèle
@@ -4206,14 +4886,281 @@ const Apprenant = (props) => { } />
-
-
+ +
+  
-
+ + {String(apprenant_data_changed) === "1" && String(apprenant_data_edit_mode) === "1" &&
+ /!\ Pensez à enregistrer les modifications +
} +
+ + {String(apprenant_data_changed) === "1" && String(apprenant_data_edit_mode) === "1" &&
+ + + +
} + + {String(apprenant_data_edit_mode) === "1" &&
+ +
} +
+ + + {String(apprenant_data_edit_mode) !== "1" &&
+ + + +
} +
+   +
+ + +
+
+
+
+ +
+ Tuteurs + +
+
+
+ + {p_detail_tuteur1_include_com === true && } + +
+
Nom
+ { + setp_detail_tuteur1_nom(e.target.value); + + setapprenant_data_changed("1"); + }} + /> + + +
+ +
Prénom
+ { + setp_detail_tuteur1_prenom(e.target.value); + setapprenant_data_changed("1"); + }} + /> + + +
+ +
Email
+ { + setp_detail_tuteur1_email(e.target.value); + setapprenant_data_changed("1"); + }} + /> + + +
+ +
Téléphone
+ { + setp_detail_tuteur1_telephone(e.target.value); + setapprenant_data_changed("1"); + }} + /> + + +
+
{ + setquel_tuteur("1"); + setDialog_tuteur_1_open(true); + }}> Voir plus + +
+ + + +
+
+ +
+ + {p_detail_tuteur2_include_com === true && } + +
+
Nom
+ { + setp_detail_tuteur2_nom(e.target.value); + setapprenant_data_changed("1"); + }} + /> + + +
+ +
Prénom
+ { + setp_detail_tuteur2_prenom(e.target.value); + setapprenant_data_changed("1"); + }} + /> + + +
+ +
Email
+ { + setp_detail_tuteur2_email(e.target.value); + setapprenant_data_changed("1"); + }} + /> + + +
+ +
Téléphone
+ { + setp_detail_tuteur2_telephone(e.target.value); + setapprenant_data_changed("1"); + }} + /> + + +
+ +
{ + setquel_tuteur("2"); + setDialog_tuteur_1_open(true); + }}> Voir plus + +
+
+
+
+
+
+
+
+
+
- - Liste des pièces jointes
-
+ { id="upload_convention_file" name="upload_convention_file" type="file" + accept=".pdf" onChange={sessions_file_change_1_convention} /> @@ -6802,14 +6862,14 @@ const DisplayPartnerStagiaires = (props) => {
{ - + if (p_detail_client_rattachement_id && String(p_detail_client_rattachement_id).length > 2) { window.open( process.env.REACT_APP_FRONT_URL + "Partner/mes_clients/" + String(p_detail_client_rattachement_id), '_blank' ); } - else{ + else { alert(" Aucun client selectionné") } } diff --git a/src/components/DisplayPartnerTrainingsPagination.js b/src/components/DisplayPartnerTrainingsPagination.js index a2f2ea5..0a75fc5 100644 --- a/src/components/DisplayPartnerTrainingsPagination.js +++ b/src/components/DisplayPartnerTrainingsPagination.js @@ -883,8 +883,10 @@ const DistplayPartnerTraningsPage = (props) => { if (props.class_internal_url && props.class_external_code && - String(props.class_internal_url).length > 3 && String(props.class_external_code).length > 3 ) { + String(props.class_internal_url).length > 3 && String(props.class_external_code).length > 3) { + //console.log(" ## props.class_internal_url = ", props.class_internal_url); + //console.log(" ## props.class_external_code = ", props.class_external_code); setLoading(true); setreftrainingtoupdate(props.class_internal_url); setexternalcodetraining_toupdate(props.class_external_code); diff --git a/src/components/Employes.js b/src/components/Employes.js index a437493..01c53ef 100644 --- a/src/components/Employes.js +++ b/src/components/Employes.js @@ -3425,7 +3425,7 @@ const Employes = (props) => { let file_size = event.target.files[0].size; let file_type = event.target.files[0].type; - setfile_1_name(event.target.files[0]); + console.log("file_size = ", file_size, " file_type = ", file_type); @@ -3435,7 +3435,7 @@ const Employes = (props) => { return; } - + setfile_1_name(event.target.files[0]); const formData = new FormData(); formData.append('File', fileUploaded); //formData.append('token', 'K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA'); @@ -3461,7 +3461,7 @@ const Employes = (props) => { let file_size = event.target.files[0].size; let file_type = event.target.files[0].type; - setfile_2_name(event.target.files[0]); + console.log("file_size = ", file_size, " file_type = ", file_type); @@ -3471,7 +3471,7 @@ const Employes = (props) => { return; } - + setfile_2_name(event.target.files[0]); const formData = new FormData(); formData.append('File', fileUploaded); //formData.append('token', 'K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA'); diff --git a/src/components/GestionAdministrative.js b/src/components/GestionAdministrative.js index 7fb76c4..b0947ad 100644 --- a/src/components/GestionAdministrative.js +++ b/src/components/GestionAdministrative.js @@ -5664,7 +5664,7 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair let file_size = event.target.files[0].size; let file_type = event.target.files[0].type; - setfile_1_name(event.target.files[0]); + console.log("file_size = ", file_size, " file_type = ", file_type); @@ -5673,7 +5673,7 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair console.log("Le fichier ne doit pas depasser un 1 Méga octets"); return; } - + setfile_1_name(event.target.files[0]); const formData = new FormData(); formData.append('File', fileUploaded); @@ -5728,7 +5728,7 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair let file_size = event.target.files[0].size; let file_type = event.target.files[0].type; - setfile_2_name(event.target.files[0]); + console.log("file_size = ", file_size, " file_type = ", file_type); @@ -5737,7 +5737,7 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair console.log("Le fichier ne doit pas depasser un 1 Méga octets"); return; } - + setfile_2_name(event.target.files[0]); const formData = new FormData(); formData.append('File', fileUploaded); diff --git a/src/components/Partner.js b/src/components/Partner.js index 2fd1d0e..df9a314 100644 --- a/src/components/Partner.js +++ b/src/components/Partner.js @@ -325,13 +325,13 @@ const Partner = (props) => { setmenu(action); - if (action && orderid && packs && String("ordervalide")) { + if (action && orderid && packs && String(action) === "ordervalide" ) { CheckSalesOrder(); } - if (action && orderid && packs && String("abonnement")) { + /* if (action && orderid && packs && String("abonnement")) { //console.log(" abonnement : payement intent = ", orderid, " pack = ", packs); - } + }*/ } else { DiplaytrainingList(); @@ -1557,7 +1557,8 @@ const Partner = (props) => { {String(menu) === "mes_stagiaires" &&
- +
} diff --git a/src/components/Partner_Client.js b/src/components/Partner_Client.js index 685c1db..f09d2c6 100644 --- a/src/components/Partner_Client.js +++ b/src/components/Partner_Client.js @@ -294,10 +294,9 @@ const Partner_Client = (props) => { Get_List_Partner_Clients(); - if (String(props.object_key).length > 3) { + if (props.object_key && String(props.object_key).length > 3) { handleClick_edit_session_From_Props(props.object_key); - } else { window.scrollTo({ top: 0, diff --git a/src/styles/components/_apprenant.scss b/src/styles/components/_apprenant.scss index d5c48eb..a370429 100644 --- a/src/styles/components/_apprenant.scss +++ b/src/styles/components/_apprenant.scss @@ -687,6 +687,14 @@ width: 200px !important; } + .tuteur_field { + width: 100%; + padding: 5px; + float: left; + text-align: left; + font-size: small; + } + } @media only screen and (min-width: 601px) and (max-width: 991px) { @@ -1310,6 +1318,14 @@ width: 500px !important; } + .tuteur_field { + width: 50%; + padding: 5px; + float: left; + text-align: left; + font-size: small; + } + } @media only screen and (min-width: 992px) and (max-width: 1199px) { @@ -1856,6 +1872,15 @@ width: 500px !important; } + .tuteur_field { + width: 50%; + padding: 5px; + float: left; + text-align: left; + font-size: small; + } + + } @media only screen and (min-width: 1200px) { @@ -2523,6 +2548,14 @@ top: -13px; } + .tuteur_field { + width: 50%; + padding: 5px; + float: left; + text-align: left; + font-size: small; + } + } // end media diff --git a/src/styles/components/_dashbord_formation.scss b/src/styles/components/_dashbord_formation.scss index 6e0c5df..3cf64b9 100644 --- a/src/styles/components/_dashbord_formation.scss +++ b/src/styles/components/_dashbord_formation.scss @@ -2123,7 +2123,7 @@ .bton_add_session { background: #c8cfd5; color: black; - width: 20% !important; + width: 25% !important; } .bton_add_session_create_automatic { diff --git a/src/styles/components/_dashbord_session.scss b/src/styles/components/_dashbord_session.scss index 34eef46..d06ad48 100644 --- a/src/styles/components/_dashbord_session.scss +++ b/src/styles/components/_dashbord_session.scss @@ -2123,7 +2123,7 @@ .bton_add_session { background: #c8cfd5; color: black; - width: 20% !important; + width: 25% !important; } .bton_add_session_create_automatic { diff --git a/src/styles/components/_displaypartnersession.scss b/src/styles/components/_displaypartnersession.scss index a387ded..8b9d61c 100644 --- a/src/styles/components/_displaypartnersession.scss +++ b/src/styles/components/_displaypartnersession.scss @@ -2111,7 +2111,7 @@ .bton_add_session { background: #c8cfd5; color: black; - width: 20% !important; + width: 25% !important; } .bton_add_session_create_automatic { diff --git a/src/styles/components/_displaypartnerstagiaire.scss b/src/styles/components/_displaypartnerstagiaire.scss index 05cb951..268de7e 100644 --- a/src/styles/components/_displaypartnerstagiaire.scss +++ b/src/styles/components/_displaypartnerstagiaire.scss @@ -2006,7 +2006,7 @@ .bton_add_session { background: #c8cfd5; color: black; - width: 20% !important; + width: 25% !important; } .bton_import_excel { diff --git a/src/styles/components/_displaypartnertrainingpagination.scss b/src/styles/components/_displaypartnertrainingpagination.scss index cfad783..db52239 100644 --- a/src/styles/components/_displaypartnertrainingpagination.scss +++ b/src/styles/components/_displaypartnertrainingpagination.scss @@ -1783,7 +1783,7 @@ .bton_add_session { background: #c8cfd5; color: black; - width: 20% !important; + width: 25% !important; } } diff --git a/src/styles/components/_employes.scss b/src/styles/components/_employes.scss index 957741c..b4d65cd 100644 --- a/src/styles/components/_employes.scss +++ b/src/styles/components/_employes.scss @@ -1901,7 +1901,7 @@ .bton_add_session { background: #c8cfd5; color: black; - width: 20% !important; + width: 25% !important; } .bton_import_excel { diff --git a/src/styles/components/_gestionadministrative.scss b/src/styles/components/_gestionadministrative.scss index 449eddc..58c671c 100644 --- a/src/styles/components/_gestionadministrative.scss +++ b/src/styles/components/_gestionadministrative.scss @@ -1581,7 +1581,7 @@ .bton_add_session { background: #c8cfd5; color: black; - width: 20% !important; + width: 25% !important; } .bton_import_excel { diff --git a/src/styles/components/_materiels.scss b/src/styles/components/_materiels.scss index d60fd64..5eeffd5 100644 --- a/src/styles/components/_materiels.scss +++ b/src/styles/components/_materiels.scss @@ -1880,7 +1880,7 @@ .bton_add_session { background: #c8cfd5; color: black; - width: 20% !important; + width: 25% !important; } .bton_import_excel { diff --git a/src/styles/components/_mon_tableau_de_bord.scss b/src/styles/components/_mon_tableau_de_bord.scss index effc735..a9beed3 100644 --- a/src/styles/components/_mon_tableau_de_bord.scss +++ b/src/styles/components/_mon_tableau_de_bord.scss @@ -2089,7 +2089,7 @@ .bton_add_session { background: #c8cfd5; color: black; - width: 20% !important; + width: 25% !important; } .bton_add_session_create_automatic { diff --git a/src/styles/components/_partner_prix_achat.scss b/src/styles/components/_partner_prix_achat.scss index 721abdb..befce66 100644 --- a/src/styles/components/_partner_prix_achat.scss +++ b/src/styles/components/_partner_prix_achat.scss @@ -2107,7 +2107,7 @@ .bton_add_session { background: #c8cfd5; color: black; - width: 20% !important; + width: 25% !important; } .bton_add_session_create_automatic { diff --git a/src/styles/components/_partnerclient.scss b/src/styles/components/_partnerclient.scss index 2ed7e74..cf00db8 100644 --- a/src/styles/components/_partnerclient.scss +++ b/src/styles/components/_partnerclient.scss @@ -1852,7 +1852,7 @@ .bton_add_session { background: #c8cfd5; color: black; - width: 20% !important; + width: 25% !important; } .bton_import_excel {