02/12/2023 - 12h30

recette2
cherif 2023-12-02 12:33:45 +01:00
parent a6b3cfe584
commit 90deb8fa59
6 changed files with 857 additions and 618 deletions

File diff suppressed because it is too large Load Diff

View File

@ -168,11 +168,11 @@ const Dashbord_Session_Par_Fteur = (props) => {
var form = new FormData();
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("user_dashbord_id", user_dashbord_id);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Delete_To_User_Dashbord/";
//console.log(" ## myurl = ", myurl);
@ -371,7 +371,7 @@ const Dashbord_Session_Par_Fteur = (props) => {
setGetall_Qry_Session_Data_Pourcent_Trainer_api("true");
setGetall_Qry_Session_Data_Pourcent_Trainer_result(res.data.message);
// console.log("### setGetall_Qry_Session_Data_Pourcent_Trainer_result_JSON = ", Getall_Qry_Session_Data_Pourcent_Trainer_result_JSON);
// console.log("### setGetall_Qry_Session_Data_Pourcent_Trainer_result_JSON = ", Getall_Qry_Session_Data_Pourcent_Trainer_result_JSON);
}
else {
@ -395,7 +395,7 @@ const Dashbord_Session_Par_Fteur = (props) => {
useEffect(() => {
Getall_Qry_Session_Data_By_Trainer();
window.scrollTo({
top: 0,
behavior: "smooth",
@ -408,12 +408,12 @@ const Dashbord_Session_Par_Fteur = (props) => {
const [tdb_title, settdb_title] = useState();
return (
<div className="dashbord_session">
<div className="dashbord_session" style={{ "marginLeft": "1px", "marginRight": "2px" }}>
{isLoading && <div className="loader-container">
<div className="mysy_spinner"> <img src={img_loading_spin} /> </div>
</div>}
<div className="div_row">
{/* <div className="div_row">
<div className="" style={{ "width": "30%" }}>
Filtre <br />
<TextField
@ -488,28 +488,66 @@ const Dashbord_Session_Par_Fteur = (props) => {
</Button><br />
</div>
<Box m="20px">
&nbsp;
<div className="titre1"> TBD Session : Nb Session par formateur </div>
<div className="div_row" style={{ "textAlign": "right", "float": "left" }}>
<nav style={{ "width": "20rem", "float": "left" }}>
<Tooltip id="my-tooltip02" style={{ "fontSize": "12px" }} />
<a data-tooltip-id="my-tooltip02" data-tooltip-content="Supprimer de ma liste de TBD">
<MdDeleteForever style={{ "cursor": "pointer" }} onClick={(e) => {
Remove_From_User_TBD();
}}/>
</a>
</nav>
</div>*/}
<div style={{ "height": "40rem" }}>
<div className="titre1" style={{ "float": "left", "cursor": "none" }}>
<nav style={{ "width": "90%", "float": "left", "textAlign": "center" }}> TBD Session : Nb Session par formateur </nav>
<Tooltip id="my-tooltip02" style={{ "fontSize": "12px" }} />
<a data-tooltip-id="my-tooltip02" data-tooltip-content="Supprimer de ma liste de TBD">
<Popup
trigger={
<nav style={{ "width": "9%", "float": "right", "textAlign": "right", "cursor": "pointer" }}>
<MdDeleteForever style={{ "cursor": "pointer", }} />
</nav>
}
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">
{' '}
En confirmant cette opération, le tableau sera supprimé de votre tableau de bord global.<br />
Vous pourrez le rajouter à nouveau si besoin. <br />
</div>
<div className="gest_actions">
<div style={{ "width": "45%", "float": "left" }}>
<button className="gest_bton_popup" onClick={(event) => {
Remove_From_User_TBD();
//console.log('modal closed ');
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>
</a>
</div>
<br /> <br /> <br />
<Box height="50vh" style={{ "color": "black" }}>
<Box style={{ "color": "black", "height": "30rem" }}>
&nbsp;
<ResponsiveBar
data={Getall_Qry_Session_Data_By_Trainer_result_JSON}
@ -643,14 +681,10 @@ const Dashbord_Session_Par_Fteur = (props) => {
barAriaLabel={e => e.id + ": " + e.formattedValue + " in country: " + e.indexValue}
/>
</Box>
</Box>
</div>
<br />
</div>
)
}

View File

@ -168,11 +168,11 @@ const Dashbord_Session_Repartition_Fteur = (props) => {
var form = new FormData();
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("user_dashbord_id", user_dashbord_id);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Delete_To_User_Dashbord/";
//console.log(" ## myurl = ", myurl);
@ -372,7 +372,7 @@ const Dashbord_Session_Repartition_Fteur = (props) => {
setGetall_Qry_Session_Data_Pourcent_Trainer_api("true");
setGetall_Qry_Session_Data_Pourcent_Trainer_result(res.data.message);
// console.log("### setGetall_Qry_Session_Data_Pourcent_Trainer_result_JSON = ", Getall_Qry_Session_Data_Pourcent_Trainer_result_JSON);
// console.log("### setGetall_Qry_Session_Data_Pourcent_Trainer_result_JSON = ", Getall_Qry_Session_Data_Pourcent_Trainer_result_JSON);
}
else {
@ -396,7 +396,7 @@ const Dashbord_Session_Repartition_Fteur = (props) => {
useEffect(() => {
Getall_Qry_Session_Data_Pourcent_Trainer();
window.scrollTo({
top: 0,
@ -410,12 +410,12 @@ const Dashbord_Session_Repartition_Fteur = (props) => {
const [tdb_title, settdb_title] = useState();
return (
<div className="dashbord_session">
<div className="dashbord_session" style={{ "marginLeft": "1px", "marginRight": "2px" }}>
{isLoading && <div className="loader-container">
<div className="mysy_spinner"> <img src={img_loading_spin} /> </div>
</div>}
<div className="div_row">
{/*<div className="div_row">
<div className="" style={{ "width": "30%" }}>
Filtre <br />
<TextField
@ -490,31 +490,66 @@ const Dashbord_Session_Repartition_Fteur = (props) => {
</Button><br />
</div>
<br />
<Box m="20px">
&nbsp;
<div className="titre1"> TBD Session : Repartition par Formateur </div>
<div className="div_row" style={{ "textAlign": "right", "float": "left" }}>
<nav style={{ "width": "20rem", "float": "left" }}>
<Tooltip id="my-tooltip02" style={{ "fontSize": "12px" }} />
<a data-tooltip-id="my-tooltip02" data-tooltip-content="Supprimer de ma liste de TBD ">
<MdDeleteForever style={{ "cursor": "pointer" }} onClick={(e) => {
Remove_From_User_TBD();
}} />
</a>
</nav>
</div>*/}
<div style={{ "height": "40rem" }}>
<div className="titre1" style={{ "float": "left", "cursor": "none" }}>
<nav style={{ "width": "90%", "float": "left", "textAlign": "center" }}> TBD Session : Repartition par Formateur </nav>
<Tooltip id="my-tooltip02" style={{ "fontSize": "12px" }} />
<a data-tooltip-id="my-tooltip02" data-tooltip-content="Supprimer de ma liste de TBD">
<Popup
trigger={
<nav style={{ "width": "9%", "float": "right", "textAlign": "right", "cursor": "pointer" }}>
<MdDeleteForever style={{ "cursor": "pointer", }} />
</nav>
}
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">
{' '}
En confirmant cette opération, le tableau sera supprimé de votre tableau de bord global.<br />
Vous pourrez le rajouter à nouveau si besoin. <br />
</div>
<div className="gest_actions">
<div style={{ "width": "45%", "float": "left" }}>
<button className="gest_bton_popup" onClick={(event) => {
Remove_From_User_TBD();
//console.log('modal closed ');
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>
</a>
</div>
<br /> <br /> <br />
<Box height="50vh" style={{ "color": "black" }}>
<Box style={{ "color": "black", "height": "30rem" }}>
&nbsp;
<ResponsivePie
data={Getall_Qry_Session_Data_Pourcent_Trainer_result_JSON}
margin={{ top: 40, right: 80, bottom: 80, left: 80 }}
@ -649,11 +684,8 @@ const Dashbord_Session_Repartition_Fteur = (props) => {
]}
/>
</Box>
</Box>
</div>
</div>
)
}

View File

@ -168,11 +168,11 @@ const Dashbord_Session_Taux_Remplissage = (props) => {
var form = new FormData();
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("user_dashbord_id", user_dashbord_id);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Delete_To_User_Dashbord/";
console.log(" ## myurl = ", myurl);
@ -371,7 +371,7 @@ const Dashbord_Session_Taux_Remplissage = (props) => {
setGetall_Qry_Session_Data_Pourcent_Trainer_api("true");
setGetall_Qry_Session_Data_Pourcent_Trainer_result(res.data.message);
// console.log("### setGetall_Qry_Session_Data_Pourcent_Trainer_result_JSON = ", Getall_Qry_Session_Data_Pourcent_Trainer_result_JSON);
// console.log("### setGetall_Qry_Session_Data_Pourcent_Trainer_result_JSON = ", Getall_Qry_Session_Data_Pourcent_Trainer_result_JSON);
}
else {
@ -395,7 +395,7 @@ const Dashbord_Session_Taux_Remplissage = (props) => {
useEffect(() => {
Getall_Qry_Session_Data();
window.scrollTo({
top: 0,
behavior: "smooth",
@ -408,11 +408,11 @@ const Dashbord_Session_Taux_Remplissage = (props) => {
const [tdb_title, settdb_title] = useState();
return (
<div className="dashbord_session">
<div className="dashbord_session" style={{ "marginLeft": "1px", "marginRight": "2px" }}>
{isLoading && <div className="loader-container">
<div className="mysy_spinner"> <img src={img_loading_spin} /> </div>
</div>}
<div className="div_row">
{/* <div className="div_row">
<div className="" style={{ "width": "30%" }}>
Filtre <br />
<TextField
@ -487,27 +487,68 @@ const Dashbord_Session_Taux_Remplissage = (props) => {
</Button><br />
</div>
<Box m="20px">
&nbsp;
<div className="titre1"> TBD Session : Taux de remplissage </div>
<div className="div_row" style={{ "textAlign": "right", "float": "left" }}>
<nav style={{ "width": "20rem", "float": "left" }}>
<Tooltip id="my-tooltip02" style={{ "fontSize": "12px" }} />
<a data-tooltip-id="my-tooltip02" data-tooltip-content="Supprimer de ma liste de TBD">
<MdDeleteForever style={{ "cursor": "pointer" }} onClick={(e) => {
Remove_From_User_TBD();
}}/>
</a>
</nav>
</div> */}
<div style={{ "height": "40rem" }}>
<div className="titre1" style={{ "float": "left", "cursor": "none" }}>
<nav style={{ "width": "90%", "float": "left", "textAlign": "center" }}> TBD Session : Taux de remplissage </nav>
<Tooltip id="my-tooltip02" style={{ "fontSize": "12px" }} />
<a data-tooltip-id="my-tooltip02" data-tooltip-content="Supprimer de ma liste de TBD">
<Popup
trigger={
<nav style={{ "width": "9%", "float": "right", "textAlign": "right", "cursor": "pointer" }}>
<MdDeleteForever style={{ "cursor": "pointer", }} />
</nav>
}
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">
{' '}
En confirmant cette opération, le tableau sera supprimé de votre tableau de bord global.<br />
Vous pourrez le rajouter à nouveau si besoin. <br />
</div>
<div className="gest_actions">
<div style={{ "width": "45%", "float": "left" }}>
<button className="gest_bton_popup" onClick={(event) => {
Remove_From_User_TBD();
//console.log('modal closed ');
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>
</a>
</div>
<Box height="50vh" style={{ "color": "black" }}>
<Box style={{ "color": "black", "height": "30rem" }}>
&nbsp;
<ResponsiveBar
data={Getall_Qry_Session_Data_result_JSON}
@ -641,12 +682,9 @@ const Dashbord_Session_Taux_Remplissage = (props) => {
/>
</Box>
</div>
</Box>
<br />
</div>
)
}

View File

@ -52,7 +52,7 @@ import ToggleSwitch from "./ToggleSwitch";
import Dashbord_Session_Par_Fteur from "./Dashbord_Session_Par_Fteur";
import Dashbord_Session_Taux_Remplissage from "./Dashbord_Session_Taux_Remplissage";
import Dashbord_Session_Repartition_Fteur from "./Dashbord_Session_Repartition_Fteur";
import { TbColumns2, TbColumns1 } from "react-icons/tb";
const Mon_Tableau_De_Bord = (props) => {
@ -116,6 +116,7 @@ const Mon_Tableau_De_Bord = (props) => {
}, [])
const [display_nb_column, setdisplay_nb_column] = useState("2");
return (
<div className="mon_tableau_de_bord">
@ -126,33 +127,82 @@ const Mon_Tableau_De_Bord = (props) => {
<h3> Mon tableau de bord </h3>
<div className="div_row"> &nbsp;</div>
<div className="div_row" style={{ "textAlign": "right", "paddingRight": "20px" }}> Affichage &nbsp;
<Tooltip id="my_tooltip_1_col" style={{ "fontSize": "12px" }} />
<a data-tooltip-id="my_tooltip_1_col" data-tooltip-content="Affichage sur une colonne">
<TbColumns1 style={{ "cursor": "pointer" }} onClick={(e) => {
setdisplay_nb_column("1");
}} />
</a> &nbsp; &nbsp;
<Tooltip id="my_tooltip_2_col" style={{ "fontSize": "12px" }} />
<a data-tooltip-id="my_tooltip_2_col" data-tooltip-content="Affichage sur deux colonnes">
<TbColumns2 style={{ "cursor": "pointer" }} onClick={(e) => {
setdisplay_nb_column("2");
}} />
</a> </div>
{Get_Connected_User_Dashbord_result &&
Get_Connected_User_Dashbord_result.map((step) => (
<div className="div_row" style={{ "width": "50%", "float": "left" }}>
{display_nb_column && String(display_nb_column) == "2" && <div>
{Get_Connected_User_Dashbord_result &&
Get_Connected_User_Dashbord_result.map((step) => (
<div className="div_row" style={{ "width": "49%", "float": "left", "paddingRight":"2px" }}>
{String(JSON.parse(step).dashbord_internal_code) === "tbd_code_session_01" &&
{String(JSON.parse(step).dashbord_internal_code) === "tbd_code_session_01" &&
<Dashbord_Session_Taux_Remplissage user_dashbord_id={String(JSON.parse(step)._id)} />
}
{String(JSON.parse(step).dashbord_internal_code) === "tbd_code_session_02" &&
{String(JSON.parse(step).dashbord_internal_code) === "tbd_code_session_02" &&
<Dashbord_Session_Par_Fteur user_dashbord_id={String(JSON.parse(step)._id)} />
}
{String(JSON.parse(step).dashbord_internal_code) === "tbd_code_session_03" &&
{String(JSON.parse(step).dashbord_internal_code) === "tbd_code_session_03" &&
<Dashbord_Session_Repartition_Fteur user_dashbord_id={String(JSON.parse(step)._id)} />
}
</div>
</div>
))}
</div>}
{display_nb_column && String(display_nb_column) == "1" && <div>
{Get_Connected_User_Dashbord_result &&
Get_Connected_User_Dashbord_result.map((step) => (
<div className="div_row" style={{ "width": "95%", "float": "left" }}>
{String(JSON.parse(step).dashbord_internal_code) === "tbd_code_session_01" &&
<Dashbord_Session_Taux_Remplissage user_dashbord_id={String(JSON.parse(step)._id)} />
}
{String(JSON.parse(step).dashbord_internal_code) === "tbd_code_session_02" &&
<Dashbord_Session_Par_Fteur user_dashbord_id={String(JSON.parse(step)._id)} />
}
{String(JSON.parse(step).dashbord_internal_code) === "tbd_code_session_03" &&
<Dashbord_Session_Repartition_Fteur user_dashbord_id={String(JSON.parse(step)._id)} />
}
</div>
))}
</div>}
))}

View File

@ -1102,15 +1102,17 @@ const Partner = (props) => {
<div class="separator"> Mon Compte </div>
{String(menu) !== "mon_tableau_de_bord" && <div className="sousmenu" onClick={mon_tableau_de_bord_func}> <AiOutlineDashboard className="icone_menu" /> MON TABLEAU DE BORD</div>}
{String(menu) === "mon_tableau_de_bord" && <div className="sousmenu_selected" onClick={mon_tableau_de_bord_func} > <AiOutlineDashboard className="icone_menu" /> MON TABLEAU DE BORD</div>}
<hr className="my_hr" />
{String(menu) !== "infopartner" && <div className="sousmenu" onClick={PersonnalData}> <FcHome className="icone_menu" /> MES INFORMATIONS</div>}
{String(menu) === "infopartner" && <div className="sousmenu_selected" onClick={PersonnalData} > <FcHome className="icone_menu" /> MES INFORMATIONS</div>}
<hr className="my_hr" />
{String(menu) !== "mon_tableau_de_bord" && <div className="sousmenu" onClick={mon_tableau_de_bord_func}> <AiOutlineDashboard className="icone_menu" /> MON TABLEAU DE BORD</div>}
{String(menu) === "mon_tableau_de_bord" && <div className="sousmenu_selected" onClick={mon_tableau_de_bord_func} > <AiOutlineDashboard className="icone_menu" /> MON TABLEAU DE BORD</div>}
<hr className="my_hr" />
{String(menu) !== "module_agenda" && <div className="sousmenu" onClick={module_agenda_func}> <FcCalendar className="icone_menu" /> PLANNING </div>}
{String(menu) === "module_agenda" && <div className="sousmenu_selected" onClick={module_agenda_func} > <FcCalendar className="icone_menu" /> PLANNING</div>}
<hr className="my_hr" />