import React, { useRef, useState, useEffect } from "react"; import TextField from '@mui/material/TextField'; import MenuItem from '@mui/material/MenuItem'; import 'react-confirm-alert/src/react-confirm-alert.css'; // Import css import Button from '@mui/material/Button'; import axios from "axios"; import { getCookie, setCookie } from 'react-use-cookie'; import { useHistory } from "react-router-dom"; import CheckOut from "./CheckOut"; import { DataGrid, GridToolbar, frFR } from '@mui/x-data-grid'; import "react-draft-wysiwyg/dist/react-draft-wysiwyg.css"; import { Editor } from '@tinymce/tinymce-react'; import parse from 'html-react-parser'; import { FcViewDetails, FcDisapprove } from "react-icons/fc"; import 'react-tooltip/dist/react-tooltip.css' import { Tooltip } from 'react-tooltip' import add_plus from "../mysy_img/plus.png"; import excel_icone from "../mysy_img/excel_icone.png"; import participants from "../mysy_img/participants.png"; import fileDownload from 'js-file-download' import Popup from 'reactjs-popup'; import 'reactjs-popup/dist/index.css'; import { FcCancel, FcApproval, FcAcceptDatabase, FcPrint } from "react-icons/fc"; import DatePicker from "react-datepicker"; import "react-datepicker/dist/react-datepicker.css"; import { format } from 'date-fns' import moment from "moment"; import InputAdornment from '@mui/material/InputAdornment'; import { AiFillCloseCircle } from "react-icons/ai"; import Box from '@mui/material/Box'; import { Typography, LinearProgress } from '@mui/material'; import styled from 'styled-components'; import { CiTrash } from "react-icons/ci"; import { MdAddCircleOutline, MdRemoveCircleOutline } from "react-icons/md"; import Dialog from '@mui/material/Dialog'; import DialogActions from '@mui/material/DialogActions'; import DialogContent from '@mui/material/DialogContent'; import DialogContentText from '@mui/material/DialogContentText'; import DialogTitle from '@mui/material/DialogTitle'; import { TransitionProps } from '@mui/material/transitions'; const Materiels = (props) => { const history = useHistory(); const [submenu, setsubmenu] = useState(""); const [rowss, setRows] = useState([]); const [selectionModel, setSelectionModel] = React.useState([]); const [rows_affectations, setrows_affectations] = useState([]); const [selectionModel_affectations, setSelectionModel_affectations] = React.useState([]); const [p_filtre1, setp_filtre1] = useState(); const [p_filtre1_value, setp_filtre1_value] = useState(); const [p_filtre2, setp_filtre2] = useState(); const [p_filtre2_value, setp_filtre2_value] = useState(); const [p_filtre3, setp_filtre3] = useState(); const [p_filtre3_value, setp_filtre3_value] = useState(); const [p_filtre4, setp_filtre4] = useState(); const [p_filtre4_value, setp_filtre4_value] = useState(); const columns = [ { field: '_id', headerName: '_id', hide: true }, { field: 'id', headerName: 'id', hide: true }, { field: 'ref_interne', headerName: 'Ref. Interne', width: 150, hideable: false, }, { field: 'nom', headerName: 'Nom', width: 150, hide: false, editable: true }, { field: 'famille', headerName: 'Famille', width: 150, hide: false, editable: true }, { field: 'marque', headerName: 'Marque', width: 150, hide: false, editable: true }, { field: 'type', headerName: 'Type', width: 150, hide: false, editable: true }, { field: 'fournisseur', headerName: 'Fournisseur', width: 150, hide: false, editable: true }, { field: "delete", headerName: 'Supprimer', renderCell: (cellValues) => { return ( { // handleClick_delete(event, cellValues); }} > } modal nested position="center center" > {close => (
MySy Information
{' '} En confirmant cette opération, l'employé sera définitivement supprimé.
)}
); } } ] const columns_materielle_affectation = [ { field: '_id', headerName: '_id', hide: true }, { field: 'id', headerName: 'id', hide: true }, { field: 'poste', headerName: 'Poste', width: 150, hideable: false, }, { field: 'date_du', headerName: 'Du', width: 150, hide: false, editable: true }, { field: 'date_au', headerName: 'Au', width: 150, hide: false, editable: true }, { field: 'related_target_collection_object', headerName: 'Cible', width: 150, hide: false, editable: true }, { field: 'related_target_collection_id_nom', headerName: 'Cible Nom', width: 150, hide: false, editable: true }, { field: 'target_related_collection', headerName: 'Type', hide: true }, { field: 'target_related_collection_id', headerName: 'Type ID', hide: true }, { field: "delete", headerName: 'Supprimer', renderCell: (cellValues) => { return ( { //handleClick_delete(event, cellValues); }} > } modal nested position="center center" > {close => (
MySy Information
{' '} En confirmant cette opération, la fonction sera définitivement supprimée.
)}
); } } ] const myRef_head = useRef(null); const [Dialog_1_message, setDialog_1_message] = React.useState(false); const [Dialog_1_open, setDialog_1_open] = React.useState(false); function Dialog_1_handle_change_participant_session(message) { setDialog_1_message(message); setDialog_1_open(true); } const Dialog_1_handleClose = () => { //alert(" Utiliser le bouton 'fermer' "); //setOpen(false); }; const Dialog_1_handleClose_buton = () => { setDialog_1_open(false); }; useEffect(() => { Getall_Training_Materiel_No_Filter(); Get_Materiel_Related_Target_Collection_Data(); }, []) const myRef = useRef(null) const [session_file_name, setsession_file_name] = useState(); const [display_affectation, setdisplay_affectation] = useState(); const [Add_new_affectation, setAdd_new_affectation] = useState(); const [display_detail_materiel, setdisplay_detail_materiel] = React.useState(); const hiddenFileInput_session = React.useRef(null); const [materiel_data_changed, setmateriel_data_changed] = useState(); const [add_One_Materiel, setadd_One_Materiel] = useState(); function submenu_add_one_materiel() { setdisplay_detail_materiel(); setadd_One_Materiel("1"); setsubmenu("detail_materiel"); } function Annule_add_one_materiel() { setdisplay_detail_materiel(); setadd_One_Materiel(); setsubmenu(""); setSelectionModel([]); } function clean_affectation_fields() { setp_affect_poste(); setp_affect_date_du(new Date().toLocaleDateString('fr-FR')); setp_affect_date_au(new Date().toLocaleDateString('fr-FR')); setp_affect_cible(); setp_affect_cible_label(); setp_affect_cible_nom(); setp_affect_cible_nom_label(); setp_affect_comment(); if (document.getElementsByName("affect_poste")[0]) document.getElementsByName("affect_poste")[0].value = ""; if (document.getElementsByName("affect_cible")[0]) document.getElementsByName("affect_cible")[0].value = ""; if (document.getElementsByName("affect_cible_nom")[0]) document.getElementsByName("affect_cible_nom")[0].value = ""; if (document.getElementsByName("affect_date_du")[0]) document.getElementsByName("affect_date_du")[0].value = ""; if (document.getElementsByName("affect_date_au")[0]) document.getElementsByName("affect_date_au")[0].value = ""; if (document.getElementsByName("affect_comment")[0]) document.getElementsByName("affect_comment")[0].value = ""; } function clean_nouvelle_affectation_fields() { setp_one_affect_poste(); setp_one_affect_date_du(new Date().toLocaleDateString('fr-FR')); setp_one_affect_date_au(new Date().toLocaleDateString('fr-FR')); setp_one_affect_cible(); setp_one_affect_cible_nom(); setp_one_affect_comment(); if (document.getElementsByName("one_affect_poste")[0]) document.getElementsByName("one_affect_poste")[0].value = ""; if (document.getElementsByName("one_affect_cible")[0]) document.getElementsByName("one_affect_cible")[0].value = ""; if (document.getElementsByName("one_affect_cible_nom")[0]) document.getElementsByName("one_affect_cible_nom")[0].value = ""; if (document.getElementsByName("one_affect_date_du")[0]) document.getElementsByName("one_affect_date_du")[0].value = ""; if (document.getElementsByName("one_affect_date_au")[0]) document.getElementsByName("one_affect_date_au")[0].value = ""; if (document.getElementsByName("one_affect_comment")[0]) document.getElementsByName("one_affect_comment")[0].value = ""; } const [Getall_Training_Materiel_api, setGetall_Training_Materiel_api] = useState(); const [Getall_Training_Materiel_message, setGetall_Training_Materiel_message] = useState(); const [Getall_Training_Materiel_result, setGetall_Training_Materiel_result] = useState(); function Getall_Training_Materiel(event) { var form = new FormData(); // Recuperation des parametres var filtre1 = p_filtre1; var filtre2 = p_filtre2; var filtre3 = p_filtre3; var filtre4 = p_filtre4; var filtre1_value = ""; var filtre2_value = ""; var filtre3_value = ""; var filtre4_value = ""; // Recuperation des valeurs de filtres if (p_filtre1_value) { filtre1_value = p_filtre1_value; form.append(filtre1, filtre1_value); } if (p_filtre2_value) { filtre2_value = p_filtre2_value; form.append(filtre2, filtre2_value); } if (p_filtre3_value) { filtre3_value = p_filtre3_value; form.append(filtre3, p_filtre3_value); } if (p_filtre4_value) { filtre4_value = p_filtre4_value; form.append(filtre4, p_filtre4_value); } const stored_cookie = getCookie('tokenmysypart'); form.append("token", stored_cookie); var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_List_Ressource_Materielle_with_filter/"; setdisplay_affectation(""); setAdd_new_affectation(""); clean_affectation_fields(); clean_nouvelle_affectation_fields(); setSelectionModel_affectations([]); setSelectionModel([]); setsubmenu(""); setSelectionModel([]); axios.post(myurl, form).then(res => { if (String(res.data.status) === String("true")) { //console.log(" In Getall_Training_Materiel res.data.status = " + res.data.status); //console.log(" In Getall_Training_Materiel res.data.message r_class = " + res.data.message); setGetall_Training_Materiel_api("true"); setGetall_Training_Materiel_result(res.data.message); setRows(res.data.message); } else { setGetall_Training_Materiel_api("false"); setGetall_Training_Materiel_message(res.data.message); } }).catch((error) => { console.warn('Not good man :( Getall_Training_Materiel = ', error); setGetall_Training_Materiel_api("false"); //setmyApimyApiMessage("") }) } const [liste_sessions_file_change_api, setliste_sessions_file_change_api] = useState(); const [liste_sessions_file_change_result, setliste_sessions_file_change_result] = useState(); const [liste_sessions_file_change_message, setliste_sessions_file_change_message] = useState(); const liste_sessions_file_change = event => { const fileUploaded = event.target.files[0]; let file_size = event.target.files[0].size; let file_type = event.target.files[0].type; //console.log("file_size = ",file_size," file_type = ",file_type); if (file_size > 1000000) { alert("Le fichier ne doit pas depasser un 1 Méga octets"); return; } setsession_file_name(event.target.files[0].name); const formData = new FormData(); formData.append('File', fileUploaded); //formData.append('token', 'K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA'); const stored_cookie = getCookie('tokenmysypart'); formData.append("token", stored_cookie); //console.log("token = " + stored_cookie); fetch( process.env.REACT_APP_API_URL + "myclass/api/Add_Ressource_Humaine_mass/", { method: 'POST', body: formData, } ) .then((response) => response.json()) .then((result) => { //console.log(" ## result['status'] = ", result['status']) if (String(result['status']) === String("Err_Connexion")) { alert('Erreur: ' + result['message']); history.push("/Connexion"); } else if (String(result['status']) === String("true")) { //console.log('Success:', result['message']); setliste_sessions_file_change_result(result['message']); setliste_sessions_file_change_api("true"); Getall_Training_Materiel(); alert(" Le materiel ont été correctement importé"); } else { setliste_sessions_file_change_message(result['message']); setliste_sessions_file_change_api("false"); alert('Erreur: ' + result['message']); } }) .catch((error) => { console.error('Error:', error); setliste_sessions_file_change_api("false"); alert(" Impossible d'importer le materiel "); }); } function submenu_import_materiel() { setsession_file_name(); setliste_sessions_file_change_api(); hiddenFileInput_session.current.click(); } const [Add_One_Materiel_Data_api, setAdd_One_Materiel_Data_api] = useState(); const [Add_One_Materiel_Data_message, setAdd_One_Materiel_Data_message] = useState(); const [Add_One_Materiel_Data_result, setAdd_One_Materiel_Data_result] = useState(); function Add_One_Materiel_Data() { var form = new FormData(); if (p_one_detail_ref_interne.trim() == "") { alert(" Vous devez saisir la référence interne du materiel"); return; } if (p_one_detail_nom.trim() == "") { alert(" Vous devez saisir le nom du materiel"); return; } const stored_cookie = getCookie('tokenmysypart'); form.append("token", stored_cookie); form.append("ref_interne", p_one_detail_ref_interne); form.append("nom", p_one_detail_nom); if (p_one_detail_description) form.append("description", p_one_detail_description); else form.append("description", ""); if (p_one_detail_detail) form.append("detail", p_one_detail_detail); else form.append("detail", ""); if (p_one_detail_famille) form.append("famille", p_one_detail_famille); else form.append("famille", ""); if (p_one_detail_marque) form.append("marque", p_one_detail_marque); else form.append("marque", ""); if (p_one_detail_type) form.append("type", p_one_detail_type); else form.append("type", ""); if (p_one_detail_prix_achat) form.append("prix_achat", p_one_detail_prix_achat); else form.append("prix_achat", ""); if (p_one_detail_fournisseur) form.append("fournisseur", p_one_detail_fournisseur); else form.append("fournisseur", ""); if (p_one_detail_qty_stock) form.append("qty_stock", p_one_detail_qty_stock); else form.append("qty_stock", ""); console.log(" form == ", form); var myurl = process.env.REACT_APP_API_URL + "myclass/api/Add_Ressource_Materielle/"; axios.post(myurl, form).then(res => { console.log(" In Add_One_Materiel_Data res.data.status = " + res.data.status); console.log(" In Add_One_Materiel_Data res.data.message r_class = " + res.data.message); if (String(res.data.status) === String("true")) { setAdd_One_Materiel_Data_api("true"); setAdd_One_Materiel_Data_result(res.data.message); Getall_Training_Materiel(); setmateriel_data_changed(""); setmateriel_data_edit_mode(""); alert(res.data.message); if (myRef_head) myRef_head.current.scrollIntoView({ behavior: "smooth" }); } else { setAdd_One_Materiel_Data_api("false"); setAdd_One_Materiel_Data_message(res.data.message); alert(res.data.message); } }).catch((error) => { console.warn('UpdateStagiaireData : Not good man :( Add_One_Materiel_Data = ' + error); setAdd_One_Materiel_Data_api("false"); alert(" Impossible d'ajouter le materiel"); }) } const [Getall_Training_Materiel_No_Filter_api, setGetall_Training_Materiel_No_Filter_api] = useState(); const [Getall_Training_Materiel_No_Filter_message, setGetall_Training_Materiel_No_Filter_message] = useState(); const [Getall_Training_Materiel_No_Filter_result, setGetall_Training_Materiel_No_Filter_result] = useState(); function Getall_Training_Materiel_No_Filter(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_List_Ressource_Materielle_no_filter/"; axios.post(myurl, form).then(res => { if (String(res.data.status) === String("true")) { //console.log(" In Getall_Training_Materiel_No_Filter res.data.status = " + res.data.status); //console.log(" In Getall_Training_Materiel_No_Filter res.data.message r_class = " + res.data.message); setGetall_Training_Materiel_No_Filter_api("true"); setGetall_Training_Materiel_No_Filter_result(res.data.message); setRows(res.data.message); } else { setGetall_Training_Materiel_No_Filter_api("false"); setGetall_Training_Materiel_No_Filter_message(res.data.message); alert(res.data.message); } }).catch((error) => { console.warn('Not good man :( Getall_Training_Materiel_No_Filter = ', error); setGetall_Training_Materiel_No_Filter_api("false"); alert(" Impossible de recuperer la liste du materiel"); //setmyApimyApiMessage("") }) } const sleep = (milliseconds) => { return new Promise(resolve => setTimeout(resolve, milliseconds)) } async function submenu_detail_materiel() { setsubmenu("detail_materiel"); await sleep(5); /*if (!edit_session_form) { desableSessionFields(); }*/ if (document.getElementById("detail_materiel")) { document.getElementById("detail_materiel").style.backgroundColor = "#104277"; document.getElementById("detail_materiel").style.color = "white"; } if (document.getElementById("affectation")) { document.getElementById("affectation").style.backgroundColor = "#d8edfc"; document.getElementById("affectation").style.color = "black"; } //console.log(" ### employee_data_edit_mode = ", employee_data_edit_mode); if (String(materiel_data_edit_mode) !== "1") disable_Materiel_DetailFields(); } async function submenu_affectation() { setsubmenu("affectation"); await sleep(5); /*if (!edit_session_form) { desableSessionFields(); }*/ if (document.getElementById("affectation")) { document.getElementById("affectation").style.backgroundColor = "#104277"; document.getElementById("affectation").style.color = "white"; } if (document.getElementById("detail_materiel")) { document.getElementById("detail_materiel").style.backgroundColor = "#d8edfc"; document.getElementById("detail_materiel").style.color = "black"; } } function Display_Detail_Material_Data(materiel_id) { //clearDetailAttendeFields(); setadd_One_Materiel(); setdisplay_detail_materiel("1"); Get_Materiel_Data(materiel_id); get_Materiel_Images(materiel_id); } const [materiel_data_edit_mode, setmateriel_data_edit_mode] = useState(""); function disable_Materiel_DetailFields() { setmateriel_data_edit_mode("0"); if (document.getElementsByName("detail_ref_interne")[0]) { document.getElementsByName("detail_ref_interne")[0].disabled = true; document.getElementsByName("detail_ref_interne")[0].style.backgroundColor = "#ECEFF1"; } if (document.getElementsByName("detail_nom")[0]) { document.getElementsByName("detail_nom")[0].disabled = true; document.getElementsByName("detail_nom")[0].style.backgroundColor = "#ECEFF1"; } if (document.getElementsByName("detail_description")[0]) { document.getElementsByName("detail_description")[0].disabled = true; document.getElementsByName("detail_description")[0].style.backgroundColor = "#ECEFF1"; } if (document.getElementsByName("detail_detail")[0]) { document.getElementsByName("detail_detail")[0].disabled = true; document.getElementsByName("detail_detail")[0].style.backgroundColor = "#ECEFF1"; } if (document.getElementsByName("detail_famille")[0]) { document.getElementsByName("detail_famille")[0].disabled = true; document.getElementsByName("detail_famille")[0].style.backgroundColor = "#ECEFF1"; } if (document.getElementsByName("detail_marque")[0]) { document.getElementsByName("detail_marque")[0].disabled = true; document.getElementsByName("detail_marque")[0].style.backgroundColor = "#ECEFF1"; } if (document.getElementsByName("detail_ville")[0]) { document.getElementsByName("detail_ville")[0].disabled = true; document.getElementsByName("detail_ville")[0].style.backgroundColor = "#ECEFF1"; } if (document.getElementsByName("detail_civilite")[0]) { document.getElementsByName("detail_civilite")[0].disabled = true; document.getElementsByName("detail_civilite")[0].style.backgroundColor = "#ECEFF1"; } if (document.getElementsByName("detail_type")[0]) { document.getElementsByName("detail_type")[0].disabled = true; document.getElementsByName("detail_type")[0].style.backgroundColor = "#ECEFF1"; } if (document.getElementsByName("detail_prix_achat")[0]) { document.getElementsByName("detail_prix_achat")[0].disabled = true; document.getElementsByName("detail_prix_achat")[0].style.backgroundColor = "#ECEFF1"; } if (document.getElementsByName("detail_fournisseur")[0]) { document.getElementsByName("detail_fournisseur")[0].disabled = true; document.getElementsByName("detail_fournisseur")[0].style.backgroundColor = "#ECEFF1"; } if (document.getElementsByName("detail_qty_stock")[0]) { document.getElementsByName("detail_qty_stock")[0].disabled = true; document.getElementsByName("detail_qty_stock")[0].style.backgroundColor = "#ECEFF1"; } } function Enable_Materiel_DetailFields() { setmateriel_data_edit_mode("1"); if (document.getElementsByName("detail_ref_interne")[0]) { document.getElementsByName("detail_ref_interne")[0].disabled = false; document.getElementsByName("detail_ref_interne")[0].style.backgroundColor = "#FFFFFF"; } if (document.getElementsByName("detail_nom")[0]) { document.getElementsByName("detail_nom")[0].disabled = false; document.getElementsByName("detail_nom")[0].style.backgroundColor = "#FFFFFF"; } if (document.getElementsByName("detail_description")[0]) { document.getElementsByName("detail_description")[0].disabled = false; document.getElementsByName("detail_description")[0].style.backgroundColor = "#FFFFFF"; } if (document.getElementsByName("detail_detail")[0]) { document.getElementsByName("detail_detail")[0].disabled = false; document.getElementsByName("detail_detail")[0].style.backgroundColor = "#FFFFFF"; } if (document.getElementsByName("detail_famille")[0]) { document.getElementsByName("detail_famille")[0].disabled = false; document.getElementsByName("detail_famille")[0].style.backgroundColor = "#FFFFFF"; } if (document.getElementsByName("detail_marque")[0]) { document.getElementsByName("detail_marque")[0].disabled = false; document.getElementsByName("detail_marque")[0].style.backgroundColor = "#FFFFFF"; } if (document.getElementsByName("detail_type")[0]) { document.getElementsByName("detail_type")[0].disabled = false; document.getElementsByName("detail_type")[0].style.backgroundColor = "#FFFFFF"; } if (document.getElementsByName("detail_prix_achat")[0]) { document.getElementsByName("detail_prix_achat")[0].disabled = false; document.getElementsByName("detail_prix_achat")[0].style.backgroundColor = "#FFFFFF"; } if (document.getElementsByName("detail_fournisseur")[0]) { document.getElementsByName("detail_fournisseur")[0].disabled = false; document.getElementsByName("detail_fournisseur")[0].style.backgroundColor = "#FFFFFF"; } if (document.getElementsByName("detail_qty_stock")[0]) { document.getElementsByName("detail_qty_stock")[0].disabled = false; document.getElementsByName("detail_qty_stock")[0].style.backgroundColor = "#FFFFFF"; } } function Annule_Materiel_DetailFields() { setisimgclassSelected(); setuserimgclassprofil(); setisimgclassSelected_recid(); Get_Materiel_Data(selected_id); get_Materiel_Images(selected_id); setmateriel_data_changed(""); setmateriel_data_edit_mode(""); } const [Get_Materiel_Data_api, setGet_Materiel_Data_api] = useState(); const [Get_Materiel_Data_message, setGet_Materiel_Data_message] = useState(); const [Get_Materiel_Data_result, setGet_Materiel_Data_result] = useState(); function Get_Materiel_Data(materiel_id) { setmateriel_data_changed(""); setmateriel_data_edit_mode(""); setisimgclassSelected(); setuserimgclassprofil(); setisimgclassSelected_recid(); var form = new FormData(); const stored_cookie = getCookie('tokenmysypart'); form.append("token", stored_cookie); form.append("_id", materiel_id); var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_Given_Ressource_Materielle/"; axios.post(myurl, form).then(res => { if (String(res.data.status) === "true") { //console.log(" In Get_Materiel_Data res.data.status = " + res.data.status); //console.log(" In Get_Materiel_Data res.data.message r_class = " + res.data.message); setGet_Materiel_Data_api("true"); setGet_Materiel_Data_result(res.data.message); if (res.data.message.length > 0) { var mylocal_materiel = JSON.parse(res.data.message); document.getElementsByName("detail_ref_interne")[0].value = ""; if (mylocal_materiel.ref_interne) setp_detail_ref_interne(mylocal_materiel.ref_interne); document.getElementsByName("detail_nom")[0].value = ""; if (mylocal_materiel.nom) setp_detail_nom(mylocal_materiel.nom); document.getElementsByName("detail_description")[0].value = ""; if (mylocal_materiel.description) setp_detail_description(mylocal_materiel.description); document.getElementsByName("detail_detail")[0].value = ""; if (mylocal_materiel.detail) setp_detail_detail(mylocal_materiel.detail); document.getElementsByName("detail_famille")[0].value = ""; if (mylocal_materiel.famille) setp_detail_famille(mylocal_materiel.famille); document.getElementsByName("detail_marque")[0].value = ""; if (mylocal_materiel.marque) setp_detail_marque(mylocal_materiel.marque); document.getElementsByName("detail_type")[0].value = ""; if (mylocal_materiel.type) setp_detail_type(mylocal_materiel.type); document.getElementsByName("detail_prix_achat")[0].value = ""; if (mylocal_materiel.prix_achat) setp_detail_prix_achat(mylocal_materiel.prix_achat); document.getElementsByName("detail_fournisseur")[0].value = ""; if (mylocal_materiel.fournisseur) setp_detail_fournisseur(mylocal_materiel.fournisseur); document.getElementsByName("detail_qty_stock")[0].value = ""; if (mylocal_materiel.qty_stock) setp_detail_qty_stock(mylocal_materiel.qty_stock); disable_Materiel_DetailFields(); } else { alert(" Aucun materiel recuperé"); } } else if (String(res.data.status) === String("Err_Connexion")) { alert('Erreur: ' + res.data.message); history.push("/Connexion"); } else { setGet_Materiel_Data_api("false"); setGet_Materiel_Data_message(res.data.message); alert(res.data.message); } }).catch((error) => { console.warn('Not good man :( Get_Materiel_Data = ', error); setGet_Materiel_Data_api("false"); alert(" Impossible de recuperer les données du materiel"); //setmyApimyApiMessage("") }) } const [selected_id, setselected_id] = useState(""); const [selected_employe_email, setselected_employe_email] = useState(""); function handleClick_edit_materiel_From_Line(selected_row_id) { submenu_detail_materiel(); var line = JSON.parse(rowss[selected_row_id]); //console.log("### line = ", line); var materiel_id = line._id; setselected_id(materiel_id); //console.log(" ### employe_id = ", employe_id); Display_Detail_Material_Data(materiel_id); if (myRef.current) { myRef.current.scrollIntoView({ behavior: "smooth" }); } Getall_Materiel_Affectation(materiel_id); } const [Getall_Materiel_Affectation_api, setGetall_Materiel_Affectation_api] = useState(); const [Getall_Materiel_Affectation_message, setGetall_Materiel_Affectation_message] = useState(); const [Getall_Materiel_Affectation_result, setGetall_Materiel_Affectation_result] = useState(); function Getall_Materiel_Affectation(local_materiel_id) { var form = new FormData(); const stored_cookie = getCookie('tokenmysypart'); form.append("token", stored_cookie); form.append("rm_id", local_materiel_id); var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_List_Ressource_Materielle_Affectation/"; axios.post(myurl, form).then(res => { if (String(res.data.status) === String("true")) { //console.log(" In Getall_Materiel_Affectation res.data.status = " + res.data.status); //console.log(" In Getall_Materiel_Affectation res.data.message r_class = " + res.data.message); setGetall_Materiel_Affectation_api("true"); setGetall_Materiel_Affectation_result(res.data.message); setrows_affectations(res.data.message); } else { setGetall_Materiel_Affectation_api("false"); setGetall_Materiel_Affectation_message(res.data.message); alert(res.data.message) } }).catch((error) => { console.warn('Not good man :( Getall_Materiel_Affectation = ', error); setGetall_Materiel_Affectation_api("false"); alert(" Impossible de recuperer les affectations du materiel"); //setmyApimyApiMessage("") }) } const [isimgclassdeleted, setisimgclassdeleted] = useState(""); const [isimgclassdeleted_message, setisimgclassdeleted_message] = useState(""); const [isimgclassSaved, setisimgclassSaved] = useState(""); const [isimgclassSaved_message, setisimgclassSaved_message] = useState(""); const [userimgclassprofil, setuserimgclassprofil] = useState(); const [userimgclassprofilchanged, setuserimgclassprofilchanged] = useState(""); function removeRecodedLogoImage() { if (!isimgclassSelected_recid || String(isimgclassSelected_recid).length < 3) { alert(" Image incorrecte. Impossible de la supprimer "); return; } var form = new FormData(); const stored_cookie = getCookie('tokenmysypart'); form.append("token", stored_cookie); form.append("image_recid", isimgclassSelected_recid); fetch( process.env.REACT_APP_API_URL + "myclass/api/DeleteImage_Ressource_Materielle/", { method: 'POST', body: form, } ).then((response) => response.json()) .then((result) => { console.log(' removeRecodedClassImage : status:', result['status']); console.log('removeRecodedClassImage : Success:', result['message']); if (String(result['status']) === String("true")) { setisimgclassSelected(""); setisimgclassSelected_recid(""); setisimgclassSelectedfile(""); setuserimgclassprofil(""); get_Materiel_Images(); } else if (String(result['status']) === String("Err_Connexion")) { alert('Erreur: ' + result['message']); history.push("/Connexion"); return; } else { alert(result['message']); } }) .catch((error) => { console.error('Error:', error); alert(" Impossible de supprimer l'image "); }); } const imglogoclasschangeHandler = (event) => { let file_size = event.target.files[0].size; //or if you like to have name and type //console.log(event.target.files); let file_name = event.target.files[0].name; let file_type = event.target.files[0].type; //alert("file_size = "+file_size+" file_type = "+file_type+" a = "+a); if (file_size > 1000000) { alert("L'image ne doit pas depasser un 1 Méga octets"); return; } setisimgclassSelected(event.target.files[0]); setisimgclassSelectedfile(true); setuserimgclassprofil(URL.createObjectURL(event.target.files[0])); setuserimgclassprofilchanged("1"); }; const [selected_affectation_id, set_selected_affectation_id] = useState(); const [Get_Materiel_Related_Target_Collection_Data_api, setGet_Materiel_Related_Target_Collection_Data_api] = useState(); const [Get_Materiel_Related_Target_Collection_Data_message, setGet_Materiel_Related_Target_Collection_Data_message] = useState(); const [Get_Materiel_Related_Target_Collection_Data_result, setGet_Materiel_Related_Target_Collection_Data_result] = useState(); function Get_Materiel_Related_Target_Collection_Data() { 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_Related_Target_Materiel_Collection_Data/"; axios.post(myurl, form).then(res => { if (String(res.data.status) === String("true")) { //console.log(" In Get_Materiel_Related_Target_Collection_Data res.data.status = " + res.data.status); //console.log(" In Get_Materiel_Related_Target_Collection_Data res.data.message r_class = " + res.data.message); setGet_Materiel_Related_Target_Collection_Data_api("true"); setGet_Materiel_Related_Target_Collection_Data_result(res.data.message); } else { setGet_Materiel_Related_Target_Collection_Data_api("false"); setGet_Materiel_Related_Target_Collection_Data_message(res.data.message); alert(res.data.message) } }).catch((error) => { console.warn('Not good man :( Get_Materiel_Related_Target_Collection_Data = ', error); setGet_Materiel_Related_Target_Collection_Data_api("false"); alert(" Impossible de recuperer les cibles d'affectation"); //setmyApimyApiMessage("") }) } const [record_materiel_Image_api, setrecord_materiel_Image_api] = useState(); const [record_materiel_Image_message, setrecord_materiel_Image_message] = useState(); const [record_materiel_Image_result, setrecord_materiel_Image_result] = useState(); function record_materiel_Image(l) { const formData = new FormData(); const url = process.env.REACT_APP_API_URL + "myclass/api/Update_Ressource_Materielle_Image/"; const stored_cookie = getCookie('tokenmysypart'); formData.append("token", stored_cookie); formData.append("rm_id", selected_id); formData.append('file_img', isimgclassSelected); formData.append('file_img_recid', isimgclassSelected_recid); //console.log(" ### formData = ", formData); fetch( url, { method: 'POST', body: formData, } ) .then((response) => response.json()) .then((result) => { console.log('Success:', result['message'], "result['status'] = ", result['status']); if (String(result['status']) === String("true")) { setrecord_materiel_Image_api("true"); setuserimgclassprofilchanged(""); alert(" L'image à jour a été mise enregistrée "); } else if (String(result['status']) === String("Err_Connexion")) { alert('Erreur: ' + result['message']); history.push("/Connexion"); } else { setrecord_materiel_Image_api("false"); alert(" Erreur : " + result['message']); } }) .catch((error) => { console.error('Error:', error); setrecord_materiel_Image_api("false"); alert(" Erreur : Impossible d'enregistrer l'image "); }); }; const [Update_One_Materiel_Data_api, setUpdate_One_Materiel_Data_api] = useState(); const [Update_One_Materiel_Data_message, setUpdate_One_Materiel_Data_message] = useState(); const [Update_One_Materiel_Data_result, setUpdate_One_Materiel_Data_result] = useState(); function Update_One_Materiel_Data() { var form = new FormData(); //form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA"); const stored_cookie = getCookie('tokenmysypart'); form.append("token", stored_cookie); form.append("ref_interne", p_detail_ref_interne); if (p_detail_nom) form.append("nom", p_detail_nom); else form.append("nom", ""); if (p_detail_description) form.append("description", p_detail_description); else form.append("description", ""); if (p_detail_detail) form.append("detail", p_detail_detail); else form.append("detail", ""); if (p_detail_famille) form.append("famille", p_detail_famille); else form.append("famille", ""); if (p_detail_marque) form.append("marque", p_detail_marque); else form.append("marque", ""); if (p_detail_type) form.append("type", p_detail_type); else form.append("type", ""); if (p_detail_prix_achat) form.append("prix_achat", p_detail_prix_achat); else form.append("prix_achat", ""); if (p_detail_fournisseur) form.append("fournisseur", p_detail_fournisseur); else form.append("fournisseur", ""); if (p_detail_qty_stock) form.append("qty_stock", p_detail_qty_stock); else form.append("qty_stock", ""); form.append("_id", selected_id); //console.log(" form == ", form); var myurl = process.env.REACT_APP_API_URL + "myclass/api/Update_Ressource_Materielle/"; axios.post(myurl, form).then(res => { console.log(" In Update_One_Materiel_Data res.data.status = " + res.data.status); console.log(" In Update_One_Materiel_Data res.data.message r_class = " + res.data.message); if (String(res.data.status) === String("true")) { setUpdate_One_Materiel_Data_api("true"); setUpdate_One_Materiel_Data_result(res.data.message); Getall_Training_Materiel(); disable_Materiel_DetailFields(); setmateriel_data_changed(""); setmateriel_data_edit_mode(""); Getall_Training_Materiel(selected_id); alert(" La mise à jour été correctement faite."); setsubmenu("detail_materiel"); setadd_One_Materiel(""); Get_Materiel_Data(selected_id); if (myRef_head) myRef_head.current.scrollIntoView({ behavior: "smooth" }); } else { setUpdate_One_Materiel_Data_api("false"); setUpdate_One_Materiel_Data_message(res.data.message); alert(res.data.message); } }).catch((error) => { console.warn('UpdateStagiaireData : Not good man :( Update_One_Materiel_Data = ' + error); setUpdate_One_Materiel_Data_api("false"); alert(" Impossible de mettre à jour le materiel"); }) } const [get_Materiel_Images_api, setget_Materiel_Images_api] = useState(); const [get_Materiel_Images_message, setget_Materiel_Images_message] = useState(); const [get_Materiel_Images_result, setget_Materiel_Images_result] = useState(); function get_Materiel_Images(material_id) { setisimgclassSelected(); setuserimgclassprofil(); setisimgclassSelected_recid(); var myurl = process.env.REACT_APP_API_URL + "myclass/api/getRecoded_Materielle_Image_from_front/"; var form = new FormData(); const stored_cookie = getCookie('tokenmysypart'); form.append("token", stored_cookie); form.append("rm_id", material_id); axios.post(myurl, form).then(res => { //console.log(" get_Materiel_Images : In test res.data.status = " + res.data.status); // console.log(" get_Materiel_Images: res.data.message.img = " + res.data.message); if (String(res.data.status) === "true") { setget_Materiel_Images_api("true"); if (JSON.parse(res.data.message).logo_img) { var partner_logo_img = "data:image/png;base64," + JSON.parse(res.data.message).logo_img; setisimgclassSelected(partner_logo_img); setuserimgclassprofil(partner_logo_img); setisimgclassSelected_recid(JSON.parse(res.data.message).logo_img_recid); } } else if (String(res.data.status) === String("Err_Connexion")) { alert('Erreur: ' + res.data.message); history.push("/Connexion"); return; } else { setget_Materiel_Images_api("false"); get_Materiel_Images_message(res.data.message) alert(res.data.message); } }).catch((error) => { console.warn('get_Materiel_Images ee: Not good man :( = ', error); setget_Materiel_Images_api("false"); get_Materiel_Images_message(" Impossible de recuperer l'image du materiel") }) } const [isimgclassSelected, setisimgclassSelected] = useState(false); const [isimgclassSelected_recid, setisimgclassSelected_recid] = useState(""); const [isimgclassSelectedfile, setisimgclassSelectedfile] = useState(false); const [p_detail_ref_interne, setp_detail_ref_interne] = useState(); const [p_detail_nom, setp_detail_nom] = useState(); const [p_detail_description, setp_detail_description] = useState(); const [p_detail_detail, setp_detail_detail] = useState(); const [p_detail_famille, setp_detail_famille] = useState(); const [p_detail_marque, setp_detail_marque] = useState(); const [p_detail_type, setp_detail_type] = useState(); const [p_detail_prix_achat, setp_detail_prix_achat] = useState(); const [p_detail_fournisseur, setp_detail_fournisseur] = useState(); const [p_detail_qty_stock, setp_detail_qty_stock] = useState(); // ------------ const [p_one_detail_ref_interne, setp_one_detail_ref_interne] = useState(); const [p_one_detail_nom, setp_one_detail_nom] = useState(); const [p_one_detail_description, setp_one_detail_description] = useState(); const [p_one_detail_detail, setp_one_detail_detail] = useState(); const [p_one_detail_famille, setp_one_detail_famille] = useState(); const [p_one_detail_marque, setp_one_detail_marque] = useState(); const [p_one_detail_type, setp_one_detail_type] = useState(); const [p_one_detail_prix_achat, setp_one_detail_prix_achat] = useState(); const [p_one_detail_fournisseur, setp_one_detail_fournisseur] = useState(); const [p_one_detail_qty_stock, setp_one_detail_qty_stock] = useState(); const [p_one_affect_poste, setp_one_affect_poste] = useState(); const [p_one_affect_date_du, setp_one_affect_date_du] = useState(new Date().toLocaleDateString('fr-FR')); const [p_one_affect_date_au, setp_one_affect_date_au] = useState(new Date().toLocaleDateString('fr-FR')); const [p_one_affect_cible, setp_one_affect_cible] = useState(); const [p_one_affect_cible_nom, setp_one_affect_cible_nom] = useState(); const [p_one_affect_comment, setp_one_affect_comment] = useState(); const [p_affect_poste, setp_affect_poste] = useState(); const [p_affect_date_du, setp_affect_date_du] = useState(new Date().toLocaleDateString('fr-FR')); const [p_affect_date_au, setp_affect_date_au] = useState(new Date().toLocaleDateString('fr-FR')); const [p_affect_cible, setp_affect_cible] = useState(); const [p_affect_cible_label, setp_affect_cible_label] = useState(); const [p_affect_cible_nom, setp_affect_cible_nom] = useState(); const [p_affect_cible_nom_label, setp_affect_cible_nom_label] = useState(); const [edite_affectation_form, setedite_affectation_form] = useState(); const [p_affect_comment, setp_affect_comment] = useState(); const [p_related_target_collection, setp_related_target_collection] = useState(); const [p_related_target_collection_id, setp_related_target_collection_id] = useState(); function add_one_affectation_block() { setdisplay_affectation(""); setAdd_new_affectation("1"); if (myRef_new_affectation.current) { myRef_new_affectation.current.scrollIntoView({ behavior: "smooth" }); } clean_affectation_fields(); } const [Update_One_Affectation_Data_api, setUpdate_One_Affectation_Data_api] = useState(); const [Update_One_Affectation_Data_message, setUpdate_One_Affectation_Data_message] = useState(); const [Update_One_Affectation_Data_result, setUpdate_One_Affectation_Data_result] = useState(); function Update_One_Affectation_Data() { var form = new FormData(); //form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA"); const stored_cookie = getCookie('tokenmysypart'); form.append("token", stored_cookie); form.append("_id", selected_affectation_id); form.append("rm_id", selected_id); if (p_affect_poste) form.append("poste", p_affect_poste); else { alert(" Vous devez definir une poste pour cette affectation"); return; } if (p_affect_date_du) form.append("date_du", p_affect_date_du); else { alert(" Vous devez definir une date de debut pour cette affectation"); return; } if (p_affect_date_au) form.append("date_au", p_affect_date_au); else form.append("date_au", ""); if (p_affect_comment) form.append("comment", p_affect_comment); else form.append("comment", ""); if (p_affect_cible) form.append("related_target_collection", p_affect_cible); else form.append("related_target_collection", ""); if (p_affect_cible_nom) form.append("related_target_collection_id", p_affect_cible_nom); else form.append("related_target_collection_id", ""); //console.log(" affectation form == ", form); var myurl = process.env.REACT_APP_API_URL + "myclass/api/Update_Affectation_Ressource_Materielle_Poste/"; axios.post(myurl, form).then(res => { console.log(" In Update_One_Affectation_Data res.data.status = " + res.data.status); console.log(" In Update_One_Affectation_Data res.data.message r_class = " + res.data.message); if (String(res.data.status) === String("true")) { setUpdate_One_Affectation_Data_api("true"); setUpdate_One_Affectation_Data_result(res.data.message); Disable_Detail_Affectation_Fields(); setAffectation_data_changed(""); setedite_affectation_form(""); Getall_Materiel_Affectation(selected_id); setSelectionModel_affectations([]); alert(" La mise à jour été correctement faite."); if (myRef_affectation) myRef_affectation.current.scrollIntoView({ behavior: "smooth" }); } else { setUpdate_One_Affectation_Data_api("false"); setUpdate_One_Affectation_Data_message(res.data.message); alert(res.data.message); } }).catch((error) => { console.log('UpdateStagiaireData : Not good man :( Update_One_Affectation_Data = ' + error); setUpdate_One_Affectation_Data_api("false"); alert(" Impossible de mettre à jour l'affectation"); }) } const [Affectation_data_changed, setAffectation_data_changed] = useState(); const myRef_affectation = useRef(null); const myRef_new_affectation = useRef(null); function Disable_Detail_Affectation_Fields() { setedite_affectation_form("0"); if (document.getElementsByName("affect_poste")[0]) { document.getElementsByName("affect_poste")[0].disabled = true; document.getElementsByName("affect_poste")[0].style.backgroundColor = "#ECEFF1"; } if (document.getElementsByName("affect_cible")[0]) { document.getElementsByName("affect_cible")[0].disabled = true; document.getElementsByName("affect_cible")[0].style.backgroundColor = "#ECEFF1"; } if (document.getElementsByName("affect_cible_nom")[0]) { document.getElementsByName("affect_cible_nom")[0].disabled = true; document.getElementsByName("affect_cible_nom")[0].style.backgroundColor = "#ECEFF1"; } if (document.getElementsByName("affect_date_du")[0]) { document.getElementsByName("affect_date_du")[0].disabled = true; document.getElementsByName("affect_date_du")[0].style.backgroundColor = "#ECEFF1"; } if (document.getElementsByName("affect_date_au")[0]) { document.getElementsByName("affect_date_au")[0].disabled = true; document.getElementsByName("affect_date_au")[0].style.backgroundColor = "#ECEFF1"; } if (document.getElementsByName("affect_comment")[0]) { document.getElementsByName("affect_comment")[0].disabled = true; document.getElementsByName("affect_comment")[0].style.backgroundColor = "#ECEFF1"; } } function Enable_Detail_Affectation_Fields() { setedite_affectation_form("1"); if (document.getElementsByName("affect_poste")[0]) { document.getElementsByName("affect_poste")[0].disabled = false; document.getElementsByName("affect_poste")[0].style.backgroundColor = "#FFFFFF"; } if (document.getElementsByName("affect_cible")[0]) { document.getElementsByName("affect_cible")[0].disabled = false; document.getElementsByName("affect_cible")[0].style.backgroundColor = "#FFFFFF"; } if (document.getElementsByName("affect_cible_nom")[0]) { document.getElementsByName("affect_cible_nom")[0].disabled = false; document.getElementsByName("affect_cible_nom")[0].style.backgroundColor = "#FFFFFF"; } if (document.getElementsByName("affect_date_du")[0]) { document.getElementsByName("affect_date_du")[0].disabled = false; document.getElementsByName("affect_date_du")[0].style.backgroundColor = "#FFFFFF"; } if (document.getElementsByName("affect_date_au")[0]) { document.getElementsByName("affect_date_au")[0].disabled = false; document.getElementsByName("affect_date_au")[0].style.backgroundColor = "#FFFFFF"; } if (document.getElementsByName("affect_comment")[0]) { document.getElementsByName("affect_comment")[0].disabled = false; document.getElementsByName("affect_comment")[0].style.backgroundColor = "#FFFFFF"; } } function Annule_Affectation_DetailFields() { clean_affectation_fields(); Get_Given_Materiel_Affectation(selected_affectation_id); setAffectation_data_changed(""); setedite_affectation_form(""); } function Fermer_Affectation_Fields() { clean_affectation_fields(); setedite_affectation_form(); setdisplay_affectation(); setSelectionModel_affectations([]); } function Fermer_nouvelle_Affectation_Fields() { clean_nouvelle_affectation_fields(); setedite_affectation_form(); setdisplay_affectation(); setAdd_new_affectation(); setSelectionModel_affectations([]); } const [Get_Given_Materiel_Affectation_api, setGet_Given_Materiel_Affectation_api] = useState(); const [Get_Given_Materiel_Affectation_message, setGet_Given_Materiel_Affectation_message] = useState(); const [Get_Given_Materiel_Affectation_result, setGet_Given_Materiel_Affectation_result] = useState(); function Get_Given_Materiel_Affectation(local_affectation_id) { var form = new FormData(); const stored_cookie = getCookie('tokenmysypart'); form.append("token", stored_cookie); form.append("affectation_id", local_affectation_id); var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_Given_Affectation_Ressource_Materielle_Poste/"; axios.post(myurl, form).then(res => { if (String(res.data.status) === String("true")) { //console.log(" In Get_Given_Materiel_Affectation res.data.status = " + res.data.status); //console.log(" In Get_Given_Materiel_Affectation res.data.message r_class = " + res.data.message); setGet_Given_Materiel_Affectation_api("true"); if (String(res.data.message).length > 0) { setGet_Given_Materiel_Affectation_result(res.data.message); var mylocal_affectation = JSON.parse(res.data.message); if (mylocal_affectation.poste) { setp_affect_poste(mylocal_affectation.poste); } if (mylocal_affectation.date_du) { setp_affect_date_du(mylocal_affectation.date_du); } if (mylocal_affectation.date_au) { setp_affect_date_au(mylocal_affectation.date_au); } if (mylocal_affectation.related_target_collection) { setp_affect_cible(mylocal_affectation.related_target_collection); if (String(mylocal_affectation.related_target_collection) === "myclass") setp_affect_cible_label("Formation"); else if (String(mylocal_affectation.related_target_collection) === "session_formation") setp_affect_cible_label("Session formation"); else if (String(mylocal_affectation.related_target_collection) === "ressource_humaine") setp_affect_cible_label("Employé"); } if (mylocal_affectation.related_target_collection_id) { setp_affect_cible_nom(mylocal_affectation.related_target_collection_id); setp_affect_cible_nom_label(mylocal_affectation.related_target_collection_id_nom); } if (mylocal_affectation.comment) { setp_affect_comment(mylocal_affectation.comment); } } else { alert(" Aucune donnée recuperée"); } Disable_Detail_Affectation_Fields(); } else { setGet_Given_Materiel_Affectation_api("false"); setGet_Given_Materiel_Affectation_message(res.data.message); alert(res.data.message) } }).catch((error) => { console.warn('Not good man :( Get_Given_Materiel_Affectation = ', error); setGet_Given_Materiel_Affectation_api("false"); alert(" Impossible de recuperer l'affectation de l'employé"); //setmyApimyApiMessage("") }) } const [Add_one_affectation_api, setAdd_one_affectation_api] = useState(); const [Add_one_affectation_message, setAdd_one_affectation_message] = useState(); const [Add_one_affectation_result, setAdd_one_affectation_result] = useState(); function Add_one_affectation() { var form = new FormData(); //form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA"); const stored_cookie = getCookie('tokenmysypart'); form.append("token", stored_cookie); form.append("rm_id", selected_id); if (p_one_affect_poste) form.append("poste", p_one_affect_poste); else { alert(" Vous devez definir une poste pour cette affectation"); return; } if (p_one_affect_date_du) form.append("date_du", p_one_affect_date_du); else { alert(" Vous devez definir une date de debut pour cette affectation"); return; } if (p_one_affect_date_au) form.append("date_au", p_one_affect_date_au); else form.append("date_au", ""); if (p_one_affect_comment) form.append("comment", p_one_affect_comment); else form.append("comment", ""); if (p_one_affect_cible) form.append("related_target_collection", p_one_affect_cible); else form.append("related_target_collection", ""); if (p_one_affect_cible_nom) form.append("related_target_collection_id", p_one_affect_cible_nom); else form.append("related_target_collection_id", ""); console.log(" Add_one_affectation affectation form == ", form); var myurl = process.env.REACT_APP_API_URL + "myclass/api/Add_Affectation_Ressource_Materielle_Poste/"; axios.post(myurl, form).then(res => { console.log(" In Add_one_affectation res.data.status = " + res.data.status); console.log(" In Add_one_affectation res.data.message r_class = " + res.data.message); if (String(res.data.status) === String("true")) { setAdd_one_affectation_api("true"); setAdd_one_affectation_result(res.data.message); Disable_Detail_Affectation_Fields(); setAffectation_data_changed(""); setedite_affectation_form(""); setAdd_new_affectation(""); Getall_Materiel_Affectation(selected_id); setSelectionModel_affectations([]); alert(" L'affectation a été ajoutée."); if (myRef_affectation) myRef_affectation.current.scrollIntoView({ behavior: "smooth" }); } else { setAdd_one_affectation_api("false"); setAdd_one_affectation_message(res.data.message); alert(res.data.message); } }).catch((error) => { console.log('UpdateStagiaireData : Not good man :( Add_one_affectation = ' + error); setAdd_one_affectation_api("false"); alert(" Impossible d'ajouter l'affectation"); }) } function handleClick_edit_affectation_From_Line(selected_row_id) { setdisplay_affectation("1"); setAdd_new_affectation(""); clean_affectation_fields(); clean_nouvelle_affectation_fields(); //setsubmenu(""); var line = JSON.parse(rows_affectations[selected_row_id]); //console.log("### line = ", line); var affectation_id = line._id; set_selected_affectation_id(affectation_id); if (myRef_affectation.current) { myRef_affectation.current.scrollIntoView({ behavior: "smooth" }); } Get_Given_Materiel_Affectation(affectation_id); } function handleClick_delete_affection(event, cellValues) { var local_affectation_id = cellValues.row._id; Delete_affection(selected_id, local_affectation_id); } const [Delete_affection_api, setDelete_affection_api] = useState(); const [Delete_affection_message, setDelete_affection_message] = useState(); const [Delete_affection_result, setDelete_affection_result] = useState(); function Delete_affection(local_rh_id, local_affectation_id) { var form = new FormData(); const stored_cookie = getCookie('tokenmysypart'); form.append("token", stored_cookie); form.append("rm_id", local_rh_id); form.append("_id", local_affectation_id); var myurl = process.env.REACT_APP_API_URL + "myclass/api/Delete_Affectation_Ressource_Materielle_Poste/"; axios.post(myurl, form).then(res => { //console.log(" In Delete_affection res.data.status = " + res.data.status); //console.log(" In Delete_affection res.data.message r_class = " + res.data.message); if (String(res.data.status) === String("true")) { setDelete_affection_api("true"); setDelete_affection_result(res.data.message); clean_affectation_fields(); setAffectation_data_changed(); setedite_affectation_form(); setdisplay_affectation(); Getall_Materiel_Affectation(local_rh_id); alert(" La fonction a été correctement supprimée.") } else { setDelete_affection_api("false"); setDelete_affection_message(res.data.message); alert(res.data.message); } }).catch((error) => { console.log('Delete_affection : Not good man :( Delete_affection = ' + error); setDelete_affection_api("false"); alert(" Impossible de supprimer la fonction"); }) } const [Delete_Materiel_api, setDelete_Materiel_api] = useState(); const [Delete_Materiel_message, setDelete_Materiel_message] = useState(); const [Delete_Materiel_result, setDelete_Materiel_result] = useState(); function Delete_Materiel(local_rh_id) { var form = new FormData(); const stored_cookie = getCookie('tokenmysypart'); form.append("token", stored_cookie); form.append("_id", local_rh_id); var myurl = process.env.REACT_APP_API_URL + "myclass/api/Delete_Ressource_Materielle/"; axios.post(myurl, form).then(res => { //console.log(" In Delete_Materiel res.data.status = " + res.data.status); //console.log(" In Delete_Materiel res.data.message r_class = " + res.data.message); if (String(res.data.status) === String("true")) { setDelete_Materiel_api("true"); setDelete_Materiel_result(res.data.message); clean_all_filters(); alert(" Le materiel a été correctement supprimé.") } else { setDelete_Materiel_api("false"); setDelete_Materiel_message(res.data.message); alert(res.data.message); } }).catch((error) => { console.log('Delete_Materiel : Not good man :( Delete_Materiel = ' + error); setDelete_Materiel_api("false"); alert(" Impossible de supprimer le materiel"); }) } function clean_all_filters() { setp_filtre1(); setp_filtre1_value(); setp_filtre2(); setp_filtre2_value(); setp_filtre3(); setp_filtre3_value(); setp_filtre4(); setp_filtre4_value(); setdisplay_affectation(""); setAdd_new_affectation(""); clean_affectation_fields(); clean_nouvelle_affectation_fields(); setSelectionModel_affectations([]); setSelectionModel([]); setsubmenu(""); Getall_Training_Materiel_No_Filter(); } function handleClick_delete(event, cellValues) { var local_rm_id = cellValues.row._id; Delete_Materiel(local_rm_id); } return (
MySy Information {Dialog_1_message}

Votre matériel

Utilisez les filtres !
{ setp_filtre1(e.target.value); }} > Ref. Intenne   Nom   Lié a la Formation (code externe)   Lié a la Session (code session)   Lié a l'employe (email)  
{p_filtre1 && { setp_filtre1_value(e.target.value); }} InputProps={{ endAdornment: ( { setp_filtre1_value(""); }} /> ), }} /> }
{p_filtre1 &&
  { setp_filtre2("1"); setp_filtre2_value(""); }} />
} {p_filtre1 &&
  { setp_filtre1(); setp_filtre1_value(); }} />
}
{p_filtre2 &&
{ setp_filtre2(e.target.value); }} > Ref. Intenne   Nom   Lié a la Formation (code externe)   Lié a la Session (code session)   Lié a l'employe (email)  
{String(p_filtre2).length > 2 && setp_filtre2_value(e.target.value)} InputProps={{ endAdornment: ( { setp_filtre2_value(""); }} /> ), }} />}
{String(p_filtre2).length > 2 &&
  { setp_filtre3("1"); setp_filtre3_value(""); }} />
} {String(p_filtre2).length > 2 &&
  { setp_filtre2(); setp_filtre2_value(); }} />
}
} {p_filtre3 &&
{ setp_filtre3(e.target.value) }} > Ref. Intenne   Nom   Lié a la Formation (code externe)   Lié a la Session (code session)   Lié a l'employe (email)  
{String(p_filtre3).length > 2 && setp_filtre3_value(e.target.value)} InputProps={{ endAdornment: ( { setp_filtre3_value(""); }} /> ), }} />}
{String(p_filtre2).length > 2 &&
  { setp_filtre4("1"); setp_filtre4_value(""); }} />
} {String(p_filtre3).length > 2 &&
  { setp_filtre3(); setp_filtre3_value(); }} />
}
} {/* {p_filtre4 &&
{ setp_filtre4(e.target.value) }} > Email   Nom   Code Session    Titre Formation  
{String(p_filtre4).length > 2 && setp_filtre2_value(e.target.value)} InputProps={{ endAdornment: ( { setp_filtre4_value(""); }} /> ), }} />}
{String(p_filtre2).length > 2 &&
  { setp_filtre4(); setp_filtre4_value(); }} />
}
} */}

  { setSelectionModel(newSelectionModel); if (newSelectionModel.length === 1) handleClick_edit_materiel_From_Line(newSelectionModel); if (newSelectionModel.length !== 1) { setsubmenu(); setdisplay_detail_materiel(); setadd_One_Materiel(); } }} selectionModel={selectionModel} localeText={frFR.components.MuiDataGrid.defaultProps.localeText} rows={rowss.map((item, index) => ( { id: index, _id: JSON.parse(item)._id, email: JSON.parse(item).email, nom: JSON.parse(item).nom, ref_interne: JSON.parse(item).ref_interne, famille: JSON.parse(item).famille, marque: JSON.parse(item).marque, type: JSON.parse(item).type, fournisseur: JSON.parse(item).fournisseur, } ))} columns={columns} pageSize={10} className="datagridclass" rowsPerPageOptions={[10]} //disableSelectionOnClick components={{ Toolbar: GridToolbar, }} //sx={datagridSx} getCellClassName={(params) => { //field === 'distantiel' if (params.field === 'distantiel' && String(params.value) === "1") { return 'cell--distantiel'; } if (params.field === "presentiel" && String(params.value) == "1") { return 'cell--presentiel'; } //field === "statut" if (params.field === "status" && String(params.value) == "0") { return 'cell--statut--preinscrit'; } if (params.field === "status" && String(params.value) == "1") { return 'cell--statut--inscrit'; } if (params.field === "status" && String(params.value) == "-1") { return 'cell--statut--annule'; } }} getRowClassName={(params) => { if (String(params.row.status) === "-1") { return 'line--statut--annule'; } if (String(params.row.status) === "0") { return 'line--statut--preinscrit'; } if (String(params.row.status) === "1") { return 'line--statut--inscrit'; } }} />

