From 3801817487afea042c3721b59d820988d4c42b85 Mon Sep 17 00:00:00 2001 From: cherif Date: Thu, 14 Dec 2023 08:47:21 +0100 Subject: [PATCH] 14/12/2023 - 08h30 --- src/components/Employes.js | 204 ++++++++++++++++++++++++--- src/components/Partner_Prix_Achat.js | 2 + 2 files changed, 188 insertions(+), 18 deletions(-) diff --git a/src/components/Employes.js b/src/components/Employes.js index 0c90a6a..3707753 100644 --- a/src/components/Employes.js +++ b/src/components/Employes.js @@ -316,8 +316,8 @@ const Employes = (props) => { { field: 'rh_id', headerName: 'rh_id', flex: 1, hideable: false, hide: true, }, { field: 'date_debut', headerName: 'Du', width: 150, hide: false, }, { field: 'date_fin', headerName: 'Au', width: 150, hide: false, }, - { field: 'type_contrat', headerName: 'Type Contrat', flex: 1, hide: false, width: 150,}, - { field: 'type_employe', headerName: 'Type Employé', flex: 1, hide: false, width: 150,}, + { field: 'type_contrat', headerName: 'Type Contrat', flex: 1, hide: false, width: 150, }, + { field: 'type_employe', headerName: 'Type Employé', flex: 1, hide: false, width: 150, }, { field: "delete", headerName: 'Supprimer', @@ -327,9 +327,6 @@ const Employes = (props) => { { - //handleClick_delete(event, cellValues); - }} > @@ -353,7 +350,7 @@ const Employes = (props) => {
@@ -3798,6 +3795,13 @@ const Employes = (props) => { const Dialog_employe_contrat_handleClose_buton = () => { + setp_employe_contrat_type_contrat(); + setp_employe_contrat_type_employe(); + setp_employe_contrat_cout(); + setp_employe_contrat_groupe_prix_achat_id(); + setp_employe_contrat_date_debut(new Date().toLocaleDateString('fr-FR')); + setp_employe_contrat_date_fin(date_today_90j.toLocaleDateString('fr-FR')); + setselected_contrat_id(""); setDialog_employe_contrat_open(false); }; @@ -3806,13 +3810,70 @@ const Employes = (props) => { setDialog_employe_contrat_open(false); }; + const [handleClick_delete_employee_contrat_api, sethandleClick_delete_employee_contrat_api] = useState(); + const [handleClick_delete_employee_contrat_message, sethandleClick_delete_employee_contrat_message] = useState(); + const [handleClick_delete_employee_contrat_result, sethandleClick_delete_employee_contrat_result] = useState(); + function handleClick_delete_employee_contrat(event, cellValues) { + + var local_employe_id = cellValues.row._id; + + var form = new FormData(); + + + const stored_cookie = getCookie('tokenmysypart'); + form.append("token", stored_cookie); + form.append("_id", local_employe_id); + + + + var myurl = process.env.REACT_APP_API_URL + "myclass/api/Delete_Employee_Contrat/"; + + setLoading(true); + axios.post(myurl, form).then(res => { + + setLoading(false); + if (String(res.data.status) === String("true")) { + //console.log(" In handleClick_delete_employee_contrat res.data.status = " + res.data.status); + //console.log(" In handleClick_delete_employee_contrat res.data.message r_class = " + res.data.message); + sethandleClick_delete_employee_contrat_api("true"); + sethandleClick_delete_employee_contrat_result(res.data.message); + Dialog_employe_contrat_handleClose_buton(); + Dialog_employe_contrat_handleClose_buton(); + Getall_Employee_Contrat(selected_id); + Get_Partner_Purchase_Prices(); + setselectionModel_contrat([]); + if (document.getElementById('myRef_contrat')) { + var divh = document.getElementById('myRef_contrat').offsetTop; + window.scrollTo({ + top: divh, + behavior: "smooth", + }); + } + + alert(res.data.message); + + } + else { + sethandleClick_delete_employee_contrat_api("false"); + sethandleClick_delete_employee_contrat_message(res.data.message); + alert(res.data.message); + } + + }).catch((error) => { + setLoading(false); + console.warn('Not good man :( handleClick_delete_employee_contrat = ', error); + sethandleClick_delete_employee_contrat_api("false"); + alert(" Impossible de supprimer le contrat"); + //setmyApimyApiMessage("") + }) + } + const [selected_contrat_id, setselected_contrat_id] = useState(); const [p_employe_contrat_type_contrat, setp_employe_contrat_type_contrat] = useState(""); const [p_employe_contrat_type_employe, setp_employe_contrat_type_employe] = useState(""); const [p_employe_contrat_cout, setp_employe_contrat_cout] = useState(""); const [p_employe_contrat_groupe_prix_achat_id, setp_employe_contrat_groupe_prix_achat_id] = useState(""); - const [p_employe_contrat_date_debut, setp_employe_contrat_date_debut] = useState(new Date().toLocaleDateString('fr-FR')); const [p_employe_contrat_date_fin, setp_employe_contrat_date_fin] = useState(date_today_90j.toLocaleDateString('fr-FR')); @@ -3863,8 +3924,8 @@ const Employes = (props) => { var line = JSON.parse(Getall_Employee_Contrat_result[row_id]); //console.log("### line = ", line); - var employe_id = line._id; - setselected_id(employe_id); + var contrat_id = line._id; + setselected_contrat_id(contrat_id); setp_employe_contrat_type_contrat(line.type_contrat); setp_employe_contrat_type_employe(line.type_employe); @@ -3877,6 +3938,88 @@ const Employes = (props) => { } + const [Add_Update_Employee_Contrat_api, setAdd_Update_Employee_Contrat_api] = useState(); + const [Add_Update_Employee_Contrat_message, setAdd_Update_Employee_Contrat_message] = useState(); + const [Add_Update_Employee_Contrat_result, setAdd_Update_Employee_Contrat_result] = useState(); + function Add_Update_Employee_Contrat(event) { + + var form = new FormData(); + + + const stored_cookie = getCookie('tokenmysypart'); + form.append("token", stored_cookie); + + + var myurl = ""; + + if (String(selected_contrat_id).trim().length > 2) { + // Il s'agit d'une mise à jour + myurl = process.env.REACT_APP_API_URL + "myclass/api/Update_Employee_Contrat/"; + form.append("_id", selected_contrat_id); + form.append("rh_id", selected_id); + form.append("date_debut", p_employe_contrat_date_debut); + form.append("date_fin", p_employe_contrat_date_fin); + form.append("type_contrat", p_employe_contrat_type_contrat); + form.append("type_employe", p_employe_contrat_type_employe); + form.append("cout", p_employe_contrat_cout); + form.append("groupe_prix_achat_id", p_employe_contrat_groupe_prix_achat_id); + + + + } else { + // Il s'agit d'une creation + myurl = process.env.REACT_APP_API_URL + "myclass/api/Add_Employee_Contrat/"; + + form.append("rh_id", selected_id); + form.append("date_debut", p_employe_contrat_date_debut); + form.append("date_fin", p_employe_contrat_date_fin); + form.append("type_contrat", p_employe_contrat_type_contrat); + form.append("type_employe", p_employe_contrat_type_employe); + form.append("cout", p_employe_contrat_cout); + form.append("groupe_prix_achat_id", p_employe_contrat_groupe_prix_achat_id); + } + + setLoading(true); + axios.post(myurl, form).then(res => { + setLoading(false); + + if (String(res.data.status) === String("true")) { + //console.log(" In Add_Update_Employee_Contrat res.data.status = " + res.data.status); + //console.log(" In Add_Update_Employee_Contrat res.data.message r_class = " + res.data.message); + setAdd_Update_Employee_Contrat_api("true"); + setAdd_Update_Employee_Contrat_result(res.data.message); + Dialog_employe_contrat_handleClose_buton(); + Getall_Employee_Contrat(selected_id); + Get_Partner_Purchase_Prices(); + setselectionModel_contrat([]); + if (document.getElementById('myRef_contrat')) { + var divh = document.getElementById('myRef_contrat').offsetTop; + window.scrollTo({ + top: divh, + behavior: "smooth", + }); + } + + alert(res.data.message); + } + else { + setAdd_Update_Employee_Contrat_api("false"); + setAdd_Update_Employee_Contrat_message(res.data.message); + alert(res.data.message); + } + + }).catch((error) => { + + setLoading(false); + console.warn('Not good man :( Add_Update_Employee_Contrat = ', error); + setAdd_Update_Employee_Contrat_api("false"); + alert(" Impossible d'ajouter / mettre à jour le contrat"); + //setmyApimyApiMessage("") + }) + } + + const myRef_contrat = useRef(null) + return (
@@ -4117,8 +4260,11 @@ const Employes = (props) => { } } > - CDI   - CDD   + Cadre   + Employé   + Stagiaire   + Independant   + Contractuel   Autre   @@ -4238,8 +4384,8 @@ const Employes = (props) => {
- {String(selected_contrat_id).trim().length > 2 && } - {String(selected_contrat_id).trim() === "" && } + {String(selected_contrat_id).trim().length > 2 && } + {String(selected_contrat_id).trim() === "" && }
@@ -6834,17 +6980,15 @@ const Employes = (props) => {
} - {String(submenu) === "contrat" &&
- + {String(submenu) === "contrat" &&
+
- - - +  
  {
+ +
+ +
+ +
+
} diff --git a/src/components/Partner_Prix_Achat.js b/src/components/Partner_Prix_Achat.js index 49654cb..b882070 100644 --- a/src/components/Partner_Prix_Achat.js +++ b/src/components/Partner_Prix_Achat.js @@ -371,6 +371,8 @@ const Partner_Prix_Achat = (props) => { //setmyApimyApiMessage("") }) } + + const [dialog_data_changed, setdialog_data_changed] = useState(); return (