23/11/23 - 13:30

recette2
cherif 2023-11-23 13:21:12 +01:00
parent a068299ec5
commit 6564400cc5
4 changed files with 260 additions and 39 deletions

View File

@ -2086,7 +2086,7 @@ const DisplayPartnerSession = (props) => {
const value = event.target.value;
if (String(value) === "ajout_ressource" || String(value) === "supprimer" ) {
if (String(value) === "ajout_ressource" || String(value) === "supprimer") {
setactionmass_sequence_val(value);
}
else {
@ -2163,7 +2163,6 @@ const DisplayPartnerSession = (props) => {
var tab_tmp = []
for (var i = 0; i < selectionModel_sequence.length; i++) {
//console.log(" ### selectionModel_insc[i] = ", selectionModel_insc[i]);
var myid = parseInt(String(selectionModel_sequence[i]));
//var line = JSON.parse(rowss[myid]);
tab_tmp.push(myid);
@ -2174,29 +2173,33 @@ const DisplayPartnerSession = (props) => {
async function actionmass_sequence_Traitement() {
setAdd_One_Sequence_Session_mass("1");
var liste_formation = GetSelectedRows_Sequence_Ids();
for (var i = 0; i < liste_formation.length; i++) {
var tab_seq_mongo_ids = [];
var line = JSON.parse(rowss_insc[liste_formation[i]]);
//console.log(" line = ", line);
var email = line.email;
//console.log(" Traitement de email = ", email);
if (String(actionmass_insc_val) === "ajout_ressource") {
for (var i = 0; i < selectionModel_sequence.length; i++) {
alert(" Action Ajout Ressource en cours de dev");
var line_id = selectionModel_sequence[i];
var mongo_id = JSON.parse(Getall_Sequence_Of_Session_result[line_id])._id;
tab_seq_mongo_ids.push(mongo_id);
} else if (String(actionmass_insc_val) === "supprimer") {
alert(" Action supprimer sequence en cours de dev");
}
await sleep(5);
}
settab_selected_sequence_id(tab_seq_mongo_ids);
if (String(actionmass_sequence_val) === "ajout_ressource") {
setDialog_seq_ressource_1_open(true);
}
else if (String(actionmass_sequence_val) === "supprimer") {
Delete_Sequence_Session_Data_Mass(tab_seq_mongo_ids);
}
}
@ -6551,8 +6554,66 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
}
const [Delete_Sequence_Session_Data_Mass_api, setDelete_Sequence_Session_Data_Mass_api] = useState();
const [Delete_Sequence_Session_Data_Mass_message, setDelete_Sequence_Session_Data_Mass_message] = useState();
const [Delete_Sequence_Session_Data_Mass_result, setDelete_Sequence_Session_Data_Mass_result] = useState();
function Delete_Sequence_Session_Data_Mass(local_tab_ids) {
var form = new FormData();
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("tab_id", local_tab_ids);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Delete_Given_Session_Sequence_Mass/";
setLoading(true);
axios.post(myurl, form).then(res => {
//console.log(" In Delete_Sequence_Session_Data_Mass res.data.status = " + res.data.status);
//console.log(" In Delete_Sequence_Session_Data_Mass res.data.message r_class = " + res.data.message);
setLoading(false);
if (String(res.data.status) === String("true")) {
setDelete_Sequence_Session_Data_Mass_api("true");
setDelete_Sequence_Session_Data_Mass_result(res.data.message);
Getall_Sequence_Of_Session(selected_session_id);
setDialog_seq_ressource_1_selected_type_ressource();
setDialog_seq_ressource_1_selected_ressource_id();
setDialog_seq_ressource_1_selected_ressource_poste();
setdisplay_detail_sequence();
setselected_sequence_id();
setupdate_sequence();
setAdd_One_Sequence_Session_mass();
settab_selected_sequence_id([]);
alert(res.data.message)
}
else {
setDelete_Sequence_Session_Data_Mass_api("false");
setDelete_Sequence_Session_Data_Mass_message(res.data.message);
alert(res.data.message);
}
}).catch((error) => {
setLoading(false);
console.warn('Delete_Sequence_Session_Data_Mass : Not good man :( mysearchtext = ' + error);
setDelete_Sequence_Session_Data_Mass_api("false");
alert(" Impossible de supprimer les sequences en masse");
})
}
const [display_detail_sequence, setdisplay_detail_sequence] = useState();
const [selected_sequence_id, setselected_sequence_id] = useState();
const [tab_selected_sequence_id, settab_selected_sequence_id] = useState([]);
@ -6631,6 +6692,9 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
const [Dialog_seq_ressource_1_selected_ressource_poste, setDialog_seq_ressource_1_selected_ressource_poste] = React.useState();
const [Add_One_Sequence_Session_mass, setAdd_One_Sequence_Session_mass] = 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();
@ -6653,6 +6717,7 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
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);
@ -6735,6 +6800,70 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
})
}
const [Add_One_Sequence_Session_Ressource_Mass_api, setAdd_One_Sequence_Session_Ressource_Mass_api] = useState();
const [Add_One_Sequence_Session_Ressource_Mass_message, setAdd_One_Sequence_Session_Ressource_Mass_message] = useState();
const [Add_One_Sequence_Session_Ressource_Mass_result, setAdd_One_Sequence_Session_Ressource_Mass_result] = useState();
const Add_One_Sequence_Session_Ressource_Mass = tab_ids => {
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("tab_sequence_session_id", tab_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_Mass/";
setLoading(true);
axios.post(myurl, form).then(res => {
//console.log(" In Add_One_Sequence_Session_Ressource_Mass res.data.status = " + res.data.status);
//console.log(" In Add_One_Sequence_Session_Ressource_Mass res.data.message r_class = " + res.data.message);
setLoading(false);
if (String(res.data.status) === String("true")) {
setAdd_One_Sequence_Session_Ressource_Mass_api("true");
setAdd_One_Sequence_Session_Ressource_Mass_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();
setAdd_One_Sequence_Session_mass();
settab_selected_sequence_id([]);
alert(res.data.message);
Dialog_seq_ressource_1_handleClose_buton();
}
else {
setAdd_One_Sequence_Session_Ressource_Mass_api("false");
setAdd_One_Sequence_Session_Ressource_Mass_message(res.data.message);
alert(res.data.message);
}
}).catch((error) => {
setLoading(false);
console.warn('UpdateStagiaireData : Not good man :( Add_One_Sequence_Session_Ressource_Mass = ' + error);
setAdd_One_Sequence_Session_Ressource_Mass_api("false");
alert(" Impossible d'ajouter la ressource à la séquence");
})
}
const myRef_seq_ressource = useRef(null)
const [update_sequence, setupdate_sequence] = useState();
@ -7192,7 +7321,9 @@ 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_Ressource} className="bton_enreg_dialog">Ajouter</Button>
{String(Add_One_Sequence_Session_mass) !== "1" && <Button onClick={Add_One_Sequence_Session_Ressource} className="bton_enreg_dialog">Ajouter</Button>}
{String(Add_One_Sequence_Session_mass) === "1" && <Button onClick={Add_One_Sequence_Session_Ressource_Mass} className="bton_enreg_dialog">Ajouter en masse</Button>}
</div>
<div className="div_row_droite" style={{ "textAlign": 'center' }}>
@ -9196,7 +9327,7 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
}}
>
<DataGrid
checkboxSelection = {true}
checkboxSelection={true}
disableRowSelectionOnClick
onSelectionModelChange={(newSelectionModel) => {
setselectionModel_sequence(newSelectionModel);

View File

@ -1090,7 +1090,7 @@ const Partner_Configuration_Jours_Travail = (props) => {
if (document.getElementsByName(date_off_name)[0]) {
var date_off_value = document.getElementsByName(date_off_name)[0].value;
console.log(" ### date_off_value = ", date_off_value);
global_partner_working_hours['date_off'].push(date_off_value)
@ -1098,8 +1098,6 @@ const Partner_Configuration_Jours_Travail = (props) => {
}
console.log(" global_partner_working_hours = ", global_partner_working_hours);
var json_str = JSON.stringify(global_partner_working_hours)
console.log(" json_str = ", json_str);
@ -1114,15 +1112,21 @@ const Partner_Configuration_Jours_Travail = (props) => {
//console.log(" form == ", form);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Add_Update_Modele_Journee/";
setLoading(true);
axios.post(myurl, form).then(res => {
//console.log(" In Add_Update_working_Setup res.data.status = " + res.data.status);
//console.log(" In Add_Update_working_Setup res.data.message r_class = " + res.data.message);
setLoading(false);
if (String(res.data.status) === String("true")) {
setAdd_Update_working_Setup_api("true");
setAdd_Update_working_Setup_result(res.data.message);
window.scrollTo({
top: 0,
behavior: "smooth",
});
alert(res.data.message);
}
@ -1134,6 +1138,7 @@ const Partner_Configuration_Jours_Travail = (props) => {
}).catch((error) => {
setLoading(false);
console.warn('UpdateStagiaireData : Not good man :( Add_Update_working_Setup = ' + error);
setAdd_Update_working_Setup_api("false");
alert(" Impossible de créer / mettre à jour le modèle de journée de travail ");
@ -1446,12 +1451,9 @@ const Partner_Configuration_Jours_Travail = (props) => {
var line = JSON.parse(res.data.message);
console.log(" LILLLLLLLLL = ", line);
console.log(" partner_owner_recid = ", JSON.parse(res.data.message).partner_owner_recid );
if( String( JSON.parse(res.data.message).partner_owner_recid ) !== "default"){
setselected_Model_Journee_id( String(JSON.parse(res.data.message).partner_owner_recid ) )
if (String(JSON.parse(res.data.message).partner_owner_recid) !== "default") {
setselected_Model_Journee_id(String(JSON.parse(res.data.message)._id))
}
Get_working_Setup_With_arg(line);
@ -1466,7 +1468,7 @@ const Partner_Configuration_Jours_Travail = (props) => {
}).catch((error) => {
console.warn('Not good man :( Getall_Default_Model_Journee = ', error);
setGetall_Default_Model_Journee_api("false");
alert(" Impossible de recuperer la liste des étapes de session");
alert(" Impossible de recuperer la configuration des journées de travail");
//setmyApimyApiMessage("")
})
}
@ -1713,11 +1715,55 @@ const Partner_Configuration_Jours_Travail = (props) => {
<div className="div_row">
<div className="div_row" >
<Button variant="contained" className="bton_enreg" onClick={Add_Update_working_Setup}>Envoyer
<Popup
trigger={
<Button variant="contained" className="bton_enreg" >Enregistrer
</Button>
}
modal
nested
position="center center"
<Button variant="contained" className="bton_enreg" onClick={Get_working_Setup}>test affichage
</Button>
>
{close => (
<div>
<button className="gest_close" onClick={close}>
&times;
</button>
<div className="gest_header"> MySy Information </div>
<div className="gest_content">
{' '}
<font color="red"> Confirmer la modification des jours et heures travaillés.
</font>
</div>
<div className="gest_actions">
<div style={{ "width": "45%", "float": "left" }}>
<button className="gest_bton_popup" onClick={(event) => {
Add_Update_working_Setup();
close();
}}> Valider </button>
</div>
<div style={{ "width": "45%", "float": "right" }}>
<button
className="gest_bton_popup"
onClick={() => {
//console.log('modal closed ');
close();
}}
>
Annuler
</button>
</div>
</div>
</div>
)}
</Popup>
{/*<Button variant="contained" className="bton_enreg" onClick={Get_working_Setup}>test affichage
</Button>*/}
</div>
<table style={{ "border": "1px solid", "width": "95%" }}>
@ -1933,8 +1979,52 @@ const Partner_Configuration_Jours_Travail = (props) => {
<div className="div_row" >
<Button variant="contained" className="bton_enreg" onClick={Add_Update_working_Setup}>Envoyer
<Popup
trigger={
<Button variant="contained" className="bton_enreg" >Enregistrer
</Button>
}
modal
nested
position="center center"
>
{close => (
<div>
<button className="gest_close" onClick={close}>
&times;
</button>
<div className="gest_header"> MySy Information </div>
<div className="gest_content">
{' '}
<font color="red"> Confirmer la modification des jours et heures travaillés.
</font>
</div>
<div className="gest_actions">
<div style={{ "width": "45%", "float": "left" }}>
<button className="gest_bton_popup" onClick={(event) => {
Add_Update_working_Setup();
close();
}}> Valider </button>
</div>
<div style={{ "width": "45%", "float": "right" }}>
<button
className="gest_bton_popup"
onClick={() => {
//console.log('modal closed ');
close();
}}
>
Annuler
</button>
</div>
</div>
</div>
)}
</Popup>
</div>

View File

@ -1943,7 +1943,7 @@
border-radius: 5px;
background: white;
border: solid gainsboro 1px;
padding-left: 5px !important;
//padding-left: 5px !important;
}
.session_caract_Dialog {

View File

@ -1785,7 +1785,7 @@
border-radius: 5px;
background: white;
border: solid gainsboro 1px;
padding-left: 5px !important;
//padding-left: 5px !important;
}
.disabled_style_Dialog {