diff --git a/src/components/DisplayPartnerStagiaires.js b/src/components/DisplayPartnerStagiaires.js
index 28733ec..ba94828 100644
--- a/src/components/DisplayPartnerStagiaires.js
+++ b/src/components/DisplayPartnerStagiaires.js
@@ -2932,7 +2932,7 @@ const DisplayPartnerStagiaires = (props) => {
}
function submenu_color_management(current_menu) {
- const list_sous_menu = ['detail_inscrit', 'ue', 'notes', 'stage', 'historique', 'piece_jointe']
+ const list_sous_menu = ['detail_inscrit', 'ue', 'notes', 'stages', 'historique', 'piece_jointe']
for (let i = 0; i < list_sous_menu.length; i++) {
diff --git a/src/components/Module_Gestion_Stage.js b/src/components/Module_Gestion_Stage.js
index 1906547..f7f1517 100644
--- a/src/components/Module_Gestion_Stage.js
+++ b/src/components/Module_Gestion_Stage.js
@@ -11,8 +11,7 @@ import AttachFileIcon from '@mui/icons-material/AttachFile';
import { DataGrid, GridToolbar, frFR } from '@mui/x-data-grid';
import "react-draft-wysiwyg/dist/react-draft-wysiwyg.css";
import 'react-tooltip/dist/react-tooltip.css'
-import { Tooltip } from 'react-tooltip'
-
+import { Tooltip } from 'react-tooltip';
import excel_icone from "../mysy_img/excel_icone.png";
import { format } from 'date-fns'
import fileDownload from 'js-file-download'
@@ -247,8 +246,8 @@ const Module_Gestion_Stage = (props) => {
{ field: 'id', headerName: 'id', hide: true, Width: 0, disableExport: true, },
{ field: 'partner_client_tuteur_id', headerName: 'partner_client_tuteur_id', hide: true, Width: 0, disableExport: true, },
- { field: 'date_debut', headerName: 'date_debut', width: 200, renderCell: (params) => , },
- { field: 'date_fin', headerName: 'date_fin', width: 200, renderCell: (params) => , },
+ { field: 'date_debut', headerName: 'Début', width: 200, renderCell: (params) => , },
+ { field: 'date_fin', headerName: 'Fin', width: 200, renderCell: (params) => , },
{ field: 'client_raison_sociale', headerName: 'Entreprise', minWidth: 150, flex: 1, renderCell: (params) => , },
{ field: 'tuteur_entreprise_nom_prenom', headerName: 'Tuteur Ent.', minWidth: 150, flex: 1, renderCell: (params) => , },
@@ -326,68 +325,8 @@ const Module_Gestion_Stage = (props) => {
},
},
- {
- field: "delete", headerName: 'Supprimer', disableExport: true,
- renderCell: (cellValues) => {
- return (
- <>
- {String(props.check_user_acces_right("stagiaire", "write")) === "1" &&
- {
-
-
- }
- modal
- nested
- position="center center"
- >
- {close => (
-
-
- ×
-
-
MySy Information
-
- {' '}
-
- En confirmant cette opération, le stage sera définitivement supprimé .
-
-
-
-
- {
-
- //Delete_Given_Jury(cellValues.row._id);
- //console.log('modal closed ');
- close();
- }}> Valider
-
-
-
- {
- //console.log('modal closed ');
- close();
- }}
- >
- Annuler
-
-
-
-
- )}
- }
-
- }
- >
- );
- }
- }
-
]
const columns_q_eval_entreprise = [
@@ -412,7 +351,7 @@ const Module_Gestion_Stage = (props) => {
},
{ field: 'mode_envoi', headerName: 'Mode Envoi', minwidth: 300, flex: 1, hide: true, editable: false, renderCell: (params) => , },
-
+ { field: 'stage_type_eval', headerName: 'Type eval', maxwidth: 200, flex: 1, hide: true, editable: false, renderCell: (params) => , },
{
field: 'date_envoie', headerName: 'Date Envoi', width: 150, editable: false,
@@ -463,7 +402,7 @@ const Module_Gestion_Stage = (props) => {
const options_menu_vertical = [
'Env. Convention',
- 'Archiver/Désarch.',
+
'Supprimer',
];
@@ -547,6 +486,9 @@ const Module_Gestion_Stage = (props) => {
const [p_detail_stage_remuneration, setp_detail_stage_remuneration] = useState("");
const [p_detail_stage_condition_horaire, setp_detail_stage_condition_horaire] = useState("");
+ const [p_detail_stage_mission_etudiant, setp_detail_stage_mission_etudiant] = useState("");
+ const [p_detail_stage_contrainte, setp_detail_stage_contrainte] = useState("");
+
const [p_detail_stage_comment, setp_detail_stage_comment] = useState("");
const [p_detail_stage_date_debut, setp_detail_stage_date_debut] = useState(new Date().toLocaleDateString('fr-FR'));
const [p_detail_stage_date_fin, setp_detail_stage_date_fin] = useState(new Date().toLocaleDateString('fr-FR'));
@@ -586,6 +528,9 @@ const Module_Gestion_Stage = (props) => {
setp_detail_stage_session_id("");
setp_detail_stage_condition_horaire("");
setp_detail_stage_remuneration("");
+
+ setp_detail_stage_mission_etudiant("");
+ setp_detail_stage_contrainte("")
}
function desable_stage_fields() {
@@ -593,7 +538,8 @@ const Module_Gestion_Stage = (props) => {
const list_champs = ["field_stage_desc", "field_stage_objectif", "field_stage_comment", "field_stage_autre_dispo", "field_stage_cp", "field_stage_tuteur_ecole",
"field_stage_entreprise", "field_stage_tuteur_entreprise", "field_stage_adresse", "field_stage_cp", "field_stage_ville", "field_stage_pays", "field_stage_email",
- "field_stage_tel", "field_stage_date_debut", "field_stage_date_fin", "field_stage_horaire", "field_stage_remuneration"]
+ "field_stage_tel", "field_stage_date_debut", "field_stage_date_fin", "field_stage_horaire", "field_stage_remuneration", "field_stage_mission_etudiant",
+ "field_stage_contrainte"]
for (let i = 0; i < list_champs.length; i++) {
if (document.getElementsByName(String(list_champs[i])) && document.getElementsByName(String(list_champs[i]))[0]) {
@@ -611,7 +557,8 @@ const Module_Gestion_Stage = (props) => {
const list_champs = ["field_stage_desc", "field_stage_objectif", "field_stage_comment", "field_stage_autre_dispo", "field_stage_cp", "field_stage_tuteur_ecole",
"field_stage_entreprise", "field_stage_tuteur_entreprise", "field_stage_adresse", "field_stage_cp", "field_stage_ville", "field_stage_pays", "field_stage_email",
- "field_stage_tel", "field_stage_date_debut", "field_stage_date_fin", "field_stage_horaire", "field_stage_remuneration"]
+ "field_stage_tel", "field_stage_date_debut", "field_stage_date_fin", "field_stage_horaire", "field_stage_remuneration", "field_stage_mission_etudiant",
+ "field_stage_contrainte"]
for (let i = 0; i < list_champs.length; i++) {
if (document.getElementsByName(String(list_champs[i])) && document.getElementsByName(String(list_champs[i]))[0]) {
@@ -656,6 +603,15 @@ const Module_Gestion_Stage = (props) => {
var local_nom = JSON.parse(x).nom;
var local_raison_sociale = JSON.parse(x).raison_sociale;
+ var adr_adresse = JSON.parse(x).adr_adresse;
+ var adr_code_postal = JSON.parse(x).adr_code_postal;
+ var adr_ville = JSON.parse(x).adr_ville;
+ var adr_pays = JSON.parse(x).adr_pays;
+
+ var email = JSON.parse(x).email;
+ var telephone = JSON.parse(x).telephone;
+
+
//---
var node = {
"_id": local_id,
@@ -663,6 +619,12 @@ const Module_Gestion_Stage = (props) => {
"label": local_nom,
"nom": local_nom,
"raison_sociale": local_raison_sociale,
+ "adr_adresse": adr_adresse,
+ "adr_code_postal": adr_code_postal,
+ "adr_ville": adr_ville,
+ "adr_pays": adr_pays,
+ "email": email,
+ "telephone": telephone,
};
new_data2.push(node);
@@ -675,6 +637,12 @@ const Module_Gestion_Stage = (props) => {
"label": "",
"nom": "",
"raison_sociale": "",
+ "adr_adresse": "",
+ "adr_code_postal": "",
+ "adr_ville": "",
+ "adr_pays": "",
+ "email": "",
+ "telephone": "",
};
new_data2.push(node);
@@ -731,7 +699,7 @@ const Module_Gestion_Stage = (props) => {
axios.post(myurl, form).then(res => {
// console.log(" In Get_Given_Client_All_Contact res.data.status = " + res.data.status);
- // console.log(" In Get_Given_Client_All_Contact res.data.message r_class = " + res.data.message);
+ // console.log(" In Get_Given_Client_All_Contact res.data.message r_class = " + res.data.message);
if (String(res.data.status) === String("true")) {
setGet_Given_Client_All_Contact_api("true");
@@ -755,8 +723,8 @@ const Module_Gestion_Stage = (props) => {
var node = {
"_id": local_id,
"id": localid,
- "label": local_nom,
- "nom": local_nom + " " + local_prenom + " " + local_fonction,
+ "label": local_nom + " " + local_prenom,
+ "nom": local_nom,
"prenom": local_prenom,
"civilite": local_civilite,
"fonction": local_fonction,
@@ -1061,6 +1029,20 @@ const Module_Gestion_Stage = (props) => {
}
+ if (stage_data.mission_etudiant) {
+ setp_detail_stage_mission_etudiant(stage_data.mission_etudiant);
+ } else {
+ setp_detail_stage_mission_etudiant("");
+ }
+
+
+ if (stage_data.contrainte) {
+ setp_detail_stage_contrainte(stage_data.contrainte);
+ } else {
+ setp_detail_stage_contrainte("");
+ }
+
+
if (stage_data.eu_id) {
setp_detail_stage_eu_id(stage_data.eu_id);
} else {
@@ -1302,6 +1284,27 @@ const Module_Gestion_Stage = (props) => {
var form = new FormData();
+ if (!p_detail_stage_partner_client_tuteur_id || p_detail_stage_partner_client_tuteur_id.length <= 3) {
+ setdisplay_alert_mysy("1");
+ setalert_message(" Vous devez choisir une tuteur d'entreprise ");
+ setalert_type("error");
+ return;
+ }
+
+ if (!p_detail_stage_partner_client_id || p_detail_stage_partner_client_id.length <= 3) {
+ setdisplay_alert_mysy("1");
+ setalert_message(" Vous devez choisir une entreprise partenaire ");
+ setalert_type("error");
+ return;
+ }
+
+ if (!p_detail_stage_internal_tuteur_id || p_detail_stage_internal_tuteur_id.length <= 3) {
+ setdisplay_alert_mysy("1");
+ setalert_message(" Vous devez choisir une tuteur a l'école ");
+ setalert_type("error");
+ return;
+ }
+
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
@@ -1329,6 +1332,9 @@ const Module_Gestion_Stage = (props) => {
form.append("condition_horaire", p_detail_stage_condition_horaire);
form.append("remuneration", p_detail_stage_remuneration);
+ form.append("mission_etudiant", p_detail_stage_mission_etudiant);
+ form.append("contrainte", p_detail_stage_contrainte);
+
// console.log(" #### form = ", form);
var myurl = ""
@@ -1368,6 +1374,17 @@ const Module_Gestion_Stage = (props) => {
setalert_type("success");
+ if (!selected_stage_id.length || selected_stage_id.length <= 3) {
+ if (document.getElementById('myRef_stage_list')) {
+ var divh = document.getElementById('myRef_stage_list').offsetTop + 100;
+ window.scrollTo({
+ top: divh,
+ behavior: "smooth",
+ });
+ }
+ }
+
+
} else if (String(res.data.status) === String("Err_Connexion")) {
alert('Erreur: ' + res.data.message);
@@ -1471,6 +1488,9 @@ const Module_Gestion_Stage = (props) => {
}
const myRef_stage_detail = useRef(null);
+
+ const myRef_stage_list = useRef(null);
+
function handleClick_edit_stage_From_Line(selected_row_id) {
var line = New_Get_Inscrit_List_Stage_result[selected_row_id];
@@ -1486,8 +1506,8 @@ const Module_Gestion_Stage = (props) => {
setedit_stage_data("0");
- if (document.getElementById('myRef_stage_detail')) {
- var divh = document.getElementById('myRef_stage_detail').offsetTop + 100;
+ if (document.getElementById('myRef_stage_list')) {
+ var divh = document.getElementById('myRef_stage_list').offsetTop + 400;
window.scrollTo({
top: divh,
behavior: "smooth",
@@ -1644,60 +1664,8 @@ const Module_Gestion_Stage = (props) => {
const [tab_convention_stage_pieces_jointes_result, settab_convention_stage_pieces_jointes_result] = useState([]);
- const [sessions_file_change_1_convention_api, setsessions_file_change_1_convention_api] = useState();
- const [sessions_file_change_1_convention_result, setsessions_file_change_1_convention_result] = useState();
- const [sessions_file_change_1_convention_message, setsessions_file_change_1_convention_message] = useState();
- const sessions_file_change_1_convention = event => {
- const fileUploaded = event.target.files[0];
- let file_size = event.target.files[0].size;
- let file_type = event.target.files[0].type;
-
-
- if (file_type !== "application/pdf") {
- // alert("Le fichier n'est pas de type PDF");
- setdisplay_alert_mysy("1");
- setalert_message("Le fichier n'est pas de type PDF");
- setalert_type("error");
- return;
- }
-
-
-
- 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");
-
- setdisplay_alert_mysy("1");
- setalert_message("Le fichier ne doit pas depasser un 1 Méga octets");
- setalert_type("error");
-
- return;
- }
-
- //var new_node = {'name':event.target.files[0].name, 'type':event.target.files[0].type}
-
-
- var new_tmp = [];
-
- if (tab_convention_stage_pieces_jointes_result && tab_convention_stage_pieces_jointes_result.length > 0) {
-
- tab_convention_stage_pieces_jointes_result.map((x) => {
- new_tmp.push(x);
-
- });
-
- }
-
- new_tmp.push(event.target.files[0])
-
- settab_convention_stage_pieces_jointes_result(new_tmp);
-
- //console.log(" tab_convention_pieces_jointes_result = ", tab_convention_pieces_jointes_result)
- return;
- };
-
function Delete_Convention_Attached_Doc(event) {
var doc_to_del_name = event.target.id;
@@ -1916,6 +1884,7 @@ const Module_Gestion_Stage = (props) => {
};
+ const [selected_type_stage_eval, setselected_type_stage_eval] = useState("");
const [selected_formulaire_id, setselected_formulaire_id] = useState("");
const [selected_formulaire_type, setselected_formulaire_type] = useState("");
@@ -2008,6 +1977,13 @@ const Module_Gestion_Stage = (props) => {
return;
}
+ if (!selected_type_stage_eval || String(selected_type_stage_eval) === "") {
+ setdisplay_alert_mysy("1");
+ setalert_message("Vous devez choisir un type d'évaluation");
+ setalert_type("error");
+ return;
+ }
+
var form = new FormData();
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
const stored_cookie = getCookie('tokenmysypart');
@@ -2022,9 +1998,7 @@ const Module_Gestion_Stage = (props) => {
form.append("stage_id", selected_stage_id);
form.append("inscription_id", props.selected_id);
-
-
- //alert(" mysession = "+mysession);
+ form.append("stage_type_eval", selected_type_stage_eval);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Add_Specific_Survey_Tab_For_Stage_Evaluation/";
@@ -2085,7 +2059,7 @@ const Module_Gestion_Stage = (props) => {
form.append("token", stored_cookie);
form.append("session_id", props.selected_session_id);
form.append("formulaire_type", "stage_eval");
- form.append("stage_id", selected_stage_id);
+ form.append("stage_id", selected_stage_id);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_List_Survey_with_filter/";
@@ -2413,7 +2387,7 @@ const Module_Gestion_Stage = (props) => {
}
var nom_fichier_cmd = "Q_Evaluation.zip";
- var url = process.env.REACT_APP_API_URL + "myclass/api/Export_To_Excel_Survey_with_filter_Tab_Survey_Id/" + stored_cookie + "/" + tab_ids_survey.toString() + "/Positionnement";
+ var url = process.env.REACT_APP_API_URL + "myclass/api/Export_To_Excel_Survey_with_filter_Tab_Survey_Id/" + stored_cookie + "/" + tab_ids_survey.toString() + "/Stage_Entreprise";
setLoading(true);
@@ -2453,6 +2427,458 @@ const Module_Gestion_Stage = (props) => {
{ "id": "delete_survey", "label": "Supprimer ", "value": "delete_survey" },
]
+ // -- Gestion pièces jointes
+
+ const [Download_one_attached_document_api, setDownload_one_attached_document_api] = useState();
+ const [Download_one_attached_document_result, setDownload_one_attached_document_result] = useState();
+ const [Download_one_attached_document_message, setDownload_one_attached_document_message] = useState();
+
+ const Download_one_attached_document = (event) => {
+ const stored_cookie = getCookie('tokenmysypart');
+
+
+ var nom_fiche_detaillee = "Fiche_Detaillee.pdf";
+ var token = stored_cookie;
+ var file_name = event.target.id;
+
+
+ var url = process.env.REACT_APP_API_URL + "myclass/api/Get_Stored_Downloaded_File/" + token + "/" + file_name;
+
+ setLoading(true);
+ axios.get(url, { responseType: 'blob', },)
+ .then((res) => {
+ setLoading(false);
+ fileDownload(res.data, nom_fiche_detaillee);
+ setDownload_one_attached_document_api("true");
+ }).catch((error) => {
+ setLoading(false);
+ console.error('Error:', error);
+ setDownload_one_attached_document_api("false");
+
+ });
+ }
+
+
+ const [tab_convention_pieces_jointes_result, settab_convention_pieces_jointes_result] = useState([]);
+
+ const [file_1_name, setfile_1_name] = useState();
+
+ const [sessions_file_change_1_api, setsessions_file_change_1_api] = useState();
+ const [sessions_file_change_1_result, setsessions_file_change_1_result] = useState();
+ const [sessions_file_change_1_message, setsessions_file_change_1_message] = useState();
+ const sessions_file_change_1 = event => {
+
+ const fileUploaded = event.target.files[0];
+ let file_size = event.target.files[0].size;
+ let file_type = event.target.files[0].type;
+
+
+
+
+ console.log("file_size 2 = ", file_size, " file_type = ", file_type);
+ if (file_size > 10000000) {
+
+ setdisplay_alert_mysy("1");
+ setalert_message("Le fichier ne doit pas depasser un 1 Méga octets");
+ setalert_type("error");
+ return;
+ }
+
+ setfile_1_name(event.target.files[0]);
+
+ const formData = new FormData();
+ formData.append('File', fileUploaded);
+ //formData.append('token', 'K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA');
+ const stored_cookie = getCookie('tokenmysypart');
+
+
+ return;
+
+
+ };
+
+
+
+ const [sessions_file_change_1_convention_api, setsessions_file_change_1_convention_api] = useState();
+ const [sessions_file_change_1_convention_result, setsessions_file_change_1_convention_result] = useState();
+ const [sessions_file_change_1_convention_message, setsessions_file_change_1_convention_message] = useState();
+ const sessions_file_change_1_convention = event => {
+
+
+ const fileUploaded = event.target.files[0];
+ let file_size = event.target.files[0].size;
+ let file_type = event.target.files[0].type;
+
+
+ if (file_type !== "application/pdf") {
+ // alert("Le fichier n'est pas de type PDF");
+
+ setdisplay_alert_mysy("1");
+ setalert_message("Le fichier n'est pas de type PDF");
+ setalert_type("error");
+
+ return;
+ }
+
+
+
+ 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");
+
+ setdisplay_alert_mysy("1");
+ setalert_message("Le fichier ne doit pas depasser un 1 Méga octets");
+ setalert_type("error");
+ return;
+ }
+
+ //var new_node = {'name':event.target.files[0].name, 'type':event.target.files[0].type}
+
+
+ var new_tmp = [];
+
+ if (tab_convention_pieces_jointes_result && tab_convention_pieces_jointes_result.length > 0) {
+
+ tab_convention_pieces_jointes_result.map((x) => {
+ new_tmp.push(x);
+ });
+
+ }
+
+ new_tmp.push(event.target.files[0])
+
+ settab_convention_pieces_jointes_result(new_tmp);
+
+
+ return;
+
+
+ };
+
+ const [file_2_name, setfile_2_name] = useState();
+
+ const [sessions_file_change_2_api, setsessions_file_change_2_api] = useState();
+ const [sessions_file_change_2_result, setsessions_file_change_2_result] = useState();
+ const [sessions_file_change_2_message, setsessions_file_change_2_message] = useState();
+ const sessions_file_change_2 = event => {
+
+ const fileUploaded = event.target.files[0];
+ let file_size = event.target.files[0].size;
+ let file_type = event.target.files[0].type;
+
+
+ console.log("file_size 1 = ", 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");
+
+ setdisplay_alert_mysy("1");
+ setalert_message("Le fichier ne doit pas depasser un 1 Méga octets");
+ setalert_type("error");
+
+ return;
+ }
+ setfile_2_name(event.target.files[0]);
+
+ const formData = new FormData();
+ formData.append('File', fileUploaded);
+ //formData.append('token', 'K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA');
+ const stored_cookie = getCookie('tokenmysypart');
+
+ //formData.append("token", stored_cookie);
+ //formData.append("class_internal_url", internal_url);
+ //console.log("token = " + stored_cookie);
+
+ return;
+
+
+ };
+
+ const [Record_All_PJ_api, setRecord_All_PJ_api] = useState();
+ const [Record_All_PJ_result, setRecord_All_PJ_result] = useState();
+ const [Record_All_PJ_message, setRecord_All_PJ_message] = useState();
+
+ function Record_All_PJ() {
+
+ if (!p_detail_one_file_to_download_type_name) {
+ // alert(" Vous devez donner un nom à la pièce jointe");
+
+ setdisplay_alert_mysy("1");
+ setalert_message(" Vous devez donner un nom à la pièce jointe");
+ setalert_type("error");
+ return;
+ }
+
+ if (file_1_name && file_1_name.name) {
+ //console.log(" ### Traitement de : ", file_1_name.name);
+
+ const formData = new FormData();
+ formData.append('File', file_1_name);
+ //formData.append('token', 'K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA');
+ const stored_cookie = getCookie('tokenmysypart');
+
+ formData.append("token", stored_cookie);
+ formData.append("file_business_object", p_detail_one_file_to_download_type_name);
+ formData.append("file_name", file_1_name.name);
+ formData.append("status", "0");
+ formData.append("object_owner_collection", "inscription_stage");
+ formData.append("object_owner_id", selected_stage_id);
+ formData.append("type_document", "");
+
+
+ //formData.append("class_internal_url", internal_url);
+ //console.log("token = " + stored_cookie);
+
+ setLoading(true);
+ fetch(
+ process.env.REACT_APP_API_URL + "myclass/api/Store_User_Downloaded_File/",
+ {
+ method: 'POST',
+ body: formData,
+ }
+ )
+ .then((response) => response.json())
+ .then((result) => {
+
+ setLoading(false);
+ //console.log(" ## result['status'] = ", result['status'])
+ if (String(result['status']) === String("true")) {
+ //console.log('Success:', result['message']);
+ setRecord_All_PJ_result(result['message']);
+ setRecord_All_PJ_api("true");
+
+ Get_List_Of_All_PJ(selected_stage_id);
+ setfile_1_name();
+ setp_detail_one_file_to_download_type_name();
+ //GetCurrentClass_trainingsession();
+ var text = " La pièce jointe " + file_1_name.name + " a été bien enregistrée";
+ setdisplay_alert_mysy("1");
+ setalert_message(text);
+ setalert_type("success");
+
+ }
+ else {
+ setRecord_All_PJ_message(result['message']);
+ setRecord_All_PJ_api("false");
+ // alert(result['message']);
+
+ setdisplay_alert_mysy("1");
+ setalert_message(result['message']);
+ setalert_type("error");
+ }
+
+ })
+ .catch((error) => {
+ setLoading(false);
+ console.error(' Record_All_PJ Error:', error);
+ setRecord_All_PJ_api("false");
+ alert(" Impossible d'ajouter la pièce jointe")
+ });
+
+ }
+
+
+ }
+
+
+ const [Delete_one_attached_document_api, setDelete_one_attached_document_api] = useState();
+ const [Delete_one_attached_document_result, setDelete_one_attached_document_result] = useState();
+ const [Delete_one_attached_document_message, setDelete_one_attached_document_message] = useState();
+
+ const Delete_one_attached_document = (event) => {
+ const stored_cookie = getCookie('tokenmysypart');
+
+ var formData = new FormData();
+ var nom_fiche_detaillee = "Fiche_Detaillee.pdf";
+ var file_name = event.target.id;
+
+
+ formData.append("token", stored_cookie);
+ formData.append("file_name", file_name);
+
+ var url = process.env.REACT_APP_API_URL + "myclass/api/Delete_Stored_Downloaded_File/";
+
+ setLoading(true);
+ fetch(
+ process.env.REACT_APP_API_URL + "myclass/api/Delete_Stored_Downloaded_File/",
+ {
+ method: 'POST',
+ body: formData,
+ }
+ )
+ .then((response) => response.json())
+ .then((result) => {
+ setLoading(false);
+ //console.log(" ## result['status'] = ", result['status'])
+ if (String(result['status']) === String("true")) {
+ //console.log('Success:', result['message']);
+ setDelete_one_attached_document_result(result['message']);
+ setDelete_one_attached_document_api("true");
+ Get_List_Of_All_PJ(selected_stage_id);
+ // alert(result['message'])
+ setdisplay_alert_mysy("1");
+ setalert_message(result['message']);
+ setalert_type("success");
+
+ }
+ else {
+ setDelete_one_attached_document_message(result['message']);
+ setDelete_one_attached_document_api("false");
+ // alert(result['message'])
+ setdisplay_alert_mysy("1");
+ setalert_message(result['message']);
+ setalert_type("error");
+ }
+
+ })
+ .catch((error) => {
+ setLoading(false);
+ console.error(' Record_All_PJ Error:', error);
+ setDelete_one_attached_document_api("false");
+ // alert(" Impossible de supprimer le document")
+ setdisplay_alert_mysy("1");
+ setalert_message(" Impossible de supprimer le document");
+ setalert_type("error");
+
+ });
+
+
+ }
+
+
+ const Delete_one_attached_document_convention = (event) => {
+ var file_name = event.target.id;
+
+ }
+
+ const [Get_List_Of_All_PJ_api, setGet_List_Of_All_PJ_api] = useState();
+ const [Get_List_Of_All_PJ_result, setGet_List_Of_All_PJ_result] = useState();
+ const [Get_List_Of_All_PJ_message, setGet_List_Of_All_PJ_message] = useState();
+
+ function Get_List_Of_All_PJ(local_employee_id) {
+
+ const formData = new FormData();
+
+ //formData.append('token', 'K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA');
+ const stored_cookie = getCookie('tokenmysypart');
+
+ formData.append("token", stored_cookie);
+ formData.append("object_owner_collection", "inscription_stage");
+ formData.append("object_owner_id", local_employee_id);
+
+
+ //formData.append("class_internal_url", internal_url);
+ //console.log("token = " + stored_cookie);
+ setLoading(true);
+
+ fetch(
+ process.env.REACT_APP_API_URL + "myclass/api/Get_List_object_owner_collection_Stored_Files/",
+ {
+ method: 'POST',
+ body: formData,
+ }
+ )
+ .then((response) => response.json())
+ .then((result) => {
+ setLoading(false);
+
+ //console.log(" ## result['status'] = ", result['status'])
+ if (String(result['status']) === String("true")) {
+ //console.log('Message :', result['message']);
+ setGet_List_Of_All_PJ_result(result['message']);
+ setGet_List_Of_All_PJ_api("true");
+
+ }
+ else {
+ setGet_List_Of_All_PJ_message(result['message']);
+ setGet_List_Of_All_PJ_api("false");
+ }
+
+ })
+ .catch((error) => {
+ setLoading(false);
+ console.error(' Get_List_Of_All_PJ Error:', error);
+ setGet_List_Of_All_PJ_api("false");
+ });
+
+ }
+
+
+
+ function Delete_file_1_name() {
+ setfile_1_name();
+ }
+
+ function Delete_file_2_name() {
+ setfile_2_name();
+ }
+
+ const [p_detail_one_file_to_download_type_name, setp_detail_one_file_to_download_type_name] = useState();
+
+ // -- end gestion pièces jointes
+
+ const [Delete_Stage_api, setDelete_Stage_api] = useState();
+ const [Delete_Stage_message, setDelete_Stage_message] = useState();
+ const [Delete_Stage_result, setDelete_Stage_result] = useState();
+ function Delete_Stage(local_selected_stage_id) {
+
+ var form = new FormData();
+ //form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
+
+
+ const stored_cookie = getCookie('tokenmysypart');
+ form.append("token", stored_cookie);
+ form.append("stage_id", local_selected_stage_id);
+
+
+
+ var myurl = process.env.REACT_APP_API_URL + "myclass/api/Delete_Given_Stage_Inscrit/";
+ setLoading(true);
+ axios.post(myurl, form).then(res => {
+ //console.log(" In Delete_Stage res.data.status = " + res.data.status);
+ //console.log(" In Delete_Stage res.data.message r_class = " + res.data.message);
+ setLoading(false);
+ if (String(res.data.status) === String("true")) {
+ setDelete_Stage_api("true");
+ setDelete_Stage_result(res.data.message);
+
+ setadd_one_stage("");
+ Get_Inscrit_List_Stage(props.selected_id);
+ clear_stage_fields();
+ setdisplay_selected_stage("");
+ setadd_one_stage("");
+ setstage_data_changed("");
+ setedit_stage_data("0");
+
+ setdisplay_alert_mysy("1");
+ setalert_message(res.data.message);
+ setalert_type("success");
+ }
+ else {
+ setDelete_Stage_api("false");
+ setDelete_Stage_message(res.data.message);
+ // alert(res.data.message);
+ setdisplay_alert_mysy("1");
+ setalert_message(res.data.message);
+ setalert_type("error");
+
+ }
+
+ }).catch((error) => {
+ setLoading(false);
+ console.warn('Delete_Stage : Not good man :( mysearchtext = ' + error);
+ setDelete_Stage_api("false");
+ setdisplay_alert_mysy("1");
+ setalert_message(" Impossible de supprimer le stage");
+ setalert_type("error");
+ })
+ }
+
+ const New_Stage_Evaluation_Type = [
+ { "id": "eval_tuteur_entreprise", "label": "Tuteur Entreprise", "value": "eval_tuteur_entreprise" },
+ { "id": "eval_tuteur_ecole", "label": "Tuteur Ecole", "value": "eval_tuteur_ecole" },
+ { "id": "", "label": "", "value": "" },
+ ]
return (
@@ -2509,9 +2935,35 @@ const Module_Gestion_Stage = (props) => {
+
Type Evaluation
+ {New_Stage_Evaluation_Type.length > 0 &&
(data).id === String(selected_type_stage_eval))[0].label}
- Choisir un questionnaire de positionnement
+ onChange={(event, value) => {
+ if (value && value.id) {
+ setselected_type_stage_eval(value.id);
+
+ } else {
+ setselected_type_stage_eval("");
+ }
+ }}
+
+ renderInput={(params) =>
+ }
+ />}
+
+
+ Choisir un questionnaire d'évaluation
{New_Getall_Partner_Formulaires_with_Filter.length > 0 &&
{
if (String(selected_formulaire_id).length < 5) {
setdisplay_alert_mysy("1");
- setalert_message("Vous devez choisir un questionnaire de positionnement");
+ setalert_message("Vous devez choisir un questionnaire d'évaluation");
setalert_type("error");
return;
}
@@ -3089,14 +3541,13 @@ const Module_Gestion_Stage = (props) => {
{' '}
- En confirmant cette opération, la session sera définitivement supprimée .
+ En confirmant cette opération, le stage sera définitivement supprimé .
{
- // handleClick_delete(event, working_cellValues);
- // handleClick_delete_Session_Formation(event, working_cellValues_promo);
+ Delete_Stage(working_cellValues.row._id);
Dialog_menuitem_close_supp();
}}> Valider
@@ -3125,7 +3576,7 @@ const Module_Gestion_Stage = (props) => {
-
+
@@ -3199,7 +3650,7 @@ const Module_Gestion_Stage = (props) => {
}}
>
{
setselected_stage_id(newSelectionModel.row._id);
handleClick_edit_stage_From_Line(newSelectionModel.row.id);
detail_stage_synthese();
+
+ if (document.getElementById('myRef_stage_detail')) {
+ var divh = document.getElementById('myRef_stage_detail').offsetTop + 400;
+ window.scrollTo({
+ top: divh,
+ behavior: "smooth",
+ });
+ }
}}
rowsPerPageOptions={[10]}
@@ -3328,6 +3787,15 @@ const Module_Gestion_Stage = (props) => {
Getall_RH();
setadd_one_stage("1");
+ if (document.getElementById('myRef_stage_detail')) {
+ var divh = document.getElementById('myRef_stage_detail').offsetTop + 400;
+ window.scrollTo({
+ top: divh,
+ behavior: "smooth",
+ });
+
+ console.log(" ## divh = ", divh)
+ }
}}
className="detail_class_submenu bton_add_session"
id='menu_import_participant' name='menu_import_participant'>Ajout 1 Stage
@@ -3353,7 +3821,7 @@ const Module_Gestion_Stage = (props) => {
-
+
{add_one_stage === "1" &&
Nouveau stage
@@ -3382,26 +3850,42 @@ const Module_Gestion_Stage = (props) => {
options={New_Get_List_Partner_Clients_result}
value={New_Get_List_Partner_Clients_result.filter((data) => (data)._id === String(p_detail_stage_partner_client_id))[0].label}
onChange={(event, value) => {
+ setp_detail_stage_partner_client_tuteur_id("");
+ setNew_Get_Given_Client_All_Contact_result([{
+ "_id": "",
+ "id": "",
+ "label": "",
+ "nom": "",
+ "prenom": "",
+ "civilite": "",
+ "fonction": "",
+ "email": "",
+ "telephone": "",
+ "telephone_mobile": "",
+ }])
+
+
+
if (value && value._id) {
Get_Given_Client_All_Contact(value._id);
setp_detail_stage_partner_client_id(value._id);
+ setp_detail_stage_partner_adresse(value.adr_adresse);
+ setp_detail_stage_partner_cp(value.adr_code_postal);
+ setp_detail_stage_partner_ville(value.adr_ville);
+ setp_detail_stage_partner_pays(value.adr_pays);
+ setp_detail_stage_partner_email(value.email);
+ setp_detail_stage_partner_telephone(value.telephone);
+
}
else {
- setNew_Get_Given_Client_All_Contact_result([{
- "_id": "",
- "id": "",
- "label": "",
- "nom": "",
- "prenom": "",
- "civilite": "",
- "fonction": "",
- "email": "",
- "telephone": "",
- "telephone_mobile": "",
- }])
-
setp_detail_stage_partner_client_id("");
+ setp_detail_stage_partner_adresse("");
+ setp_detail_stage_partner_cp("");
+ setp_detail_stage_partner_ville("");
+ setp_detail_stage_partner_pays("");
+ setp_detail_stage_partner_email("");
+ setp_detail_stage_partner_telephone("");
}
}}
@@ -3691,7 +4175,7 @@ const Module_Gestion_Stage = (props) => {
Synthèse
Details
- Suivi
+ Evaluation
Historique
Pièces jointes
@@ -3727,9 +4211,8 @@ const Module_Gestion_Stage = (props) => {
paddingLeft: '10px', flexWrap: 'wrap'
}}>
-
Entreprise partenaire
-
- {New_Get_List_Partner_Clients_result.length > 0 && String(edit_stage_data) === "1" &&
0 && String(edit_stage_data) === "1" && Entreprise partenaire
+
{
disabled={String(edit_stage_data) === "1" ? false : true}
onChange={(event, value) => {
+
+ setp_detail_stage_partner_client_tuteur_id("");
+ setNew_Get_Given_Client_All_Contact_result([{
+ "_id": "",
+ "id": "",
+ "label": "",
+ "nom": "",
+ "prenom": "",
+ "civilite": "",
+ "fonction": "",
+ "email": "",
+ "telephone": "",
+ "telephone_mobile": "",
+ }])
+
setstage_data_changed("1");
if (value && value._id) {
Get_Given_Client_All_Contact(value._id);
@@ -3746,6 +4244,7 @@ const Module_Gestion_Stage = (props) => {
}
else {
+
setNew_Get_Given_Client_All_Contact_result([{
"_id": "",
"id": "",
@@ -3758,7 +4257,6 @@ const Module_Gestion_Stage = (props) => {
"telephone": "",
"telephone_mobile": "",
}])
-
setp_detail_stage_partner_client_id("");
}
@@ -3769,22 +4267,45 @@ const Module_Gestion_Stage = (props) => {
/>
}
- />}
+ />
+ }
- {New_Get_List_Partner_Clients_result.length > 0 && String(edit_stage_data) !== "1" &&
- (data)._id === String(p_detail_stage_partner_client_id))[0].label}
- />}
+ {New_Get_List_Partner_Clients_result.length > 0 && String(edit_stage_data) !== "1" &&
+
+ }
+
-
Tuteur en entreprise
@@ -4129,7 +4650,7 @@ const Module_Gestion_Stage = (props) => {
- Description
+ Description & Objet
{
- Objectif
+ Objectif pédagogique
{
+
+
+
+
+
+
+
+ Missions de l'étudiant
+
+
+
+
+ {
+ setp_detail_stage_mission_etudiant(e.target.value);
+ setstage_data_changed("1");
+ }}
+ disabled={String(edit_stage_data) === "1" ? false : true}
+ />
+
+
+
+
+
+
+
+
+
+
+
+ Contraintes
+
+
+
+
+ {
+ setp_detail_stage_contrainte(e.target.value);
+ setstage_data_changed("1");
+ }}
+ disabled={String(edit_stage_data) === "1" ? false : true}
+ />
+
+
+
+
+
+
+
+
+
+
+
+
@@ -4230,9 +4833,9 @@ const Module_Gestion_Stage = (props) => {
border: "1px solid gainsboro", width: '99%', padding: '2px',
maxHeight: '15rem', height: '10rem', minHeight: '10rem', marginBottom: '3rem'
}}
- value={p_detail_stage_objectif}
+ value={p_detail_stage_condition_horaire}
onChange={(e) => {
- setp_detail_stage_objectif(e.target.value);
+ setp_detail_stage_condition_horaire(e.target.value);
setstage_data_changed("1");
}}
disabled={String(edit_stage_data) === "1" ? false : true}
@@ -4267,9 +4870,9 @@ const Module_Gestion_Stage = (props) => {
border: "1px solid gainsboro", width: '99%', padding: '2px',
maxHeight: '15rem', height: '5rem', minHeight: '5rem', marginBottom: '3rem'
}}
- value={p_detail_stage_objectif}
+ value={p_detail_stage_remuneration}
onChange={(e) => {
- setp_detail_stage_objectif(e.target.value);
+ setp_detail_stage_remuneration(e.target.value);
setstage_data_changed("1");
}}
disabled={String(edit_stage_data) === "1" ? false : true}
@@ -4435,7 +5038,7 @@ const Module_Gestion_Stage = (props) => {
Getall_Partner_Formulaires_with_Filter();
setDialog_LIST_STAGE_EVAL_open(true);
- }}>Initialiser Q. Position
+ }}>Initialiser Q. Evaluation
@@ -4523,6 +5126,7 @@ const Module_Gestion_Stage = (props) => {
date_envoie: JSON.parse(item).date_envoi,
date_reponse: JSON.parse(item).date_reponse,
mode_envoi: JSON.parse(item).mode_envoi,
+ stage_type_eval: JSON.parse(item).stage_type_eval,
}
))}
@@ -4648,18 +5252,18 @@ const Module_Gestion_Stage = (props) => {
}
{actionmass_q_eval_entreprise_val && String(actionmass_q_eval_entreprise_val) === "print" &&
- Confirmer l'export PDF de questionnaire de positionnement pour {selectionModel_stage.length} ligne(s).
+ Confirmer l'export PDF de questionnaire d'évaluation pour {selectionModel_stage.length} ligne(s).
}
{String(actionmass_q_eval_entreprise_val) === "delete_survey" &&
Seule les demandes au statut 'Init' sont supprimables
- Confirmer la suppression en masse de {selectionModel_stage.length} questionnaire(s) de positionnement.
+ Confirmer la suppression en masse de {selectionModel_stage.length} questionnaire(s) d'évaluation.
}
{actionmass_q_eval_entreprise_val && String(actionmass_q_eval_entreprise_val) === "stage_eval_entreprise_qr_code" &&
- Générer le QR du questionnaire de positionnement {selectionModel_stage.length} ligne(s).
+ Générer le QR du questionnaire d'évaluation {selectionModel_stage.length} ligne(s).
}
@@ -4708,7 +5312,99 @@ const Module_Gestion_Stage = (props) => {
>}
{stage_submenu === "stage_piece_jointe" && <>
- stage_piece_jointe
+
+
+
+
+
+
+
+ {String(props.check_user_acces_right("stagiaire", "write")) === "1" &&
+
+
+
+
+
+
+ Ajouter un fichier
+
+
+
+
+ {file_1_name && file_1_name.name &&
+
+ Nom du fichier
+ {
+ setp_detail_one_file_to_download_type_name(e.target.value);
+
+ }}
+ />
+
+
+
+
+ Fichier : {file_1_name.name} Supprimer
+ }
+
+ {Record_All_PJ_api && String(Record_All_PJ_api) === "true" &&
Pièce jointe enregistrée
}
+
+ {Record_All_PJ_api && String(Record_All_PJ_api) === "false" &&
{Record_All_PJ_message}
}
+
+
+
}
+
+
+ {file_1_name && file_1_name.name &&
+
+
+ } className="bton_enreg">ENREGISTRER LA PIECE
+
+
+
+
}
+
+
+
+
+
+
+
+
+
>}
}
diff --git a/src/components/Modules_Mes_Documents.js b/src/components/Modules_Mes_Documents.js
index f7fd2d7..1bc7b96 100644
--- a/src/components/Modules_Mes_Documents.js
+++ b/src/components/Modules_Mes_Documents.js
@@ -482,7 +482,7 @@ const Modules_Mes_Documents = (props) => {
- const myRef = useRef(null);
+ const myRef = useRef(null);
const [history_securite_read, sethistory_securite_read] = useState("");