{session_file_name && } {String(liste_sessions_file_change_api) === String("true") && } {String(liste_sessions_file_change_api) === String("false") && } Télécharger un fichier modèle
 
{String(submenu) === "detail_materiel" && String(add_One_Materiel) !== "1" &&


{} {/*isimgclassSelected && */} {isimgclassdeleted && String(isimgclassdeleted) === "1" && } {isimgclassdeleted && String(isimgclassdeleted) === "0" && } {isimgclassSelected && String(isimgclassSaved) === "0" && }
  • L'image doit etre carrée.
  • Les formats autorisés sont : ['jpg', 'jpeg', 'png', 'jpe', 'webp']
  • Les dimensions recommandées: 128pixels X 128pixels -- 144pixels X 144pixels -- 168pixels X 168pixels
    Les dimensions maximales sont de 256pixels X 256pixels
  • La taille de l'image ne doit pas depasser 1 mega octet
  • Ref. Interne
    { setp_detail_ref_interne(e.target.value); setmateriel_data_changed("1"); } } />
    Nom
    { setp_detail_nom(e.target.value); setmateriel_data_changed("1"); } } />
    Description
    { setp_detail_description(e.target.value); setmateriel_data_changed("1"); } } />
    Detail
    { setp_detail_detail(e.target.value); setmateriel_data_changed("1"); } } />
    Famille
    { setp_detail_famille(e.target.value); setmateriel_data_changed("1"); } } />
    Marque
    { setp_detail_marque(e.target.value); setmateriel_data_changed("1"); } } />
    Type
    { setp_detail_type(e.target.value); setmateriel_data_changed("1"); } } />
    Prix d'achat (estimé)
    { setp_detail_prix_achat(e.target.value); setmateriel_data_changed("1"); } } />
    Fournisseur
    { setp_detail_fournisseur(e.target.value); setmateriel_data_changed("1"); } } />
    Qté en stock
    { setp_detail_qty_stock(e.target.value); setmateriel_data_changed("1"); } } />
     
    {String(materiel_data_changed) === "1" && String(materiel_data_edit_mode) === "1" &&
    /!\ Pensez à enregistrer les modifications
    }
    {String(materiel_data_changed) === "1" && String(materiel_data_edit_mode) === "1" &&
    } {String(materiel_data_edit_mode) === "1" &&
    }
    {String(materiel_data_edit_mode) !== "1" &&
    }
     
    } {String(submenu) === "detail_materiel" && String(add_One_Materiel) === "1" &&
    Ref. Interne
    { setp_one_detail_ref_interne(e.target.value); setmateriel_data_changed("1"); } } />
    Nom
    { setp_one_detail_nom(e.target.value); setmateriel_data_changed("1"); } } />
    Description
    { setp_one_detail_description(e.target.value); setmateriel_data_changed("1"); } } />
    Detail
    { setp_one_detail_detail(e.target.value); setmateriel_data_changed("1"); } } />
    Famille
    { setp_one_detail_famille(e.target.value); setmateriel_data_changed("1"); } } />
    Marque
    { setp_one_detail_marque(e.target.value); setmateriel_data_changed("1"); } } />
    Type
    { setp_one_detail_type(e.target.value); setmateriel_data_changed("1"); } } />
    Prix d'achat (estimé)
    { setp_one_detail_prix_achat(e.target.value); setmateriel_data_changed("1"); } } />
    Fournisseur
    { setp_one_detail_fournisseur(e.target.value); setmateriel_data_changed("1"); } } />
    Qté en stock
    { setp_one_detail_qty_stock(e.target.value); setmateriel_data_changed("1"); } } />
     
    {
    } {
    }
     
    } {String(submenu) === "affectation" &&
      { setSelectionModel_affectations(newSelectionModel); if (newSelectionModel.length === 1) handleClick_edit_affectation_From_Line(newSelectionModel); if (newSelectionModel.length !== 1) { setedite_affectation_form(); setdisplay_affectation(); } }} selectionModel={selectionModel_affectations} localeText={frFR.components.MuiDataGrid.defaultProps.localeText} rows={rows_affectations.map((item, index) => ( { id: index, _id: JSON.parse(item)._id, poste: JSON.parse(item).poste, date_du: JSON.parse(item).date_du, date_au: JSON.parse(item).date_au, target_related_collection: JSON.parse(item).target_related_collection, target_related_collection_id: JSON.parse(item).target_related_collection_id, related_target_collection_id_nom: JSON.parse(item).related_target_collection_id_nom, related_target_collection_object: JSON.parse(item).related_target_collection_object, } ))} columns={columns_materielle_affectation} pageSize={10} className="datagridclass" rowsPerPageOptions={[10]} //disableSelectionOnClick components={{ Toolbar: GridToolbar, }} /*//sx={datagridSx} getCellClassName={(params) => { //field === 'distantiel' if (params.field === 'distantiel' && String(params.value) === "1") { return 'cell--distantiel'; } if (params.field === "presentiel" && String(params.value) == "1") { return 'cell--presentiel'; } //field === "statut" if (params.field === "status" && String(params.value) == "0") { return 'cell--statut--preinscrit'; } if (params.field === "status" && String(params.value) == "1") { return 'cell--statut--inscrit'; } if (params.field === "status" && String(params.value) == "-1") { return 'cell--statut--annule'; } }} getRowClassName={(params) => { if (String(params.row.status) === "-1") { return 'line--statut--annule'; } if (String(params.row.status) === "0") { return 'line--statut--preinscrit'; } if (String(params.row.status) === "1") { return 'line--statut--inscrit'; } }}*/ />

    {String(display_affectation) === "1" &&
    Poste Occupé
    { setp_affect_poste(e.target.value); setAffectation_data_changed("1"); }} />
    {String(edite_affectation_form) !== "1" &&
    Cible
    } {String(edite_affectation_form) === "1" &&
    Cible
    { setp_affect_cible(e.target.value); setAffectation_data_changed("1"); }} > Employe    Formation    Session de formation   Aucun  
    } {String(edite_affectation_form) !== "1" &&
    Cible Nom
    } {String(edite_affectation_form) === "1" &&
    Cible Nom
    { setp_affect_cible_nom(e.target.value); setAffectation_data_changed("1"); }} > {Get_Materiel_Related_Target_Collection_Data_result && Get_Materiel_Related_Target_Collection_Data_result.filter((local_mymanager) => JSON.parse(local_mymanager).related_target_collection === p_affect_cible).map((mymanager) => ( {JSON.parse(mymanager).related_target_collection_id_nom}   ))}
    } {String(edite_affectation_form) !== "1" &&
    Date du
    } {String(edite_affectation_form) === "1" &&
    Date du
    { setp_affect_date_du(format(date, 'dd/MM/yyyy')); setAffectation_data_changed("1"); } } showTimeSelect={false} //filterTime={filterPassedTime_start} dateFormat="dd/MM/yyyy" className="disabled_style enable_style" locale='fr-FR' />
    } {String(edite_affectation_form) !== "1" &&
    Date au
    } {String(edite_affectation_form) === "1" &&
    Date au
    { setp_affect_date_au(format(date, 'dd/MM/yyyy')); setAffectation_data_changed("1"); } } showTimeSelect={false} //filterTime={filterPassedTime_start} dateFormat="dd/MM/yyyy" className="disabled_style enable_style" locale='fr-FR' />
    }
    Commentaire
    { setp_affect_comment(e.target.value); }} />
     
    {String(Affectation_data_changed) === "1" && String(edite_affectation_form) === "1" &&
    /!\ Pensez à enregistrer les modifications
    }
    {String(Affectation_data_changed) === "1" && String(edite_affectation_form) === "1" &&
    } {String(edite_affectation_form) === "1" &&
    }
    {String(edite_affectation_form) !== "1" &&
    } {String(edite_affectation_form) !== "1" &&
    }
     
    } {String(Add_new_affectation) === "1" &&
    Poste Occupé
    { setp_one_affect_poste(e.target.value); }} />
    Cible
    { setp_one_affect_cible(e.target.value); }} > Employe    Formation    Session de formation   Aucun  
    Cible Nom
    { setp_one_affect_cible_nom(e.target.value); }} > {Get_Materiel_Related_Target_Collection_Data_result && Get_Materiel_Related_Target_Collection_Data_result.filter((local_mymanager) => JSON.parse(local_mymanager).related_target_collection === p_one_affect_cible).map((mymanager) => ( {JSON.parse(mymanager).related_target_collection_id_nom}   ))}
    Date du
    { setp_one_affect_date_du(format(date, 'dd/MM/yyyy')); } } showTimeSelect={false} //filterTime={filterPassedTime_start} dateFormat="dd/MM/yyyy" className="disabled_style enable_style" locale='fr-FR' />
    Date au
    { setp_one_affect_date_au(format(date, 'dd/MM/yyyy')); } } showTimeSelect={false} //filterTime={filterPassedTime_start} dateFormat="dd/MM/yyyy" className="disabled_style enable_style" locale='fr-FR' />
    Commentaire
    { setp_one_affect_comment(e.target.value); }} />
     
     
    }
    }
    ); } export default Materiels;