diff --git a/src/components/AddPartnerClient.js b/src/components/AddPartnerClient.js index e7c52a0..2a56618 100644 --- a/src/components/AddPartnerClient.js +++ b/src/components/AddPartnerClient.js @@ -12,7 +12,7 @@ import { Alert } from "@mui/material"; import { AiTwotoneEdit, AiTwotoneSave } from "react-icons/ai"; import profileimg from "../mysy_img/MYSY-profil-2.png"; import Abonnement from "./Abonnement"; -import { PropaneSharp } from "@mui/icons-material"; +import { ConstructionOutlined, PropaneSharp } from "@mui/icons-material"; import { useHistory } from "react-router-dom"; import CheckOut from "./CheckOut"; @@ -44,6 +44,9 @@ const AddParnerClient = (props) => { const [datamodification_invoice, setdatamodification_invoice] = useState("0"); const [formedit_mode_invoice, setformedit_mode_invoice] = useState("0"); + const [datamodification_contact, setdatamodification_contact] = useState("0"); + const [formedit_mode_contact, setformedit_mode_contact] = useState("0"); + const [p_client_email, setclient_email] = useState(""); const [p_client_nom, setclient_nom] = useState(""); @@ -317,6 +320,18 @@ const AddParnerClient = (props) => { Enable_invoice_fields(); } + + + function DataUpdated_Contact_Data() { + setdatamodification_contact("1"); + } + + function DataEditMode_Contact_Data() { + setformedit_mode_contact("1"); + Enable_contact_fields(); + } + + function AnnulerEdit_Invoice_Data() { setformedit_mode_invoice("0"); setdatamodification_invoice("0"); @@ -346,11 +361,20 @@ const AddParnerClient = (props) => { const [addcontact, setaddcontact] = useState("0"); function Add_Contact() { + setdatamodification_contact("0"); + setformedit_mode_contact("0"); + clean_contact_set_values(); setaddcontact("1"); } function Close_Contact() { setaddcontact("0"); + setdatamodification_contact("0"); + setformedit_mode_contact("0"); + clear_contact_fields(); + clean_contact_set_values(); + setdatamodification_invoice("0"); + setformedit_mode_contact("0"); } @@ -726,8 +750,8 @@ const AddParnerClient = (props) => { var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_List_Entity_Contact/"; axios.post(myurl, form).then(res => { - console.log(" In Get_List_Contact_Of_client_Part res.data.status = " + res.data.status); - console.log(" In Get_List_Contact_Of_client_Part res.data.message r_class = " + res.data.message); + //console.log(" In Get_List_Contact_Of_client_Part res.data.status = " + res.data.status); + //console.log(" In Get_List_Contact_Of_client_Part res.data.message r_class = " + res.data.message); if (String(res.data.status) === String("true")) { setGet_List_Contact_Of_client_Part_api("true"); @@ -931,6 +955,125 @@ const AddParnerClient = (props) => { } +async function Disable_contact_fields() { + + await sleep(5); + + if (document.getElementsByName("contact_email")) { + document.getElementsByName("contact_email")[0].disabled = true; + document.getElementsByName("contact_email")[0].style.backgroundColor = "#ECEFF1"; + } + + if (document.getElementsByName("contact_nom")) { + document.getElementsByName("contact_nom")[0].disabled = true; + document.getElementsByName("contact_nom")[0].style.backgroundColor = "#ECEFF1"; + } + + if (document.getElementsByName("contact_prenom")) { + document.getElementsByName("contact_prenom")[0].disabled = true; + document.getElementsByName("contact_prenom")[0].style.backgroundColor = "#ECEFF1"; + } + + if (document.getElementsByName("contact_siret")) { + document.getElementsByName("contact_siret")[0].disabled = true; + document.getElementsByName("contact_siret")[0].style.backgroundColor = "#ECEFF1"; + } + + if (document.getElementsByName("contact_tva")) { + document.getElementsByName("contact_tva")[0].disabled = true; + document.getElementsByName("contact_tva")[0].style.backgroundColor = "#ECEFF1"; + } + + if (document.getElementsByName("contact_adresse")) { + document.getElementsByName("contact_adresse")[0].disabled = true; + document.getElementsByName("contact_adresse")[0].style.backgroundColor = "#ECEFF1"; + } + + if (document.getElementsByName("contact_ville")) { + document.getElementsByName("contact_ville")[0].disabled = true; + document.getElementsByName("contact_ville")[0].style.backgroundColor = "#ECEFF1"; + } + + if (document.getElementsByName("contact_code_postal")) { + document.getElementsByName("contact_code_postal")[0].disabled = true; + document.getElementsByName("contact_code_postal")[0].style.backgroundColor = "#ECEFF1"; + } + + if (document.getElementsByName("contact_pays")) { + document.getElementsByName("contact_pays")[0].disabled = true; + document.getElementsByName("contact_pays")[0].style.backgroundColor = "#ECEFF1"; + } + + if (document.getElementsByName("contact_telephone")) { + document.getElementsByName("contact_telephone")[0].disabled = true; + document.getElementsByName("contact_telephone")[0].style.backgroundColor = "#ECEFF1"; + } + + if (document.getElementsByName("contact_telephone_mobile")) { + document.getElementsByName("contact_telephone_mobile")[0].disabled = true; + document.getElementsByName("contact_telephone_mobile")[0].style.backgroundColor = "#ECEFF1"; + } + +} + +function Enable_contact_fields() { + if (document.getElementsByName("contact_email")) { + document.getElementsByName("contact_email")[0].disabled = false; + document.getElementsByName("contact_email")[0].style.backgroundColor = "#FFFFFF"; + } + + if (document.getElementsByName("contact_nom")) { + document.getElementsByName("contact_nom")[0].disabled = false; + document.getElementsByName("contact_nom")[0].style.backgroundColor = "#FFFFFF"; + } + + if (document.getElementsByName("contact_prenom")) { + document.getElementsByName("contact_prenom")[0].disabled = false; + document.getElementsByName("contact_prenom")[0].style.backgroundColor = "#FFFFFF"; + } + + if (document.getElementsByName("contact_siret")) { + document.getElementsByName("contact_siret")[0].disabled = false; + document.getElementsByName("contact_siret")[0].style.backgroundColor = "#FFFFFF"; + } + + if (document.getElementsByName("contact_tva")) { + document.getElementsByName("contact_tva")[0].disabled = false; + document.getElementsByName("contact_tva")[0].style.backgroundColor = "#FFFFFF"; + } + + if (document.getElementsByName("contact_adresse")) { + document.getElementsByName("contact_adresse")[0].disabled = false; + document.getElementsByName("contact_adresse")[0].style.backgroundColor = "#FFFFFF"; + } + + if (document.getElementsByName("contact_ville")) { + document.getElementsByName("contact_ville")[0].disabled = false; + document.getElementsByName("contact_ville")[0].style.backgroundColor = "#FFFFFF"; + } + + if (document.getElementsByName("contact_code_postal")) { + document.getElementsByName("contact_code_postal")[0].disabled = false; + document.getElementsByName("contact_code_postal")[0].style.backgroundColor = "#FFFFFF"; + } + + if (document.getElementsByName("contact_pays")) { + document.getElementsByName("contact_pays")[0].disabled = false; + document.getElementsByName("contact_pays")[0].style.backgroundColor = "#FFFFFF"; + } + + if (document.getElementsByName("contact_telephone")) { + document.getElementsByName("contact_telephone")[0].disabled = false; + document.getElementsByName("contact_telephone")[0].style.backgroundColor = "#FFFFFF"; + } + + if (document.getElementsByName("contact_telephone_mobile")) { + document.getElementsByName("contact_telephone_mobile")[0].disabled = false; + document.getElementsByName("contact_telephone_mobile")[0].style.backgroundColor = "#FFFFFF"; + } + +} + function confirm_add_user() { confirmAlert({ @@ -1429,6 +1572,323 @@ const AddParnerClient = (props) => { props.close_detail_client(); } + function retour_liste_contact(){ + setaddcontact("0"); + } + + +function clean_contact_set_values(){ + setp_contact_email(""); + setp_contact_nom(""); + setp_contact_prenom(""); + setcontact_siret(""); + setcontact_tva(""); + setcontact_adresse(""); + setcontact_ville(""); + setcontact_code_postal(""); + setcontact_pays(""); + + setcontact_telephone(""); + setp_contact_telephone_mobile("") +} + + function clear_contact_fields() { + if (document.getElementsByName("contact_email")) { + document.getElementsByName("contact_email")[0].value = ""; + } + + if (document.getElementsByName("contact_nom")) { + document.getElementsByName("contact_nom")[0].value = ""; + } + + if (document.getElementsByName("contact_prenom")) { + document.getElementsByName("contact_prenom")[0].value = ""; + } + + if (document.getElementsByName("contact_siret")) { + document.getElementsByName("contact_siret")[0].value = ""; + } + + if (document.getElementsByName("contact_tva")) { + document.getElementsByName("contact_tva")[0].value = ""; + } + + if (document.getElementsByName("contact_adresse")) { + document.getElementsByName("contact_adresse")[0].value = ""; + } + + if (document.getElementsByName("contact_ville")) { + document.getElementsByName("contact_ville")[0].value = ""; + } + + if (document.getElementsByName("contact_code_postal")) { + document.getElementsByName("contact_code_postal")[0].value = ""; + } + + if (document.getElementsByName("contact_pays")) { + document.getElementsByName("contact_pays")[0].value = ""; + } + + if (document.getElementsByName("contact_telephone")) { + document.getElementsByName("contact_telephone")[0].value = ""; + } + + if (document.getElementsByName("contact_telephone_mobile")) { + document.getElementsByName("contact_telephone_mobile")[0].value = ""; + } + + } + + // Fonction de mise à jour des données de facturation + const [recordPartnerClient_Contact_Data_api, setrecordPartnerClient_Contact_Data_api] = useState(""); + const [recordPartnerClient_Contact_Data_result, setrecordPartnerClient_Contact_Data_result] = useState(""); + const [recordPartnerClient_Contact_Data_message, setrecordPartnerClient_Contact_Data_message] = useState(""); + function recordPartnerClient_Contact_Data(event) { + + + var form = new FormData(); + + const stored_cookie = getCookie('tokenmysypart'); + form.append("token", stored_cookie); + + // Recupeation des données à enregister + form.append("related_collection", "partner_client"); + form.append("related_collection_owner_email", p_client_email); + + + // Données de contact du client du partner + var contact_email = "" + if (document.getElementsByName("contact_email")) { + contact_email = document.getElementsByName("contact_email")[0].value; + } + form.append("email", contact_email); + + var contact_nom = "" + if (document.getElementsByName("contact_nom")) { + contact_nom = document.getElementsByName("contact_nom")[0].value; + } + form.append("nom", contact_nom); + + var contact_prenom = "" + if (document.getElementsByName("contact_prenom")) { + contact_prenom = document.getElementsByName("contact_prenom")[0].value; + } + form.append("prenom", contact_prenom); + + var contact_siret = "" + if (document.getElementsByName("contact_siret")) { + contact_siret = document.getElementsByName("contact_siret")[0].value; + } + form.append("siret", contact_siret); + + var contact_tva = "" + if (document.getElementsByName("contact_tva")) { + contact_tva = document.getElementsByName("contact_tva")[0].value; + } + form.append("tva", contact_tva); + + var contact_adresse = "" + if (document.getElementsByName("contact_adresse")) { + contact_adresse = document.getElementsByName("contact_adresse")[0].value; + } + form.append("adr_adresse", contact_adresse); + + var contact_ville = "" + if (document.getElementsByName("contact_ville")) { + contact_ville = document.getElementsByName("contact_ville")[0].value; + } + form.append("adr_ville", contact_ville); + + + var contact_code_postal = "" + if (document.getElementsByName("contact_code_postal")) { + contact_code_postal = document.getElementsByName("contact_code_postal")[0].value; + } + form.append("adr_code_postal", contact_code_postal); + + + var contact_pays = "" + if (document.getElementsByName("contact_pays")) { + contact_pays = document.getElementsByName("contact_pays")[0].value; + } + form.append("adr_pays", contact_pays); + + + var contact_telephone = "" + if (document.getElementsByName("contact_telephone")) { + contact_telephone = document.getElementsByName("contact_telephone")[0].value; + } + form.append("telephone", contact_telephone); + + + var contact_telephone_mobile = "" + if (document.getElementsByName("contact_telephone_mobile")) { + contact_telephone_mobile = document.getElementsByName("contact_telephone_mobile")[0].value; + } + form.append("telephone_mobile", contact_telephone_mobile); + + + var myurl = process.env.REACT_APP_API_URL + "myclass/api/Add_Contact/"; + + axios.post(myurl, form).then(res => { + if (String(res.data.status) === String("true")) { + //console.log(" In recordPartnerClient_Contact_Data res.data.status = " + res.data.status); + //console.log(" In recordPartnerClient_Contact_Data res.data.message = " + res.data.message); + setrecordPartnerClient_Contact_Data_api("true"); + setrecordPartnerClient_Contact_Data_result(res.data.message); + Get_List_Contact_Of_client_Part(); + + setaddcontact("0"); + alert(res.data.message); + + + } + else if (String(res.data.status) === String("Err_Connexion")) { + alert('Erreur: ' + res.data.message); + history.push("/Connexion"); + return; + } + else { + + setrecordPartnerClient_Contact_Data_api("false"); + setrecordPartnerClient_Contact_Data_message(res.data.message); + alert(res.data.message); + + } + + + }).catch((error) => { + console.warn('Not good man :( recordPartnerClient_Contact_Data = ', error); + setrecordPartnerClient_Contact_Data_result("false"); + setrecordPartnerClient_Contact_Data_message(" Impossible de recuperer les informations du client") + alert(" Impossible de recuperer les informations du client"); + + }) + } + + + const [Display_Part_Client_Contact_api, setDisplay_Part_Client_Contact_api] = useState(""); + const [Display_Part_Client_Contact_result, setDisplay_Part_Client_Contact_result] = useState(""); + const [Display_Part_Client_Contact_message, setDisplay_Part_Client_Contact_message] = useState(""); + async function Display_Part_Client_Contact(event) { + + + var form = new FormData(); + + const stored_cookie = getCookie('tokenmysypart'); + form.append("token", stored_cookie); + form.append("email", event.target.id); + + // Recupeation des données à enregister + form.append("related_collection", "partner_client"); + form.append("related_collection_owner_email", p_client_email); + + + var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_Given_Contact/"; + + axios.post(myurl, form).then(res => { + if (String(res.data.status) === String("true")) { + console.log(" In Display_Part_Client_Contact res.data.status = " + res.data.status); + console.log(" In Display_Part_Client_Contact res.data.message = " + res.data.message); + setDisplay_Part_Client_Contact_api("true"); + setDisplay_Part_Client_Contact_result(res.data.message); + Get_List_Contact_Of_client_Part(); + + setaddcontact("1"); + var mylocalclient_contact = JSON.parse(res.data.message); + + + if (mylocalclient_contact) { + + // Remplissage des doonées du contact + if (mylocalclient_contact.nom) + setp_contact_nom(mylocalclient_contact.nom); + else + setp_contact_nom(""); + + if (mylocalclient_contact.email) + setp_contact_email(mylocalclient_contact.email); + else + setp_contact_email(""); + + if (mylocalclient_contact.prenom) + setp_contact_prenom(mylocalclient_contact.prenom); + else + setp_contact_prenom(""); + + + if (mylocalclient_contact.siret) + setcontact_siret(mylocalclient_contact.siret); + else + setcontact_siret(""); + + + if (mylocalclient_contact.tva) + setcontact_tva(mylocalclient_contact.tva); + else + setcontact_tva(""); + + + if (mylocalclient_contact.adr_adresse) + setcontact_adresse(mylocalclient_contact.adr_adresse); + else + setcontact_adresse(""); + + if (mylocalclient_contact.adr_ville) + setcontact_ville(mylocalclient_contact.adr_ville); + else + setcontact_ville(""); + + if (mylocalclient_contact.adr_code_postal) + setcontact_code_postal(mylocalclient_contact.adr_code_postal); + else + setcontact_code_postal(""); + + if (mylocalclient_contact.adr_pays) + setcontact_pays(mylocalclient_contact.adr_pays); + else + setcontact_pays(""); + + if (mylocalclient_contact.telephone) + setcontact_telephone(mylocalclient_contact.telephone); + else + setcontact_telephone(""); + + if (mylocalclient_contact.telephone_mobile) + setp_contact_telephone_mobile(mylocalclient_contact.telephone_mobile); + else + setp_contact_telephone_mobile(""); + + } + + + Disable_contact_fields(); + + } + else if (String(res.data.status) === String("Err_Connexion")) { + alert('Erreur: ' + res.data.message); + history.push("/Connexion"); + return; + } + else { + + setDisplay_Part_Client_Contact_api("false"); + setDisplay_Part_Client_Contact_message(res.data.message); + alert(res.data.message); + + } + + + }).catch((error) => { + console.warn('Not good man :( Display_Part_Client_Contact = ', error); + setDisplay_Part_Client_Contact_result("false"); + setDisplay_Part_Client_Contact_message(" Impossible de recuperer les informations du client") + alert(" Impossible de recuperer les informations du client"); + + }) + } + + return (