20/11/2023 - 21h00

recette2
cherif 2023-11-20 21:47:12 +01:00
parent fa2b5e2a64
commit 10dcfb1dde
1 changed files with 239 additions and 54 deletions

View File

@ -162,7 +162,7 @@ const DisplayPartnerSession = (props) => {
return "?";
},
},
{ field: 'formateur', headerName: 'Formateur', width: datagrid_columns_size_model1, hide: true, hideable: true, },
{ field: 'formateur', headerName: 'Formateur', minWidth: datagrid_columns_size_model1, hide: true, hideable: true, },
{ field: 'nb_participant', headerName: 'Nb Parti.', width: datagrid_columns_size_model2, align: "center", },
{
field: 'taux_remplissage', headerName: 'Remplissage', align: "center", flex: 1,
@ -186,8 +186,8 @@ const DisplayPartnerSession = (props) => {
},
{ field: 'nb_inscrit', headerName: 'Inscrits', width: datagrid_columns_size_model2, align: "center", hide: true, hideable: true, },
{ field: 'nb_preinscrit', headerName: 'Preinscrits', width: datagrid_columns_size_model2, align: "center", hide: true, hideable: true, },
{ field: 'prix_session', headerName: 'Prix', width: datagrid_columns_size_model2, align: "center", },
{ field: 'title', headerName: 'Formation', width: datagrid_columns_size_model1, align: "center", hide: true, hideable: true, },
{ field: 'prix_session', headerName: 'Prix', minWidth: datagrid_columns_size_model2, align: "center", },
{ field: 'title', headerName: 'Formation', minWidth: 250, flex:1, align: "center", hide: true, hideable: true, },
{ field: 'domaine', headerName: 'Domaine', width: datagrid_columns_size_model1, align: "center", hide: true, hideable: true, },
{ field: 'published', headerName: 'publié', width: datagrid_columns_size_model1, align: "center", hide: true, hideable: true, },
@ -670,13 +670,13 @@ const DisplayPartnerSession = (props) => {
{ field: 'id', headerName: 'id', hide: true },
{ field: '_id', headerName: '_id', hide: true },
{ field: 'session_id', headerName: 'session_id', width: 200, hide: true, flex: 1, minWidth: 150, maxWidth: 300 },
{ field: 'sequence_title', headerName: 'Titre', width: 150, hide: false, editable: false, resizable: true },
{ field: 'sequence_start', headerName: 'Debut', width: 150, hide: false, editable: false },
{ field: 'sequence_end', headerName: 'Fin', width: 200, hide: false, editable: false },
{ field: 'sequence_title', headerName: 'Titre', minWidth: 200, flex:1, hide: false, editable: false, resizable: true },
{ field: 'sequence_start', headerName: 'Debut', minWidth: 200, flex:1, hide: false, editable: false },
{ field: 'sequence_end', headerName: 'Fin', minWidth: 200, flex:1, hide: false, editable: false },
{
field: "Detail", headerName: 'Voir detail',
field: "Detail", headerName: 'Voir detail',minWidth: 200, flex:1,
renderCell: (cellValues) => {
return (
@ -684,13 +684,23 @@ const DisplayPartnerSession = (props) => {
onClick={(event) => {
setselected_detail_sequence_title(cellValues.row.sequence_title);
setselected_sequence_startDate(cellValues.row.sequence_start);
setselected_sequence_endDate(cellValues.row.sequence_end);
Getall_List_Sequence_Ressource(cellValues.row._id);
setselected_sequence_id(cellValues.row._id);
setdisplay_detail_sequence("1")
setdisplay_detail_sequence("1");
if (document.getElementById('myRef_seq_ressource')) {
var divh = document.getElementById('myRef_seq_ressource').offsetTop;
window.scrollTo({
top: divh,
behavior: "smooth",
});
}
}}
>
<FcViewDetails />
@ -702,14 +712,23 @@ const DisplayPartnerSession = (props) => {
},
{
field: "add_ressource", headerName: 'Ajout Ressource',
field: "modifier", headerName: 'Modifier',minWidth: 200, flex:1,
renderCell: (cellValues) => {
return (
<Button
onClick={(event) => {
setp_detail_sequence_title(cellValues.row.sequence_title);
setselected_sequence_id(cellValues.row._id);
var date_du = new Date(moment(cellValues.row.sequence_start, "DD/MM/YYYY HH:mm"));
var date_au = new Date(moment(cellValues.row.sequence_end, "DD/MM/YYYY HH:mm"));
setsequence_startDate(date_du);
setsequence_endDate(date_au);
setupdate_sequence("1");
submenu_add_one_sequence();
}}
>
<FcViewDetails />
@ -721,7 +740,7 @@ const DisplayPartnerSession = (props) => {
},
{
field: "delete", headerName: 'Supprimer',
field: "delete", headerName: 'Supprimer',minWidth: 200, flex:1,
renderCell: (cellValues) => {
return (
@ -794,29 +813,6 @@ const DisplayPartnerSession = (props) => {
{ field: 'related_target_collection_id_nom', headerName: 'nom', width: 150, hide: false, editable: false, resizable: true },
{ field: 'poste', headerName: 'Poste', width: 150, hide: false, editable: false },
{ field: 'comment', headerName: 'Comment', width: 200, hide: false, editable: false },
{
field: "Detail", headerName: 'Voir detail',
renderCell: (cellValues) => {
return (
<Button
onClick={(event) => {
// Delete_Sequence_Session_Data(cellValues.row._id);
}}
>
<FcViewDetails />
</Button>
);
}
},
{
field: "delete", headerName: 'Supprimer',
renderCell: (cellValues) => {
@ -845,13 +841,14 @@ const DisplayPartnerSession = (props) => {
<div className="gest_content">
{' '}
En confirmant cette opération, la séquence sera <i><font color="red"> définitivement supprimée</font></i>. <br />
En confirmant cette opération, la ressource sera <i><font color="red"> définitivement supprimée</font></i>. <br />
</div>
<div className="gest_actions">
<div style={{ "width": "45%", "float": "left" }}>
<button className="gest_bton_popup" onClick={(event) => {
//Delete_Sequence_Session_Data(cellValues.row._id);
Delete_Sequence_Session_Ressource_Data(cellValues.row._id);
//console.log('modal closed ');
close();
}}> Valider </button>
@ -2707,7 +2704,7 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
// Pour les champs spécifiques
console.log(" #### addOneSession = ", addOneSession);
if (String(addOneSession) !== "1") {
for (let i = 0; i < rows_champs_specifics.length; i++) {
@ -6238,6 +6235,13 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
function submenu_add_one_sequence() {
setupdate_sequence();
setp_detail_sequence_title();
setp_detail_sequence_comment();
setsequence_startDate(new Date());
setsequence_endDate(new Date());
setDialog_seq_1_open(true);
}
@ -6302,6 +6306,68 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
}
const [Update_One_Sequence_Session_api, setUpdate_One_Sequence_Session_api] = useState();
const [Update_One_Sequence_Session_message, setUpdate_One_Sequence_Session_message] = useState();
const [Update_One_Sequence_Session_result, setUpdate_One_Sequence_Session_result] = useState();
const Update_One_Sequence_Session = event => {
var new_title = p_detail_sequence_title;
var new_start_date = moment(sequence_startDate).format("DD/MM/YYYY HH:mm");
var new_end_date = moment(sequence_endDate).format("DD/MM/YYYY HH:mm");
var form = new FormData();
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("session_id", selected_session_id);
form.append("sequence_title", new_title);
form.append("sequence_start", new_start_date);
form.append("sequence_end", new_end_date);
form.append("_id", selected_sequence_id);
//console.log(" form == ", form);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Update_Session_Sequence/";
setLoading(true);
axios.post(myurl, form).then(res => {
//console.log(" In Update_One_Sequence_Session res.data.status = " + res.data.status);
//console.log(" In Update_One_Sequence_Session res.data.message r_class = " + res.data.message);
setLoading(false);
if (String(res.data.status) === String("true")) {
setUpdate_One_Sequence_Session_api("true");
setUpdate_One_Sequence_Session_result(res.data.message);
Getall_Sequence_Of_Session(selected_session_id);
setp_detail_sequence_title();
setp_detail_sequence_comment();
setsequence_startDate();
setsequence_endDate();
setupdate_sequence();
alert(res.data.message);
Close_Dialog_Detail_seq_open();
}
else {
setUpdate_One_Sequence_Session_api("false");
setUpdate_One_Sequence_Session_message(res.data.message);
alert(res.data.message);
}
}).catch((error) => {
setLoading(false);
console.warn('UpdateStagiaireData : Not good man :( Update_One_Sequence_Session = ' + error);
setUpdate_One_Sequence_Session_api("false");
alert(" Impossible de mettre à jour la séquence");
})
}
const [Delete_Sequence_Session_Data_api, setDelete_Sequence_Session_Data_api] = useState();
const [Delete_Sequence_Session_Data_message, setDelete_Sequence_Session_Data_message] = useState();
@ -6337,7 +6403,6 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
else {
setDelete_Sequence_Session_Data_api("false");
setDelete_Sequence_Session_Data_message(res.data.message);
setretval_ch("-1");
alert(res.data.message);
}
@ -6346,7 +6411,6 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
setLoading(false);
console.warn('Delete_Sequence_Session_Data : Not good man :( mysearchtext = ' + error);
setDelete_Sequence_Session_Data_api("false");
setretval_ch("-1");
alert(" Impossible de supprimer la sequence");
})
}
@ -6409,9 +6473,7 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
const [Dialog_seq_ressource_1_message, setDialog_seq_ressource_1_message] = React.useState(false);
const [Dialog_seq_ressource_1_open, setDialog_seq_ressource_1_open] = React.useState(false);
function Close_Dialog_Detail_seq_open() {
setDialog_seq_ressource_1_open(false);
}
function Dialog_1_handle_change_participant_session(message) {
setDialog_seq_ressource_1_message(message);
@ -6428,17 +6490,120 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
};
function submenu_add_one_sequence() {
setDialog_seq_ressource_1_open(true);
}
const [Dialog_seq_ressource_1_selected_type_ressource, setDialog_seq_ressource_1_selected_type_ressource] = React.useState();
const [Dialog_seq_ressource_1_selected_ressource_id, setDialog_seq_ressource_1_selected_ressource_id] = React.useState();
const [Dialog_seq_ressource_1_selected_ressource_poste, setDialog_seq_ressource_1_selected_ressource_poste] = React.useState();
const [Add_One_Sequence_Session_Ressource_api, setAdd_One_Sequence_Session_Ressource_api] = useState();
const [Add_One_Sequence_Session_Ressource_message, setAdd_One_Sequence_Session_Ressource_message] = useState();
const [Add_One_Sequence_Session_Ressource_result, setAdd_One_Sequence_Session_Ressource_result] = useState();
const Add_One_Sequence_Session_Ressource = event => {
var new_ressource_type = Dialog_seq_ressource_1_selected_type_ressource;
var new_ressource_id = Dialog_seq_ressource_1_selected_ressource_id;
var new_ressource_poste = Dialog_seq_ressource_1_selected_ressource_poste;
var form = new FormData();
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("sequence_session_id", selected_sequence_id);
form.append("poste", new_ressource_poste);
form.append("related_target_collection", new_ressource_type);
form.append("related_target_collection_id", new_ressource_id);
//console.log(" form == ", form);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Add_Sequence_Affectation_Ressource_Poste/";
setLoading(true);
axios.post(myurl, form).then(res => {
//console.log(" In Add_One_Sequence_Session_Ressource res.data.status = " + res.data.status);
//console.log(" In Add_One_Sequence_Session_Ressource res.data.message r_class = " + res.data.message);
setLoading(false);
if (String(res.data.status) === String("true")) {
setAdd_One_Sequence_Session_Ressource_api("true");
setAdd_One_Sequence_Session_Ressource_result(res.data.message);
Getall_List_Sequence_Ressource(selected_sequence_id);
setDialog_seq_ressource_1_selected_type_ressource();
setDialog_seq_ressource_1_selected_ressource_id();
setDialog_seq_ressource_1_selected_ressource_poste();
alert(res.data.message);
Dialog_seq_ressource_1_handleClose_buton();
}
else {
setAdd_One_Sequence_Session_Ressource_api("false");
setAdd_One_Sequence_Session_Ressource_message(res.data.message);
alert(res.data.message);
}
}).catch((error) => {
setLoading(false);
console.warn('UpdateStagiaireData : Not good man :( Add_One_Sequence_Session_Ressource = ' + error);
setAdd_One_Sequence_Session_Ressource_api("false");
alert(" Impossible d'ajouter la ressource à la séquence");
})
}
const [Delete_Sequence_Session_Ressource_Data_api, setDelete_Sequence_Session_Ressource_Data_api] = useState();
const [Delete_Sequence_Session_Ressource_Data_message, setDelete_Sequence_Session_Ressource_Data_message] = useState();
const [Delete_Sequence_Session_Ressource_Data_result, setDelete_Sequence_Session_Ressource_Data_result] = useState();
function Delete_Sequence_Session_Ressource_Data(local_seq_ressource_id) {
var form = new FormData();
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("_id", local_seq_ressource_id);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Delete_Sequence_Affectation_Ressource_Poste/";
setLoading(true);
axios.post(myurl, form).then(res => {
//console.log(" In Delete_Sequence_Session_Ressource_Data res.data.status = " + res.data.status);
//console.log(" In Delete_Sequence_Session_Ressource_Data res.data.message r_class = " + res.data.message);
setLoading(false);
if (String(res.data.status) === String("true")) {
setDelete_Sequence_Session_Ressource_Data_api("true");
setDelete_Sequence_Session_Ressource_Data_result(res.data.message);
Getall_List_Sequence_Ressource(selected_sequence_id);
alert(res.data.message)
}
else {
setDelete_Sequence_Session_Ressource_Data_api("false");
setDelete_Sequence_Session_Ressource_Data_message(res.data.message);
alert(res.data.message);
}
}).catch((error) => {
setLoading(false);
console.warn('Delete_Sequence_Session_Ressource_Data : Not good man :( mysearchtext = ' + error);
setDelete_Sequence_Session_Ressource_Data_api("false");
alert(" Impossible de supprimer la sequence");
})
}
const myRef_seq_ressource = useRef(null)
const [update_sequence, setupdate_sequence] = useState();
return (
<div className="displaypartnersession">
@ -6622,7 +6787,7 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
>
<DialogTitle>MySy Information</DialogTitle>
<DialogTitle>Ajout Sequence</DialogTitle>
<DialogContent className="DialogContent_width">
<DialogContentText>
{Dialog_seq_1_message}
@ -6732,9 +6897,13 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
<div className="div_row">
<div className="div_row_gauche">
<Button onClick={Add_One_Sequence_Session} className="bton_enreg_dialog">Ajouter</Button>
{String(update_sequence) !== "1" && <Button onClick={Add_One_Sequence_Session} className="bton_enreg_dialog">Ajouter</Button>}
{String(update_sequence) === "1" && <Button onClick={Update_One_Sequence_Session} className="bton_enreg_dialog">Mettre à jour</Button>}
</div>
<div className="div_row_droite" style={{ "textAlign": 'center' }}>
<Button onClick={Close_Dialog_Detail_seq_open} className="bton_annule_dialog" >Fermer</Button>
</div>
@ -6754,7 +6923,7 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
>
<DialogTitle>MySy Information</DialogTitle>
<DialogTitle>Ajout ressource</DialogTitle>
<DialogContent className="DialogContent_width">
<DialogContentText>
{Dialog_seq_ressource_1_message}
@ -6858,7 +7027,7 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
name="event_dialog_title"
id="event_dialog_title"
fullWidth
value={Dialog_seq_ressource_1_selected_ressource_poste}
@ -6881,7 +7050,7 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
<div className="div_row">
<div className="div_row_gauche">
<Button onClick={"Add_One_Sequence_Session"} className="bton_enreg_dialog">Ajouter</Button>
<Button onClick={Add_One_Sequence_Session_Ressource} className="bton_enreg_dialog">Ajouter</Button>
</div>
<div className="div_row_droite" style={{ "textAlign": 'center' }}>
@ -8866,7 +9035,7 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
{String(submenu) === String("sequence_session") && <div style={{ "border": "None" }}>
<h5> Gestion sequence sessionn </h5>
<h5> Gestion séquences </h5>
<div className="div_row" style={{ "border": "None" }}>
@ -8917,6 +9086,22 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
onRowDoubleClick={(newSelectionModel) => {
setselected_detail_sequence_title(newSelectionModel.row.sequence_title);
setselected_sequence_startDate(newSelectionModel.row.sequence_start);
setselected_sequence_endDate(newSelectionModel.row.sequence_end);
Getall_List_Sequence_Ressource(newSelectionModel.row._id);
setselected_sequence_id(newSelectionModel.row._id);
setdisplay_detail_sequence("1");
if (document.getElementById('myRef_seq_ressource')) {
var divh = document.getElementById('myRef_seq_ressource').offsetTop;
window.scrollTo({
top: divh,
behavior: "smooth",
});
}
}}
@ -8990,7 +9175,7 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
</div>
</div>
<div className="div_row" ref={myRef_seq_ressource} id="myRef_seq_ressource"> &nbsp;</div>
{String(display_detail_sequence) === "1" && <div className="div_row" style={{ "border": "None" }}>
<div className="session_caract"> Titre <br />