diff --git a/src/components/Partner_Commande.js b/src/components/Partner_Commande.js index 4fce0f6..6a2f902 100644 --- a/src/components/Partner_Commande.js +++ b/src/components/Partner_Commande.js @@ -47,6 +47,10 @@ const Partner_Commande = (props) => { const [rowss, setRows] = useState([]); const [selectionModel, setSelectionModel] = React.useState([]); + const [rows_order_lines, setrows_order_lines] = useState([]); + const [selectionModel_order_lines, setselectionModel_order_lines] = React.useState([]); + + const [p_filtre1, setp_filtre1] = useState(); const [p_filtre1_value, setp_filtre1_value] = useState(); @@ -70,7 +74,7 @@ const Partner_Commande = (props) => { { field: 'order_header_vendeur_nom_prenom', headerName: 'Vendeur', width: 150, hideable: false, }, { field: 'order_header_date_cmd', headerName: 'Date', width: 150, hide: false, editable: true }, { field: 'order_header_date_expiration', headerName: 'Date Expiration', width: 150, hide: false, editable: true }, - + /* { field: "Detail", headerName: 'Voir detail', @@ -153,6 +157,19 @@ const Partner_Commande = (props) => { ] + + const columns_order_lines = [ + { field: '_id', headerName: '_id', hide: true }, + { field: 'id', headerName: 'id', hide: true }, + { field: 'order_line_formation', headerName: 'Reference', width: 150, hide: false, editable: true }, + { field: 'order_line_qty', headerName: 'Qte', width: 150, hide: false, editable: true }, + { field: 'order_line_prix_unitaire', headerName: 'Prix Unit.', width: 150, hide: false, editable: true }, + { field: 'order_header_id', headerName: 'Id_Entete', width: 150, hideable: false, }, + { field: 'order_header_ref_interne', headerName: 'Ref_Interne', width: 150, hideable: false, }, + { field: 'order_line_type', headerName: 'Type', width: 150, hide: false, editable: true }, + { field: 'order_line_status', headerName: 'Statut', width: 150, hide: false, editable: true }, + ] + function clean_all_filters() { setp_filtre1(); setp_filtre1_value(); @@ -313,24 +330,212 @@ const Partner_Commande = (props) => { setorder_internal_ref(order_ref); //console.log(" ### employe_id = ", employe_id); - /* Display_Detail_Employe(employe_id); + Display_Detail_Order_data(order_id); if (myRef.current) { myRef.current.scrollIntoView({ behavior: "smooth" }); } - Getall_Employee_Affectation(employe_id); - */ + //Getall_Employee_Affectation(employe_id); + } + function Display_Detail_Order_data(order_id) { + //clearDetailAttendeFields(); + setadd_One_Order(); + setdisplay_detail_order("1"); + setsubmenu("detail_order"); + + Get_Order_Data(order_id); + Get_Partner_Orders_Lines_from_header_id(order_id); + + } + + const [Order_data_changed, setOrder_data_changed] = useState(); + const [order_data_edit_mode, setorder_data_edit_mode] = useState(); + + + const [GetAttendee_api, setGetAttendee_api] = useState(); + const [GetAttendee_message, setGetAttendee_message] = useState(); + const [GetAttendee_result, setGetAttendee_result] = useState(); + function Get_Order_Data(order_id) { + setOrder_data_changed(""); + setorder_data_edit_mode(""); + + + var form = new FormData(); + + const stored_cookie = getCookie('tokenmysypart'); + form.append("token", stored_cookie); + form.append("_id", order_id); + + + var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_Given_Partner_Order/"; + + axios.post(myurl, form).then(res => { + + if (String(res.data.status) === "true") { + //console.log(" In Get_Order_Data res.data.status = " + res.data.status); + //console.log(" In Get_Order_Data res.data.message r_class = " + res.data.message); + setGetAttendee_api("true"); + setGetAttendee_result(res.data.message); + + if (res.data.message.length > 0) { + var mylocal_order = JSON.parse(res.data.message); + + + document.getElementsByName("detail_header_type")[0].value = ""; + if (mylocal_order.order_header_type) + setp_detail_header_type(mylocal_order.order_header_type); + + document.getElementsByName("detail_header_status")[0].value = ""; + if (mylocal_order.order_header_status) + setp_detail_header_statut(mylocal_order.order_header_status); + + document.getElementsByName("detail_header_ref_interne")[0].value = ""; + if (mylocal_order.order_header_ref_interne) { + setp_detail_header_ref_interne(mylocal_order.order_header_ref_interne); + } + + document.getElementsByName("detail_header_date_cmd")[0].value = ""; + if (mylocal_order.order_header_date_cmd) { + setp_detail_header_date_cmd(mylocal_order.order_header_date_cmd); + } + + document.getElementsByName("detail_header_date_expiration")[0].value = ""; + if (mylocal_order.order_header_date_expiration) { + setp_detail_header_date_expiration(mylocal_order.order_header_date_expiration); + } + + + document.getElementsByName("detail_nom_client")[0].value = ""; + if (mylocal_order.order_header_client_nom) { + setp_detail_header_client_nom(mylocal_order.order_header_client_nom); + } + + + document.getElementsByName("detail_header_description")[0].value = ""; + if (mylocal_order.order_header_description) { + setp_detail_header_description(mylocal_order.order_header_description); + } + + document.getElementsByName("detail_header_comment")[0].value = ""; + if (mylocal_order.order_header_comment) { + setp_detail_header_comment(mylocal_order.order_header_comment); + } + + + document.getElementsByName("detail_header_vendeur_nom_prenom")[0].value = ""; + if (mylocal_order.order_header_vendeur_nom_prenom) { + setp_detail_header_vendeur_nom(mylocal_order.order_header_vendeur_nom_prenom); + } + + + + + + //disable_Employee_DetailFields(); + + } else { + alert(" Aucune commande/devis recuperé"); + } + + + } else if (String(res.data.status) === String("Err_Connexion")) { + alert('Erreur: ' + res.data.message); + history.push("/Connexion"); + } + + else { + setGetAttendee_api("false"); + setGetAttendee_message(res.data.message); + alert(res.data.message); + } + + }).catch((error) => { + console.warn('Not good man :( Get_Order_Data = ', error); + setGetAttendee_api("false"); + alert(" Impossible de recuperer les données de la commande / devis"); + //setmyApimyApiMessage("") + }) + } + + + const [Get_Partner_Orders_Lines_from_header_id_api, setGet_Partner_Orders_Lines_from_header_id_api] = useState(); + const [Get_Partner_Orders_Lines_from_header_id_message, setGet_Partner_Orders_Lines_from_header_id_message] = useState(); + const [Get_Partner_Orders_Lines_from_header_id_result, setGet_Partner_Orders_Lines_from_header_id_result] = useState(); + function Get_Partner_Orders_Lines_from_header_id(local_order_header_id) { + + var form = new FormData(); + + + const stored_cookie = getCookie('tokenmysypart'); + form.append("token", stored_cookie); + form.append("order_header_id", local_order_header_id); + + var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_Given_Partner_Order_Lines/"; + + axios.post(myurl, form).then(res => { + + if (String(res.data.status) === String("true")) { + //console.log(" In Get_Partner_Orders_Lines_from_header_id res.data.status = " + res.data.status); + //console.log(" In Get_Partner_Orders_Lines_from_header_id res.data.message r_class = " + res.data.message); + setGet_Partner_Orders_Lines_from_header_id_api("true"); + setGet_Partner_Orders_Lines_from_header_id_result(res.data.message); + setrows_order_lines(res.data.message); + } + else { + setGet_Partner_Orders_Lines_from_header_id_api("false"); + setGet_Partner_Orders_Lines_from_header_id_message(res.data.message); + alert(res.data.message); + } + + }).catch((error) => { + console.warn('Not good man :( Get_Partner_Orders_Lines_from_header_id = ', error); + setGet_Partner_Orders_Lines_from_header_id_api("false"); + alert(" Impossible de recuperer le detail de la commande / devis"); + //setmyApimyApiMessage("") + }) + } + + + const hiddenFileInput_session = React.useRef(null); - + function submenu_import_order() { setsession_file_name(); setliste_sessions_file_change_api(); hiddenFileInput_session.current.click(); } + const [add_One_Order, setadd_One_Order] = useState(); + function submenu_add_one_order() { + setdisplay_detail_order(); + setadd_One_Order("1"); + setsubmenu("detail_order"); + + } + + function Annule_add_one_Order() { + setdisplay_detail_order(); + setsubmenu(""); + setSelectionModel([]); + } + + const [display_detail_order, setdisplay_detail_order] = React.useState(); + + + const [p_detail_header_client_nom, setp_detail_header_client_nom] = useState(); + const [p_detail_header_description, setp_detail_header_description] = useState(); + const [p_detail_header_comment, setp_detail_header_comment] = useState(); + const [p_detail_header_date_cmd, setp_detail_header_date_cmd] = useState(); + const [p_detail_header_date_expiration, setp_detail_header_date_expiration] = useState(); + const [p_detail_header_condition_paiement, setp_detail_header_condition_paiement] = useState(); + const [p_detail_header_ref_client, setp_detail_header_ref_client] = useState(); + const [p_detail_header_ref_interne, setp_detail_header_ref_interne] = useState(); + const [p_detail_header_vendeur_nom, setp_detail_header_vendeur_nom] = useState(); + const [p_detail_header_type, setp_detail_header_type] = useState(); + const [p_detail_header_statut, setp_detail_header_statut] = useState(); return ( @@ -673,8 +878,8 @@ const Partner_Commande = (props) => { handleClick_edit_order_From_Line(newSelectionModel); if (newSelectionModel.length !== 1) { setsubmenu(); - //setdisplay_detail_employe(); - //setadd_One_Employee(); + setdisplay_detail_order(); + setadd_One_Order(); } }} selectionModel={selectionModel} @@ -693,7 +898,7 @@ const Partner_Commande = (props) => { order_header_vendeur_nom_prenom: JSON.parse(item).order_header_vendeur_nom_prenom, order_header_date_cmd: JSON.parse(item).order_header_date_cmd, order_header_date_expiration: JSON.parse(item).order_header_date_expiration, - + } ))} @@ -765,13 +970,13 @@ const Partner_Commande = (props) => { - -