18/02/2024 - 14h

recette2
cherif 2024-02-18 13:54:53 +01:00
parent 45031114de
commit 1ebb54d192
11 changed files with 235 additions and 266 deletions

View File

@ -201,11 +201,11 @@ const Config_Documents = (props) => {
const [p_filtre1, setp_filtre1] = useState();
const [p_filtre1_value, setp_filtre1_value] = 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_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();
@ -391,6 +391,7 @@ const Config_Documents = (props) => {
setp_detail_contenu_doc();
setp_detail_nom("");
setp_detail_ref_interne("");
setcourrier_template_type_document_ref_interne("")
setp_detail_sujet("");
setp_detail_type_doc("");
setfield_programme();
@ -402,7 +403,9 @@ const Config_Documents = (props) => {
setp_one_detail_contenu_doc();
setp_one_detail_nom("");
setp_one_detail_ref_interne("");
setcourrier_template_type_document_ref_interne('');
setp_one_detail_sujet("");
setoriginal_courrier_template_id("");
setp_one_detail_courrier_template_type_document_ref_interne("");
@ -450,6 +453,12 @@ const Config_Documents = (props) => {
if (mylocal_document.nom)
setp_one_detail_nom(mylocal_document.nom);
if (mylocal_document.original_courrier_template_id)
setoriginal_courrier_template_id(mylocal_document.original_courrier_template_id);
else
setoriginal_courrier_template_id("")
if (mylocal_document.type_doc)
@ -545,6 +554,8 @@ const Config_Documents = (props) => {
}
const [courrier_template_type_document_ref_interne, setcourrier_template_type_document_ref_interne] = useState("");
const [Get_Default_Original_Partner_Document_Data_api, setGet_Default_Original_Partner_Document_Data_api] = useState();
const [Get_Default_Original_Partner_Document_Data_message, setGet_Default_Original_Partner_Document_Data_message] = useState();
@ -560,6 +571,7 @@ const Config_Documents = (props) => {
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("ref_interne", p_detail_ref_interne);
form.append("original_courrier_template_id", original_courrier_template_id);
//console.log(" ## form = ", form);
@ -568,15 +580,19 @@ const Config_Documents = (props) => {
axios.post(myurl, form).then(res => {
setLoading(false);
if (String(res.data.status) === "true") {
//console.log(" In Get_Default_Original_Partner_Document_Data res.data.status = " + res.data.status);
//console.log(" In Get_Default_Original_Partner_Document_Data res.data.message r_class = " + res.data.message);
console.log(" In Get_Default_Original_Partner_Document_Data res.data.status = " + res.data.status);
console.log(" In Get_Default_Original_Partner_Document_Data res.data.message r_class = " + res.data.message);
console.log(" ~~~11111");
setGet_Default_Original_Partner_Document_Data_api("true");
console.log(" ~~~2222");
setGet_Default_Original_Partner_Document_Data_result(res.data.message);
console.log(" ~~~333");
if (res.data.message.length > 0) {
console.log(" ~~~444");
var mylocal_document = JSON.parse(res.data.message);
console.log(" ~~~5555");
if (mylocal_document.nom)
setp_detail_nom(mylocal_document.nom);
@ -591,6 +607,7 @@ const Config_Documents = (props) => {
document.getElementsByName("document_ref_interne")[0].value = "";
if (mylocal_document.ref_interne) {
setp_detail_ref_interne(mylocal_document.ref_interne);
@ -603,14 +620,17 @@ const Config_Documents = (props) => {
setone_field_programme("");
if (mylocal_document.contenu_doc) {
setone_field_programme(String(mylocal_document.contenu_doc));
setone_field_programme_initial_value(String(mylocal_document.contenu_doc));
setfield_programme(String(mylocal_document.contenu_doc));
setfield_programme_initial_value(String(mylocal_document.contenu_doc));
}
setone_field_corp_mail("");
if (mylocal_document.corps_mail) {
setone_field_programme(String(mylocal_document.corps_mail));
setone_field_programme_initial_value(String(mylocal_document.corps_mail));
set_field_corp_mail(String(mylocal_document.corps_mail));
set_field_corp_mail_initial_value(String(mylocal_document.corps_mail));
}
setp_detail_joint_pdf(false);
@ -691,6 +711,10 @@ const Config_Documents = (props) => {
if (res.data.message.length > 0) {
var mylocal_document = JSON.parse(res.data.message);
if (mylocal_document._id)
setoriginal_courrier_template_id(mylocal_document._id);
if (mylocal_document.nom)
setp_one_detail_nom(mylocal_document.nom);
@ -719,6 +743,13 @@ const Config_Documents = (props) => {
setp_one_detail_sujet(mylocal_document.sujet);
}
setp_detail_joint_pdf(false)
if (mylocal_document.joint_pdf) {
if (String(mylocal_document.joint_pdf) === "1")
setp_detail_joint_pdf(true)
}
if (mylocal_document.duplicate) {
setp_one_detail_duplicate(mylocal_document.duplicate);
@ -735,8 +766,8 @@ const Config_Documents = (props) => {
set_field_corp_mail("");
if (mylocal_document.corps_mail) {
set_field_corp_mail(String(mylocal_document.corps_mail));
set_field_corp_mail_initial_value(String(mylocal_document.corps_mail));
setone_field_corp_mail(String(mylocal_document.corps_mail));
setone_field_corp_mail_initial_value(String(mylocal_document.corps_mail));
}
@ -1029,6 +1060,14 @@ const Config_Documents = (props) => {
}
if (original_courrier_template_id)
form.append("original_courrier_template_id", original_courrier_template_id);
else {
form.append("original_courrier_template_id", "");
}
if (p_one_detail_cible)
form.append("cible", p_one_detail_cible);
else {
@ -1142,7 +1181,7 @@ const Config_Documents = (props) => {
setAdd_one_Partner_Document_api("true");
setAdd_one_Partner_Document_result(res.data.message);
setoriginal_courrier_template_id("");
clear_one_detail_fields();
setadd_one_document();
setdisplay_add_one_document();
@ -1519,6 +1558,62 @@ const Config_Documents = (props) => {
const [Getall_Partner_Document_With_filter_api, setGetall_Partner_Document_With_filter_api] = useState();
const [Getall_Partner_Document_With_filter_message, setGetall_Partner_Document_With_filter_message] = useState();
const [Getall_Partner_Document_With_filter_result, setGetall_Partner_Document_With_filter_result] = useState();
function Getall_Partner_Document_With_filter(event) {
var form = new FormData();
// Recuperation des parametres
var filtre1 = p_filtre1;
var filtre2 = p_filtre2;
var filtre1_value = "";
var filtre2_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);
}
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_List_Partner_Document_with_filter/";
setLoading(true);
axios.post(myurl, form).then(res => {
setLoading(false);
if (String(res.data.status) === String("true")) {
//console.log(" In Getall_Partner_Document_With_filter res.data.status = " + res.data.status);
//console.log(" In Getall_Partner_Document_With_filter res.data.message r_class = " + res.data.message);
setGetall_Partner_Document_With_filter_api("true");
setGetall_Partner_Document_With_filter_result(res.data.message);
setRows(res.data.message);
}
else {
setGetall_Partner_Document_With_filter_api("false");
setGetall_Partner_Document_With_filter_message(res.data.message);
alert(res.data.message);
}
}).catch((error) => {
setLoading(false);
console.warn('Not good man :( Getall_Partner_Document_With_filter = ', error);
setGetall_Partner_Document_With_filter_api("false");
alert(" Impossible de recuperer la liste des documents");
//setmyApimyApiMessage("")
})
}
const [Get_Given_Personnalisable_Fields_From_template_ID_api, setGet_Given_Personnalisable_Fields_From_template_ID_api] = useState();
const [Get_Given_Personnalisable_Fields_From_template_ID_message, setGet_Given_Personnalisable_Fields_From_template_ID_message] = useState();
const [Get_Given_Personnalisable_Fields_From_template_ID_result, setGet_Given_Personnalisable_Fields_From_template_ID_result] = useState();
@ -1658,6 +1753,10 @@ const Config_Documents = (props) => {
}
const [display_add_one_document, setdisplay_add_one_document] = React.useState();
const [original_courrier_template_id, setoriginal_courrier_template_id] = React.useState("");
function Get_And_Display_Selected_Document() {
setdisplay_add_one_document("1");
@ -1960,10 +2059,42 @@ const Config_Documents = (props) => {
}
function clean_all_filters() {
setp_filtre1("");
setp_filtre1_value("");
setp_filtre2("");
setp_filtre2_value("");
setp_filtre3("");
setp_filtre3_value("");
setp_filtre4("");
setp_filtre4_value("");
setgridline_id('');
setSelectionModel([]);
setsubmenu("");
Getall_Partner_Document_No_filter();
}
// end gestion pièces jointes
const [gridline_id, setgridline_id] = useState("");
const New_Option_Filter = [
{ "id": "nom", "label": "Nom Document", "value": "nom" },
{ "id": "ref_interne", "label": "Ref. Interne", "value": "ref_interne" },
{ "id": "", "label": "", "value": "" },
{ "id": "1", "label": "", "value": "1" }, // Cette ligne pour couvrir l'ajout d'une ligne de filter. C'est fait expres.
]
return (
<div className="config_document">
{isLoading && <div className="loader-container">
@ -2098,7 +2229,29 @@ const Config_Documents = (props) => {
<div className="titre1"> Utilisez les filtres !</div>
<div className="div_row" style={{ "marginBottom": "5px" }}>
<div className="div_row_gauche texte_area_filter" >
<TextField
{New_Option_Filter && New_Option_Filter.length > 0 && <Autocomplete
disablePortal
name="filtre1"
id="filtre1"
className="disabled_style"
value={New_Option_Filter.filter((data) => (data).value === String(p_filtre1))[0].label}
options={New_Option_Filter}
onChange={(event, value) => {
if (value && value.value) {
setp_filtre1(value.value);
}
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
}
/>}
{/*<TextField
name="filtre1"
label="Choisir un champ"
select
@ -2115,7 +2268,7 @@ const Config_Documents = (props) => {
<MenuItem value="session" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Lié a la Session (code session) &nbsp;</MenuItem>
</TextField>
</TextField>*/}
</div>
@ -2164,8 +2317,8 @@ const Config_Documents = (props) => {
<Tooltip className="tooltip_css" id="my-tooltip02" style={{ "fontSize": "12px" }} />
<a data-tooltip-id="my-tooltip02" data-tooltip-html="Supprimer cette ligne de filtre">
&nbsp; <MdRemoveCircleOutline onClick={(e) => {
setp_filtre1();
setp_filtre1_value();
setp_filtre1("");
setp_filtre1_value("");
}}
/>
</a>
@ -2177,7 +2330,31 @@ const Config_Documents = (props) => {
{p_filtre2 &&
<div className="div_row" style={{ "marginBottom": "5px" }}>
<div className="div_row_gauche texte_area_filter">
<TextField
{New_Option_Filter && New_Option_Filter.length > 0 && <Autocomplete
disablePortal
name="filtre2"
id="filtre2"
className="disabled_style"
value={New_Option_Filter.filter((data) => (data).value === String(p_filtre2))[0].label}
options={New_Option_Filter}
onChange={(event, value) => {
if (value && value.value) {
setp_filtre2(value.value);
}
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
}
/>}
{/*<TextField
name="filtre2"
label="Choisir un champ"
select
@ -2195,7 +2372,7 @@ const Config_Documents = (props) => {
<MenuItem value="session" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Lié a la Session (code session) &nbsp;</MenuItem>
</TextField>
</TextField>*/}
</div>
<div className="div_row_droite texte_area_filter_value" style={{ "marginTop": "0.5rem" }}>
{String(p_filtre2).length > 2 &&
@ -2255,92 +2432,17 @@ const Config_Documents = (props) => {
}
{p_filtre3 &&
<div className="div_row" style={{ "marginBottom": "5px" }}>
<div className="div_row_gauche texte_area_filter">
<TextField
name="filtre3"
label="Choisir un champ"
select
sx={{ m: 1, width: '100%' }}
value={p_filtre3}
onChange={(e) => {
setp_filtre3(e.target.value)
}}
>
<MenuItem value="email" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Email &nbsp;</MenuItem>
<MenuItem value="nom" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Nom &nbsp;</MenuItem>
<MenuItem value="formation" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Lié a la Formation (code externe) &nbsp;</MenuItem>
<MenuItem value="session" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Lié a la Session (code session) &nbsp;</MenuItem>
</TextField>
</div>
<div className="div_row_droite texte_area_filter_value" style={{ "marginTop": "0.5rem" }}>
{String(p_filtre3).length > 2 &&
<TextField
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
required
name="filtre3_value"
id="filtre3_value"
InputLabelProps={{
shrink: true,
}}
disabled={false}
className="disabled_style"
value={p_filtre3_value}
onChange={(e) => setp_filtre3_value(e.target.value)}
InputProps={{
endAdornment: (
<InputAdornment position="end">
<AiFillCloseCircle
style={{ 'cursor': "pointer", "color": "orangered" }}
onClick={(e) => {
setp_filtre3_value("");
}} />
</InputAdornment>
),
}}
/>}
</div>
{String(p_filtre2).length > 2 && <div className='filter_bton_add' >
<Tooltip className="tooltip_css" id="my-tooltip03" style={{ "fontSize": "12px" }} />
<a data-tooltip-id="my-tooltip03" data-tooltip-html="Ajouter une nouvelle ligne de filtre">
&nbsp; <MdAddCircleOutline
onClick={(e) => {
setp_filtre4("1");
setp_filtre4_value("");
}}
/>
</a>
</div>}
{String(p_filtre3).length > 2 && <div className='filter_bton_add'>
<Tooltip className="tooltip_css" id="my-tooltip05" style={{ "fontSize": "12px" }} />
<a data-tooltip-id="my-tooltip05" data-tooltip-html="Supprimer cette ligne de filtre">
&nbsp; <MdRemoveCircleOutline onClick={(e) => {
setp_filtre3();
setp_filtre3_value();
}} />
</a>
</div>}
</div>
}
<div className="div_row" ref={myRef_head} id="myRef_head" style={{ "border": "None", "color": "orange", "textAlign": "center" }}>
<div className="div_row_gauche" style={{ "textAlign": 'left', 'marginLeft': '15px' }}>
<Button variant="contained" className="bton_enreg" onClick={"Getall_Training_Employee"}>Rechercher
<Button variant="contained" className="bton_enreg" onClick={Getall_Partner_Document_With_filter}>Rechercher
</Button>
</div>
<div className="div_row_droite" style={{ "textAlign": 'right', 'marginRight': '15px' }}>
<Button variant="contained" className="bton_annule" onClick={"clean_all_filters"}>Annuler
<Button variant="contained" className="bton_annule" onClick={clean_all_filters}>Annuler
</Button>
</div>
@ -3125,9 +3227,9 @@ const Config_Documents = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
inputProps = {{...params.inputProps, style: { fontSize: 12, height:"1.4rem" }}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
/>
}
/>

View File

@ -7768,7 +7768,8 @@ const Employes = (props) => {
<Button variant="outlined" onClick={add_one_affectation_block}
className="detail_class_submenu bton_add_session"
id='menu_add_participant' name='menu_add_participant'>Ajout 1 affectation &nbsp;
<img src={add_plus} alt="ajout affectation" className="icon_plus" />
<IoAddCircleOutline style={{ "fontSize": "x-large", "color": "green" }} />
</Button>
<br />
@ -8551,7 +8552,7 @@ const Employes = (props) => {
}}
className="detail_class_submenu bton_add_session"
id='menu_import_participant' name='menu_import_participant'>Ajout 1 Contrat &nbsp;
<img src={add_plus} alt="ajout commande" className="icon_plus" />
<IoAddCircleOutline style={{ "fontSize": "x-large", "color": "green" }} />
</Button>
</div>
</div>

View File

@ -2431,7 +2431,6 @@ const Materiels = (props) => {
{ "id": "ref_interne", "label": "Ref. Interne", "value": "ref_interne" },
{ "id": "", "label": "", "value": "" },
{ "id": "1", "label": "", "value": "1" }, // Cette ligne pour couvrir l'ajout d'une ligne de filter. C'est fait expres.
]
return (
@ -2668,152 +2667,6 @@ const Materiels = (props) => {
}
{/*p_filtre3 &&
<div className="div_row" style={{ "marginBottom": "5px" }}>
<div className="div_row_gauche texte_area_filter">
<TextField
name="filtre3"
label="Choisir un champ"
select
sx={{ m: 1, width: '100%' }}
value={p_filtre3}
onChange={(e) => {
setp_filtre3(e.target.value)
}}
>
<MenuItem value="ref_interne" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Ref. Intenne &nbsp;</MenuItem>
<MenuItem value="nom" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Nom &nbsp;</MenuItem>
<MenuItem value="formation" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Lié a la Formation (code externe) &nbsp;</MenuItem>
<MenuItem value="session" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Lié a la Session (code session) &nbsp;</MenuItem>
<MenuItem value="employe_email" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Lié a l'employe (email) &nbsp;</MenuItem>
</TextField>
</div>
<div className="div_row_droite texte_area_filter_value" style={{ "marginTop": "0.5rem" }}>
{String(p_filtre3).length > 2 &&
<TextField
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
required
name="filtre3_value"
id="filtre3_value"
InputLabelProps={{
shrink: true,
}}
disabled={false}
className="disabled_style"
value={p_filtre3_value}
onChange={(e) => setp_filtre3_value(e.target.value)}
InputProps={{
endAdornment: (
<InputAdornment position="end">
<AiFillCloseCircle
style={{ 'cursor': "pointer", "color": "orangered" }}
onClick={(e) => {
setp_filtre3_value("");
}} />
</InputAdornment>
),
}}
/>}
</div>
{String(p_filtre2).length > 2 && <div className='filter_bton_add' >
<Tooltip className="tooltip_css" id="my-tooltip03" style={{ "fontSize": "12px" }} />
<a data-tooltip-id="my-tooltip03" data-tooltip-html="Ajouter une nouvelle ligne de filtre">
&nbsp; <MdAddCircleOutline
onClick={(e) => {
setp_filtre4("1");
setp_filtre4_value("");
}}
/>
</a>
</div>}
{String(p_filtre3).length > 2 && <div className='filter_bton_add'>
<Tooltip className="tooltip_css" id="my-tooltip05" style={{ "fontSize": "12px" }} />
<a data-tooltip-id="my-tooltip05" data-tooltip-html="Supprimer cette ligne de filtre">
&nbsp; <MdRemoveCircleOutline onClick={(e) => {
setp_filtre3();
setp_filtre3_value();
}} />
</a>
</div>}
</div>
*/}
{/*
{p_filtre4 &&
<div className="div_row" style={{ "marginBottom": "5px" }}>
<div className="div_row_gauche texte_area_filter">
<TextField
name="filtre4"
label="Choisir un champ"
select
sx={{ m: 1, width: '100%' }}
value={p_filtre4}
onChange={(e) => {
setp_filtre4(e.target.value)
}}
>
<MenuItem value="email" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Email &nbsp;</MenuItem>
<MenuItem value="nom" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Nom &nbsp;</MenuItem>
<MenuItem value="code_session" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }}>Code Session &nbsp;&nbsp;</MenuItem>
<MenuItem value="class_title" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Titre Formation &nbsp;</MenuItem>
</TextField>
</div>
<div className="div_row_droite texte_area_filter_value" style={{ "marginTop": "0.5rem" }}>
{String(p_filtre4).length > 2 &&
<TextField
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
required
name="filtre4_value"
id="filtre4_value"
InputLabelProps={{
shrink: true,
}}
disabled={false}
className="disabled_style"
value={p_filtre4_value}
onChange={(e) => setp_filtre2_value(e.target.value)}
InputProps={{
endAdornment: (
<InputAdornment position="end">
<AiFillCloseCircle
style={{ 'cursor': "pointer", "color": "orangered" }}
onClick={(e) => {
setp_filtre4_value("");
}} />
</InputAdornment>
),
}}
/>}
</div>
{String(p_filtre2).length > 2 && <div className='filter_bton_add'>
<Tooltip className="tooltip_css" id="my-tooltip04" style={{ "fontSize": "12px" }} />
<a data-tooltip-id="my-tooltip04" data-tooltip-html="Supprimer cette ligne de filtre">
&nbsp; <MdRemoveCircleOutline
onClick={(e) => {
setp_filtre4();
setp_filtre4_value();
}}
/>
</a>
</div>}
</div>
}
*/}
<div className="div_row" ref={myRef_head} id="myRef_head" style={{ "border": "None", "color": "orange", "textAlign": "center" }}>
<div className="div_row_gauche" style={{ "textAlign": 'left', 'marginLeft': '15px' }}>

View File

@ -49,6 +49,7 @@ import { RepeatOnRounded, RestaurantMenu } from "@mui/icons-material";
import { alignPropType } from "react-bootstrap/esm/types";
import ToggleSwitch from "./ToggleSwitch";
import { IoAddCircleOutline, IoCloseCircleOutline } from "react-icons/io5";
const Module_Absence = (props) => {
const myconntected_employee_id = props.conntected_employee_id;
@ -1500,7 +1501,7 @@ const [Get_Partner_Debut_Fin_Journee_api, setGet_Partner_Debut_Fin_Journee_api]
<Button variant="outlined" onClick={handleSelect_list}
className="detail_class_submenu bton_add_session"
id='menu_import_participant' name='menu_import_participant'>Ajout 1 event &nbsp;
<img src={add_plus} alt="ajout commande" className="icon_plus" />
<IoAddCircleOutline style={{ "fontSize": "x-large", "color": "green" }} />
</Button>
</div>
</div>

View File

@ -42,6 +42,7 @@ import { TransitionProps } from '@mui/material/transitions';
import img_loading_spin from "./../mysy_img/mysy_spin_loading.gif";
import { Global } from "recharts";
import { FcAddDatabase } from "react-icons/fc";
import { IoAddCircleOutline, IoCloseCircleOutline } from "react-icons/io5";
const Partner_Commande = (props) => {
@ -4199,13 +4200,14 @@ const Partner_Commande = (props) => {
<Button variant="outlined" onClick={submenu_add_one_order}
className="detail_class_submenu bton_add_session"
id='menu_import_participant' name='menu_import_participant'>Ajout 1 Commande &nbsp;
<img src={add_plus} alt="ajout commande" className="icon_plus" />
<IoAddCircleOutline style={{ "fontSize": "x-large", "color": "green" }} />
</Button>
<Button variant="outlined" onClick={submenu_add_one_quotation}
className="detail_class_submenu bton_add_session"
id='menu_import_participant' name='menu_import_participant'>Ajout 1 Devis &nbsp;
<img src={add_plus} alt="ajout devis" className="icon_plus" />
<IoAddCircleOutline style={{ "fontSize": "x-large", "color": "green" }} />
</Button>
<br />

View File

@ -39,7 +39,7 @@ import DialogContentText from '@mui/material/DialogContentText';
import DialogTitle from '@mui/material/DialogTitle';
import { TransitionProps } from '@mui/material/transitions';
import img_loading_spin from "./../mysy_img/mysy_spin_loading.gif";
import { IoAddCircleOutline, IoCloseCircleOutline } from "react-icons/io5";
const Partner_Configuration_Session_Steps = (props) => {
@ -732,7 +732,7 @@ const Partner_Configuration_Session_Steps = (props) => {
<Button variant="outlined" onClick={submenu_add_one_step}
className="detail_class_submenu bton_add_session"
id='menu_import_participant' name='menu_import_participant'>Ajout une étape &nbsp;
<img src={add_plus} alt="ajout commande" className="icon_plus" />
<IoAddCircleOutline style={{ "fontSize": "x-large", "color": "green" }} />
</Button>
</div>
</div>

View File

@ -1752,7 +1752,7 @@ const Partner_Configuration_Technique = (props) => {
<Button variant="outlined" onClick={"submenu_add_one_order"}
className="detail_class_submenu bton_add_session"
id='menu_import_participant' name='menu_import_participant'>Ajout 1 Point de configuration &nbsp;
<img src={add_plus} alt="ajout commande" className="icon_plus" />
<IoAddCircleOutline style={{ "fontSize": "x-large", "color": "green" }} />
</Button>
</div>*/}
</div>

View File

@ -34,7 +34,7 @@ import { CiTrash } from "react-icons/ci";
import { MdAddCircleOutline, MdRemoveCircleOutline } from "react-icons/md";
import img_loading_spin from "./../mysy_img/mysy_spin_loading.gif";
import { IoAddCircleOutline, IoCloseCircleOutline } from "react-icons/io5";
const Partner_Facture = (props) => {
@ -2468,7 +2468,9 @@ const Partner_Facture = (props) => {
<div style={{ "border": "None" }}>
<nav onClick={"Ajouter_une_ligne_article"} style={{ "fontSize": "18px", "fontWeight": '600', "marginLeft": "10px", "marginTop": "10px", "cursor": "pointer" }}> <Button> Ajouter une annotation
&nbsp;
</Button> <img src={add_plus} alt="ajout commande" className="icon_plus_line" /> </nav>
</Button>
<IoAddCircleOutline style={{ "fontSize": "x-large", "color": "green" }} />
</nav>
<div style={{ height: 550, width: '100%', paddingRight: '1px' }}>
&nbsp;
<Box

View File

@ -36,7 +36,7 @@ import { TransitionProps } from '@mui/material/transitions';
import img_loading_spin from "./../mysy_img/mysy_spin_loading.gif";
import { Global } from "recharts";
import { IoAddCircleOutline, IoCloseCircleOutline } from "react-icons/io5";
const Partner_Prix_Achat = (props) => {
const history = useHistory();
@ -856,7 +856,7 @@ const Partner_Prix_Achat = (props) => {
}}
className="detail_class_submenu bton_add_session"
id='menu_import_participant' name='menu_import_participant'>Ajout 1 Prix &nbsp;
<img src={add_plus} alt="ajout commande" className="icon_plus" />
<IoAddCircleOutline style={{ "fontSize": "x-large", "color": "green" }} />
</Button>
</div>
</div>

View File

@ -242,12 +242,14 @@
background: #c8cfd5;
color: black;
width: 100%;
height: 2rem !important;
}
.bton_import_excel {
background: #c8cfd5;
color: black;
width: 100% !important;
height: 2rem !important;
}
.div_row_gauche_etendu {
@ -812,12 +814,14 @@
background: #c8cfd5;
color: black;
width: 50%;
height: 2rem !important;
}
.bton_import_excel {
background: #c8cfd5;
color: black;
width: 65% !important;
height: 2rem !important;
}
.div_row_gauche_etendu {
@ -1423,12 +1427,14 @@
background: #c8cfd5;
color: black;
width: 50%;
height: 2rem !important;
}
.bton_import_excel {
background: #c8cfd5;
color: black;
width: 50% !important;
height: 2rem !important;
}
.div_row_gauche_etendu {
@ -1917,12 +1923,14 @@
color: black;
width: 40% !important;
margin-left: 10px;
height: 2rem !important;
}
.bton_import_excel {
background: #c8cfd5;
color: black;
width: 40% !important;
height: 2rem !important;
}
.div_row_gauche_etendu {

View File

@ -258,14 +258,14 @@
background: #c8cfd5;
color: black;
width: 100%;
height: 2 rem !important;
height: 2rem !important;
}
.bton_add_sous_menu {
background: #c8cfd5;
color: black;
width: 100%;
height: 2 rem !important;
height: 2rem !important;
}
.bton_put_to_invoice {
@ -837,14 +837,14 @@
background: #c8cfd5;
color: black;
width: 50%;
height: 2 rem !important;
height: 2rem !important;
}
.bton_add_sous_menu {
background: #c8cfd5;
color: black;
width: 100%;
height: 2 rem !important;
height: 2rem !important;
}
.bton_put_to_invoice {
@ -1444,14 +1444,14 @@
background: #c8cfd5;
color: black;
width: 40%;
height: 2 rem !important;
height: 2rem !important;
}
.bton_add_sous_menu {
background: #c8cfd5;
color: black;
width: 100%;
height: 2 rem !important;
height: 2rem !important;
}
.bton_put_to_invoice {
@ -1967,14 +1967,14 @@
background: #c8cfd5;
color: black;
width: 25% !important;
height: 2 rem !important;
height: 2rem !important;
}
.bton_add_sous_menu {
background: #c8cfd5;
color: black;
width: 25% !important;
height: 2 rem !important;
height: 2rem !important;
}
.bton_put_to_invoice {