26/11/2023 22h

recette2
cherif 2023-11-26 22:07:49 +01:00
parent 65f920e311
commit 75b4677d4b
6 changed files with 336 additions and 31 deletions

View File

@ -7397,6 +7397,32 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
}
function submenu_add_one_tuteur() {
setDialog_tuteur_1_open(true);
}
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);
};
return (
<div className="displaypartnersession">
@ -7857,6 +7883,49 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
</DialogActions>
</Dialog>
<Dialog
open={Dialog_tuteur_1_open}
onClose={Dialog_tuteur_1_handleClose}
className="displaypartnersession"
>
<DialogTitle>Ajout ressource</DialogTitle>
<DialogContent className="DialogContent_width">
<DialogContentText>
{Dialog_tuteur_1_message}
</DialogContentText>
</DialogContent>
<DialogActions>
<div className="div_row">
<div className="div_row_gauche">
{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' }}>
<Button onClick={Dialog_tuteur_1_handleClose_buton} className="bton_annule_dialog" >Fermer</Button>
</div>
</div>
</DialogActions>
</Dialog>
<h3> Vos sessions de formation </h3>
@ -10040,7 +10109,7 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
<Popup
trigger={
<Button variant="outlined"
className="detail_class_submenu bton_add_session" style={{"width":"40%"}}
className="detail_class_submenu bton_add_session bton_add_session_create_automatic" style={{"width":"40%"}}
id='menu_import_participant' name='menu_import_participant'>Création automatique
<FcMultipleSmartphones />
</Button>

View File

@ -438,7 +438,6 @@ const Module_Absence = (props) => {
const [GetAttendee_api, setGetAttendee_api] = useState();
const [GetAttendee_message, setGetAttendee_message] = useState();
const [GetAttendee_result, setGetAttendee_result] = useState();
@ -720,9 +719,66 @@ const Module_Absence = (props) => {
const [Partner_Debut_Journee, setPartner_Debut_Journee] = useState("7:00");
const [Partner_Fin_Journee, setPartner_Fin_Journee] = useState("20:00");
const [Get_Partner_Debut_Fin_Journee_api, setGet_Partner_Debut_Fin_Journee_api] = useState();
const [Get_Partner_Debut_Fin_Journee_message, setGet_Partner_Debut_Fin_Journee_message] = useState();
const [Get_Partner_Debut_Fin_Journee_result, setGet_Partner_Debut_Fin_Journee_result] = useState();
function Get_Partner_Debut_Fin_Journee(event) {
var form = new FormData();
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_Default_Debut_Fin_journee_Modele_Journee/";
setLoading(true);
axios.post(myurl, form).then(res => {
//console.log(" In Get_Partner_Debut_Fin_Journee res.data.status = " + res.data.status);
//console.log(" In Get_Partner_Debut_Fin_Journee res.data.message r_class = " + res.data.message);
setLoading(false);
if (String(res.data.status) === String("true")) {
setGet_Partner_Debut_Fin_Journee_api("true");
setGet_Partner_Debut_Fin_Journee_result(res.data.message);
var val_json = JSON.parse(res.data.message);
if (JSON.parse(res.data.message).planning_debut_journee)
setPartner_Debut_Journee(String(JSON.parse(res.data.message).planning_debut_journee))
if (JSON.parse(res.data.message).planning_fin_journee)
setPartner_Fin_Journee(String(JSON.parse(res.data.message).planning_fin_journee))
}
else if (String(res.data.status) === String("Err_Connexion")) {
alert('Erreur: ' + res.data.message);
history.push("/Connexion");
}
else {
setGet_Partner_Debut_Fin_Journee_api("false");
setGet_Partner_Debut_Fin_Journee_message(res.data.message);
}
}).catch((error) => {
setLoading(false);
console.warn('Not good man :( Get_Partner_Debut_Fin_Journee = ', error);
setGet_Partner_Debut_Fin_Journee_api("false");
//setmyApimyApiMessage("")
})
}
useEffect(() => {
Get_Connected_User_List_Agenda_Events();
Get_Partner_Debut_Fin_Journee();
//Getall_Training_Employee_No_Filter();
//Getall_Training_Materiel_No_Filter();
@ -1284,8 +1340,8 @@ const Module_Absence = (props) => {
//plugins={[timeGridPlugin]}
plugins={[timeGridPlugin, daygridPlugin, interactionPlugin]}
views={["dayGridMonth", "dayGridWeek", "dayGridDay"]}
slotMinTime="07:00"
slotMaxTime="20:00"
slotMinTime={Partner_Debut_Journee}
slotMaxTime={Partner_Fin_Journee}
scrollTime='08:00'
displayEventEnd={true}
eventContent={renderEventContent}

View File

@ -615,11 +615,73 @@ const Module_Agenda = (props) => {
})
}
const [Partner_Debut_Journee, setPartner_Debut_Journee] = useState("7:00");
const [Partner_Fin_Journee, setPartner_Fin_Journee] = useState("20:00");
const [Get_Partner_Debut_Fin_Journee_api, setGet_Partner_Debut_Fin_Journee_api] = useState();
const [Get_Partner_Debut_Fin_Journee_message, setGet_Partner_Debut_Fin_Journee_message] = useState();
const [Get_Partner_Debut_Fin_Journee_result, setGet_Partner_Debut_Fin_Journee_result] = useState();
function Get_Partner_Debut_Fin_Journee(event) {
var form = new FormData();
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_Default_Debut_Fin_journee_Modele_Journee/";
setLoading(true);
axios.post(myurl, form).then(res => {
//console.log(" In Get_Partner_Debut_Fin_Journee res.data.status = " + res.data.status);
//console.log(" In Get_Partner_Debut_Fin_Journee res.data.message r_class = " + res.data.message);
setLoading(false);
if (String(res.data.status) === String("true")) {
setGet_Partner_Debut_Fin_Journee_api("true");
setGet_Partner_Debut_Fin_Journee_result(res.data.message);
var val_json = JSON.parse(res.data.message);
if (JSON.parse(res.data.message).planning_debut_journee)
setPartner_Debut_Journee(String(JSON.parse(res.data.message).planning_debut_journee))
if (JSON.parse(res.data.message).planning_fin_journee)
setPartner_Fin_Journee(String(JSON.parse(res.data.message).planning_fin_journee))
}
else if (String(res.data.status) === String("Err_Connexion")) {
alert('Erreur: ' + res.data.message);
history.push("/Connexion");
}
else {
setGet_Partner_Debut_Fin_Journee_api("false");
setGet_Partner_Debut_Fin_Journee_message(res.data.message);
}
}).catch((error) => {
setLoading(false);
console.warn('Not good man :( Get_Partner_Debut_Fin_Journee = ', error);
setGet_Partner_Debut_Fin_Journee_api("false");
//setmyApimyApiMessage("")
})
}
useEffect(() => {
Get_Connected_User_List_Agenda_Events();
setselected_employee_id(myconntected_employee_id);
Getall_Training_Employee_No_Filter();
Getall_Training_Materiel_No_Filter();
Get_Partner_Debut_Fin_Journee();
}, [myconntected_employee_id])
@ -1154,8 +1216,8 @@ const Module_Agenda = (props) => {
//plugins={[timeGridPlugin]}
plugins={[timeGridPlugin, daygridPlugin, interactionPlugin]}
views={["dayGridMonth", "dayGridWeek", "dayGridDay"]}
slotMinTime="07:00"
slotMaxTime="20:00"
slotMinTime={Partner_Debut_Journee}
slotMaxTime={Partner_Fin_Journee}
scrollTime='08:00'
displayEventEnd={true}
eventContent={renderEventContent}

View File

@ -1098,9 +1098,41 @@ const Partner_Configuration_Jours_Travail = (props) => {
}
if (document.getElementsByName("planning_debut_journee")[0] && document.getElementsByName("planning_fin_journee")[0]) {
var debut_journee_value = document.getElementsByName("planning_debut_journee")[0].value;
var fin_journee_value = document.getElementsByName("planning_fin_journee")[0].value;
if (debut_journee_value === undefined || String(debut_journee_value) === ""
|| fin_journee_value === undefined || String(fin_journee_value) === "") {
console.log(" Les heures de début et de fin de journée (planning) sont incorrectes");
return;
}
var work_debut_journee_value = parseInt(String(debut_journee_value).replaceAll(":", ''))
var work_fin_journee_value = parseInt(String(fin_journee_value).replaceAll(":", ''))
if (work_debut_journee_value >= work_fin_journee_value) {
console.log(" Les heures de début et de fin de journée (planning) sont incorrectes. L'heure de fin de journée doit être antérieure à l'heure de début de journée");
return;
}
var json_journee_travaille = {
'planning_debut_journee': String(debut_journee_value),
'planning_fin_journee': String(fin_journee_value),
}
global_partner_working_hours['debut_fin_journee'] = json_journee_travaille
}
var json_str = JSON.stringify(global_partner_working_hours)
console.log(" json_str = ", json_str);
//console.log(" json_str = ", json_str);
var form = new FormData();
@ -1458,6 +1490,14 @@ const Partner_Configuration_Jours_Travail = (props) => {
Get_working_Setup_With_arg(line);
if (String(JSON.parse(res.data.message).debut_fin_journee.planning_debut_journee) ) {
document.getElementById("planning_debut_journee").value = String(JSON.parse(res.data.message).debut_fin_journee.planning_debut_journee);
}
if (String(JSON.parse(res.data.message).debut_fin_journee.planning_fin_journee) ) {
document.getElementById("planning_fin_journee").value = String(JSON.parse(res.data.message).debut_fin_journee.planning_fin_journee);
}
}
else {
setGetall_Default_Model_Journee_api("false");
@ -1475,9 +1515,6 @@ const Partner_Configuration_Jours_Travail = (props) => {
async function Get_working_Setup_With_arg(json_test) {
/***
* Recuperation des nombres de sequence
*/
@ -1943,6 +1980,74 @@ const Partner_Configuration_Jours_Travail = (props) => {
<div className="div_row" > &nbsp;</div>
<div className="div_row">
<table style={{ "border": "1px solid", "width": "95%" }}>
<thead >
<tr>
<td colspan="4" style={{ "background": "#EAECEE", "textAlign": "center" }}>
Plage horaire (planning)
</td>
</tr>
</thead>
<tbody>
<tr>
<td style={{ "border": "1px solid", "width": "10%" }} >
<div className="div_row" style={{ "textAlign": "left" }}>
<Button > Heure Début & Fin journée</Button>
</div>
</td>
<td style={{ "border": "1px solid", "width": "50%" }}>
<TextField
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
required
name="planning_debut_journee"
id="planning_debut_journee"
type="time"
label="Du (hh:mm) "
InputLabelProps={{
shrink: true,
}}
disabled={false}
className="disabled_style"
/>
</td>
<td style={{ "border": "1px solid", "width": "50%" }}>
<TextField
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
required
name="planning_fin_journee"
id="planning_fin_journee"
type="time"
label="Au (hh:mm) "
InputLabelProps={{
shrink: true,
}}
disabled={false}
className="disabled_style"
/>
</td>
</tr>
</tbody>
</table>
</div>
<div className="div_row" > &nbsp;</div>
<div className="div_row">
<table style={{ "border": "1px solid", "width": "95%" }}>

View File

@ -897,6 +897,8 @@
width: 50%;
}
.bton_import_excel {
background: #c8cfd5;
color: black;
@ -1545,6 +1547,11 @@
color: black;
width: 40%;
}
.bton_add_session_create_automatic {
background: #c8cfd5;
color: black;
width:60% !important;
}
.bton_import_excel {
background: #c8cfd5;
@ -2085,6 +2092,12 @@
width: 20% !important;
}
.bton_add_session_create_automatic {
background: #c8cfd5;
color: black;
width: 40% !important;
}
.bton_import_excel {
background: #c8cfd5;
color: black;

View File

@ -537,7 +537,7 @@
border-radius: 5px;
background: white;
border: solid gainsboro 1px;
padding-left: 5px !important;
padding-left: 0px !important;
}
@ -701,7 +701,7 @@
border-radius: 5px;
background: white;
border: solid gainsboro 1px;
padding-left: 5px !important;
padding-left: 0px !important;
}
.training_caract {
@ -1296,7 +1296,7 @@
border-radius: 5px;
background: white;
border: solid gainsboro 1px;
padding-left: 5px !important;
padding-left: 0px !important;
}
.training_caract {
@ -1771,7 +1771,7 @@
border-radius: 5px;
background: white;
border: solid gainsboro 1px;
padding-left: 5px !important;
padding-left: 0px !important;
}
.disabled_style_date_off {