03/02/2024 - 21h
parent
7aa48086cd
commit
712deda0c4
|
@ -24,6 +24,8 @@ import Popup from 'reactjs-popup';
|
|||
import 'reactjs-popup/dist/index.css';
|
||||
import ToggleSwitch from "./ToggleSwitch";
|
||||
import { FcSpeaker } from "react-icons/fc";
|
||||
import Autocomplete from '@mui/material/Autocomplete';
|
||||
|
||||
|
||||
const AddParnerClient = (props) => {
|
||||
const history = useHistory();
|
||||
|
@ -104,6 +106,7 @@ const AddParnerClient = (props) => {
|
|||
Enable_fields();
|
||||
}
|
||||
|
||||
/*
|
||||
document.getElementById("submenu_factures").style.background = "#d8edfc";
|
||||
document.getElementById("submenu_factures").style.color = "#3b3e40";
|
||||
|
||||
|
@ -116,6 +119,7 @@ const AddParnerClient = (props) => {
|
|||
document.getElementById("submenu_cmd").style.background = "#d8edfc";
|
||||
document.getElementById("submenu_cmd").style.color = "#3b3e40";
|
||||
|
||||
*/
|
||||
document.getElementById("submenu_contact").style.background = "#d8edfc";
|
||||
document.getElementById("submenu_contact").style.color = "#3b3e40";
|
||||
|
||||
|
@ -148,7 +152,7 @@ const AddParnerClient = (props) => {
|
|||
Enable_invoice_fields();
|
||||
}
|
||||
|
||||
document.getElementById("submenu_factures").style.background = "#d8edfc";
|
||||
/*document.getElementById("submenu_factures").style.background = "#d8edfc";
|
||||
document.getElementById("submenu_factures").style.color = "#3b3e40";
|
||||
|
||||
document.getElementById("submenu_stagiaires").style.background = "#d8edfc";
|
||||
|
@ -159,6 +163,7 @@ const AddParnerClient = (props) => {
|
|||
|
||||
document.getElementById("submenu_cmd").style.background = "#d8edfc";
|
||||
document.getElementById("submenu_cmd").style.color = "#3b3e40";
|
||||
*/
|
||||
|
||||
document.getElementById("submenu_contact").style.background = "#d8edfc";
|
||||
document.getElementById("submenu_contact").style.color = "#3b3e40";
|
||||
|
@ -191,6 +196,7 @@ const AddParnerClient = (props) => {
|
|||
Enable_invoice_fields();
|
||||
}*/
|
||||
|
||||
/*
|
||||
document.getElementById("submenu_factures").style.background = "#d8edfc";
|
||||
document.getElementById("submenu_factures").style.color = "#3b3e40";
|
||||
|
||||
|
@ -202,6 +208,7 @@ const AddParnerClient = (props) => {
|
|||
|
||||
document.getElementById("submenu_cmd").style.background = "#d8edfc";
|
||||
document.getElementById("submenu_cmd").style.color = "#3b3e40";
|
||||
*/
|
||||
|
||||
document.getElementById("submenu_donnee_facturation").style.background = "#d8edfc";
|
||||
document.getElementById("submenu_donnee_facturation").style.color = "#3b3e40";
|
||||
|
@ -234,6 +241,7 @@ const AddParnerClient = (props) => {
|
|||
//Enable_invoice_fields();
|
||||
}
|
||||
|
||||
/*
|
||||
document.getElementById("submenu_factures").style.background = "#d8edfc";
|
||||
document.getElementById("submenu_factures").style.color = "#3b3e40";
|
||||
|
||||
|
@ -245,6 +253,7 @@ const AddParnerClient = (props) => {
|
|||
|
||||
document.getElementById("submenu_cmd").style.background = "#d8edfc";
|
||||
document.getElementById("submenu_cmd").style.color = "#3b3e40";
|
||||
*/
|
||||
|
||||
document.getElementById("submenu_donnee_facturation").style.background = "#d8edfc";
|
||||
document.getElementById("submenu_donnee_facturation").style.color = "#3b3e40";
|
||||
|
@ -387,6 +396,8 @@ const AddParnerClient = (props) => {
|
|||
setis_contact_include_com(false);
|
||||
}
|
||||
|
||||
const [New_Get_List_Client_Type_result, setNew_Get_List_Client_Type_result] = useState([]);
|
||||
|
||||
const [Get_List_Client_Type_api, setGet_List_Client_Type_api] = useState();
|
||||
const [Get_List_Client_Type_message, setGet_List_Client_Type_message] = useState();
|
||||
const [Get_List_Client_Type_result, setGet_List_Client_Type_result] = useState();
|
||||
|
@ -409,6 +420,30 @@ const AddParnerClient = (props) => {
|
|||
setGet_List_Client_Type_api("true");
|
||||
setGet_List_Client_Type_result(res.data.message);
|
||||
|
||||
var new_data2 = [];
|
||||
const new_data = res.data.message.map((x) => {
|
||||
|
||||
//---
|
||||
var localid = JSON.parse(x).id;
|
||||
var local_id = JSON.parse(x)._id;
|
||||
var local_code = JSON.parse(x).code;
|
||||
|
||||
|
||||
//---
|
||||
var node = {
|
||||
"_id": local_id,
|
||||
"id": localid,
|
||||
"label": local_code,
|
||||
"code": local_code,
|
||||
|
||||
};
|
||||
new_data2.push(node);
|
||||
});
|
||||
|
||||
if (new_data2.length > 0)
|
||||
setNew_Get_List_Client_Type_result(new_data2);
|
||||
|
||||
|
||||
}
|
||||
else if (String(res.data.status) === String("Err_Connexion")) {
|
||||
alert('Erreur: ' + res.data.message);
|
||||
|
@ -1439,8 +1474,8 @@ const AddParnerClient = (props) => {
|
|||
|
||||
axios.post(myurl, form).then(res => {
|
||||
if (String(res.data.status) === String("true")) {
|
||||
console.log(" In recordPartnerClient res.data.status = " + res.data.status);
|
||||
console.log(" In recordPartnerClient res.data.message = " + res.data.message);
|
||||
//console.log(" In recordPartnerClient res.data.status = " + res.data.status);
|
||||
//console.log(" In recordPartnerClient res.data.message = " + res.data.message);
|
||||
setrecordPartnerClient_api("true");
|
||||
setrecordPartnerClient_result(res.data.message);
|
||||
setformedit_mode("0");
|
||||
|
@ -1541,7 +1576,7 @@ const AddParnerClient = (props) => {
|
|||
}
|
||||
form.append("invoice_pays", client_invoice_pays);
|
||||
|
||||
|
||||
form.append("_id", props.client_id);
|
||||
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Update_Partner_Client/";
|
||||
|
||||
|
@ -2173,6 +2208,12 @@ const AddParnerClient = (props) => {
|
|||
}
|
||||
const [is_contact_include_com, setis_contact_include_com] = useState(false);
|
||||
|
||||
const New_civilite = [
|
||||
{ "id": "Mme", "label": "Mme", "value": "Mme" },
|
||||
{ "id": "M", "label": "M", "value": "M" },
|
||||
{ "id": "Neutre", "label": "Neutre", "value": "Neutre" },
|
||||
]
|
||||
|
||||
return (
|
||||
<div className="add_partner_client">
|
||||
|
||||
|
@ -2217,7 +2258,28 @@ const AddParnerClient = (props) => {
|
|||
|
||||
|
||||
<div className="session_caract"> Type client <br />
|
||||
<TextField
|
||||
|
||||
<Autocomplete
|
||||
disablePortal
|
||||
name="client_type_id"
|
||||
id="client_type_id"
|
||||
className="disabled_style"
|
||||
options={New_Get_List_Client_Type_result}
|
||||
onChange={(event, value) => {
|
||||
if (value && value._id) {
|
||||
setp_client_type_id(value._id);
|
||||
|
||||
|
||||
}
|
||||
}}
|
||||
//value={p_one_detail_client_rattachement_nom}
|
||||
|
||||
renderInput={(params) => <TextField {...params} label="" />
|
||||
}
|
||||
/>
|
||||
|
||||
|
||||
{/* <TextField
|
||||
required
|
||||
name="client_type_id"
|
||||
id="client_type_id"
|
||||
|
@ -2247,7 +2309,7 @@ const AddParnerClient = (props) => {
|
|||
))}
|
||||
|
||||
|
||||
</TextField>
|
||||
</TextField>*/}
|
||||
</div>
|
||||
|
||||
<div className="session_caract"> N° Siret <br />
|
||||
|
@ -2452,10 +2514,10 @@ const AddParnerClient = (props) => {
|
|||
<Button variant="outlined" onClick={submenu_donnee_facturation} className="detail_submenu" id='submenu_donnee_facturation' name='submenu_donnee_facturation'>Données Facturation</Button>
|
||||
<Button variant="outlined" onClick={submenu_contact} className="detail_submenu" id='submenu_contact' name='submenu_contact'>Contact & Adresses</Button>
|
||||
<Button variant="outlined" onClick={submenu_activite} className="detail_submenu" id='submenu_activite' name='submenu_activite'>Activité</Button>
|
||||
<Button variant="outlined" onClick={submenu_devis} className="detail_submenu" id='submenu_devis' name='submenu_devis'>Devis</Button>
|
||||
{/* <Button variant="outlined" onClick={submenu_devis} className="detail_submenu" id='submenu_devis' name='submenu_devis'>Devis</Button>
|
||||
<Button variant="outlined" onClick={submenu_cmd} className="detail_submenu" id='submenu_cmd' name='submenu_cmd'>Commandes</Button>
|
||||
<Button variant="outlined" onClick={submenu_factures} className="detail_submenu" id='submenu_factures' name='submenu_factures'>Factures</Button>
|
||||
<Button variant="outlined" onClick={submenu_stagiaires} className="detail_submenu" id='submenu_stagiaires' name='submenu_stagiaires'>Stagiaires</Button>
|
||||
<Button variant="outlined" onClick={submenu_stagiaires} className="detail_submenu" id='submenu_stagiaires' name='submenu_stagiaires'>Stagiaires</Button>*/}
|
||||
</div>
|
||||
|
||||
{String(submenu).trim() === "submenu_donnee_client" && <div className="training_data" onChange={DataUpdated}>
|
||||
|
@ -2975,7 +3037,24 @@ const AddParnerClient = (props) => {
|
|||
|
||||
{String(formedit_mode_contact) === "1" && <div className="session_caract">
|
||||
Civilité <br />
|
||||
<TextField
|
||||
|
||||
<Autocomplete
|
||||
disablePortal
|
||||
name="contact_civilite"
|
||||
id="contact_civilite"
|
||||
className="disabled_style enable_style"
|
||||
|
||||
options={New_civilite}
|
||||
onChange={(event, value) => {
|
||||
if (value && value.value) {
|
||||
setp_contact_civilite(value.value);
|
||||
}
|
||||
}}
|
||||
renderInput={(params) => <TextField {...params} label="" />
|
||||
}
|
||||
/>
|
||||
|
||||
{/*<TextField
|
||||
required
|
||||
name="contact_civilite"
|
||||
//label="Civilité"
|
||||
|
@ -2994,7 +3073,7 @@ const AddParnerClient = (props) => {
|
|||
<MenuItem value="Neutre" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }}>Neutre </MenuItem>
|
||||
|
||||
|
||||
</TextField>
|
||||
</TextField>*/}
|
||||
</div>}
|
||||
|
||||
{String(formedit_mode_contact) !== "1" && <div className="session_caract">
|
||||
|
|
|
@ -101,11 +101,11 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
{ field: 'civilite', headerName: 'Civ.', minWidth: 70, flex: 1, maxWidth: 100, hide: false, editable: false, editable: false },
|
||||
|
||||
{ field: 'nom', headerName: 'Nom', minWidth: 200, flex: 1, hide: false, editable: false, editable: false, renderCell: (params) => <ExpandableCell_50 {...params} />, },
|
||||
{ field: 'prenom', headerName: 'Prénom', minWidth: 200, flex: 1, hide: false, editable: false, renderCell: (params) => <ExpandableCell_50 {...params} />, },
|
||||
{ field: 'email', headerName: 'Email', minWidth: 250, flex: 1, hideable: false, editable: false, renderCell: (params) => <ExpandableCell_50 {...params} />, },
|
||||
{ field: 'nom', headerName: 'Nom', minWidth: 200, flex: 1, hide: false, editable: false, editable: false, renderCell: (params) => <ExpandableCell_50 {...params} />, },
|
||||
{ field: 'prenom', headerName: 'Prénom', minWidth: 200, flex: 1, hide: false, editable: false, renderCell: (params) => <ExpandableCell_50 {...params} />, },
|
||||
{ field: 'email', headerName: 'Email', minWidth: 250, flex: 1, hideable: false, editable: false, renderCell: (params) => <ExpandableCell_50 {...params} />, },
|
||||
{ field: 'employeur', headerName: 'Employeur', minWidth: 200, hide: true, editable: false },
|
||||
{ field: 'client_nom', headerName: 'Client', minWidth: 200, flex: 1, hide: false, editable: false , renderCell: (params) => <ExpandableCell_50 {...params} />,},
|
||||
{ field: 'client_nom', headerName: 'Client', minWidth: 200, flex: 1, hide: false, editable: false, renderCell: (params) => <ExpandableCell_50 {...params} />, },
|
||||
{
|
||||
field: 'status', headerName: 'Statut', hide: false, width: datagrid_columns_size_model2,
|
||||
valueFormatter: (params) => {
|
||||
|
@ -2159,7 +2159,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
}
|
||||
|
||||
|
||||
const [New_Getall_TrainingSession_result, setNew_Getall_TrainingSession_result] = useState();
|
||||
const [New_Getall_TrainingSession_result, setNew_Getall_TrainingSession_result] = useState([]);
|
||||
|
||||
const [Getall_TrainingSession_api, setGetall_TrainingSession_api] = useState();
|
||||
const [Getall_TrainingSession_message, setGetall_TrainingSession_message] = useState();
|
||||
|
@ -2212,10 +2212,11 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
});
|
||||
|
||||
|
||||
if (new_data2.length > 0)
|
||||
if (new_data2.length > 0) {
|
||||
setNew_Getall_TrainingSession_result(new_data2);
|
||||
|
||||
//console.log(" ### new_data2 = ", new_data2)
|
||||
console.log(" ### new_data2 = ", new_data2);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
@ -2269,8 +2270,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}, [])
|
||||
|
||||
const [addOneParticipant, setaddOneParticipant] = useState("");
|
||||
|
@ -2441,8 +2441,10 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
}
|
||||
|
||||
|
||||
if (mylocalattendee.code_session)
|
||||
if (mylocalattendee.code_session){
|
||||
setp_detail_session_class(mylocalattendee.code_session);
|
||||
setworking_session_code(mylocalattendee.code_session);
|
||||
}
|
||||
|
||||
if (mylocalattendee.session_id)
|
||||
setp_detail_session_class_id(mylocalattendee.session_id);
|
||||
|
@ -3060,8 +3062,8 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
var form = new FormData();
|
||||
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
if (p_detail_session_class.length <= 0) {
|
||||
alert(" Vous devez choisir une session");
|
||||
return;
|
||||
|
@ -4959,6 +4961,9 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
}
|
||||
|
||||
|
||||
const [working_session_code, setworking_session_code] = useState("");
|
||||
|
||||
const [Send_Stagiaire_Conventions_By_Email_Test_api, setSend_Stagiaire_Conventions_By_Email_Test_api] = useState();
|
||||
const [Send_Stagiaire_Conventions_By_Email_Test_message, setSend_Stagiaire_Conventions_By_Email_Test_message] = useState();
|
||||
const [Send_Stagiaire_Conventions_By_Email_Test_result, setSend_Stagiaire_Conventions_By_Email_Test_result] = useState();
|
||||
|
@ -5207,7 +5212,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
]
|
||||
|
||||
|
||||
|
||||
return (
|
||||
<div className="displaypartnerstagiaire">
|
||||
{isLoading && <div className="loader-container">
|
||||
|
@ -7482,9 +7487,37 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
</div>}
|
||||
|
||||
|
||||
|
||||
{String(participant_data_edit_mode) === "1" && <div className="session_caract"> <b> Session </b> <br />
|
||||
<TextField
|
||||
|
||||
<Autocomplete
|
||||
disablePortal
|
||||
name="detail_session_class"
|
||||
id="detail_session_class"
|
||||
className="disabled_style"
|
||||
|
||||
options={New_Getall_TrainingSession_result}
|
||||
value={New_Getall_TrainingSession_result.filter((data) => (data).label === String(working_session_code))[0].label}
|
||||
onChange={(event, value) => {
|
||||
if (value && value._id) {
|
||||
|
||||
setworking_session_code(value.label);
|
||||
setp_detail_session_class(value._id);
|
||||
setparticipant_data_changed("1");
|
||||
setp_detail_session_class_id(value._id);
|
||||
Dialog_1_handle_change_participant_session(" Attention, vous allez modifier la session d'affectation du participant");
|
||||
var xx = New_Getall_TrainingSession_result.filter((data) => (data).label === String(working_session_code))[0].label;
|
||||
console.log(" xx == ", xx);
|
||||
|
||||
}
|
||||
|
||||
}}
|
||||
|
||||
renderInput={(params) => <TextField {...params} label="" />
|
||||
}
|
||||
/>
|
||||
|
||||
{/*<TextField
|
||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
||||
required
|
||||
name="detail_session_class"
|
||||
|
@ -7513,7 +7546,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
</MenuItem>
|
||||
))}
|
||||
</TextField>
|
||||
</TextField>*/}
|
||||
</div>}
|
||||
|
||||
|
||||
|
|
|
@ -395,9 +395,9 @@ const DistplayPartnerTraningsPage = (props) => {
|
|||
{ field: 'zone_diffusion', headerName: 'zone_diffusion', hide: true, maxWidth: 1, editable: false, },
|
||||
{ field: 'internal_url', headerName: 'internal_url', hide: true, editable: false, },
|
||||
{ field: 'external_code', headerName: 'Code Formation', hideable: false, minWidth: 150, flex: 1, maxWidth: 250, editable: false, renderCell: (params) => <ExpandableCell_50 {...params} />, },
|
||||
{ field: 'title', headerName: 'Titre', hideable: false, minWidth: 300, flex: 1, editable: false, renderCell: (params) => <ExpandableCell_50 {...params} />, },
|
||||
{ field: 'domain', headerName: 'Domaine', minWidth: 50, flex: 1, maxWidth: 150, hideable: true, editable: false, renderCell: (params) => <ExpandableCell_50 {...params} />, },
|
||||
{ field: 'metier', headerName: 'Métier', minWidth: 50, flex: 1, maxWidth: 150, hideable: true, hide: true, editable: false, renderCell: (params) => <ExpandableCell_50 {...params} />, },
|
||||
{ field: 'title', headerName: 'Titre', hideable: false, minWidth: 300, flex: 1, editable: false, renderCell: (params) => <Display_Colunm_text {...params} />, },
|
||||
{ field: 'domain', headerName: 'Domaine', minWidth: 50, flex: 1, maxWidth: 150, hideable: true, editable: false, renderCell: (params) => <Display_Colunm_text {...params} />, },
|
||||
{ field: 'metier', headerName: 'Métier', minWidth: 50, flex: 1, maxWidth: 150, hideable: true, hide: true, editable: false, renderCell: (params) => <Display_Colunm_text {...params} />, },
|
||||
{ field: 'nb_session_formation', headerName: 'Nb Session', minWidth: 50, flex: 1, maxWidth: 100, hideable: true, hide: false, editable: false, align: "center", renderCell: (params) => <Display_Colunm_text {...params} />, },
|
||||
{ field: 'url', headerName: 'lien', minWidth: 20, hideable: true, hide: true, editable: false, },
|
||||
{ field: 'description', headerName: 'Description', hide: true, resizable: true, minWidth: 250, maxWidth: 300, flex: 1, renderCell: (params) => <ExpandableCell_50 {...params} />, },
|
||||
|
|
|
@ -4825,7 +4825,7 @@ const Employes = (props) => {
|
|||
}
|
||||
}
|
||||
/>
|
||||
<Button onClick={Generate_Pwd} className="bton_enreg_dialog" style={{ "width": "100%", "margin": "0px", "background": "orange" }}>Generer automatiquement un mot de passe <LiaDharmachakraSolid style={{ "fontSize": "medium" }} /> </Button>
|
||||
<Button onClick={Generate_Pwd} className="bton_enreg_dialog" style={{ "width": "100%", "margin": "0px", "background": "orange" }}>Générer automatiquement un mot de passe <LiaDharmachakraSolid style={{ "fontSize": "medium" }} /> </Button>
|
||||
</div>
|
||||
|
||||
|
||||
|
|
|
@ -30,7 +30,7 @@ import SendIcon from '@mui/icons-material/Send';
|
|||
import { IoAddCircleOutline, IoCloseCircleOutline } from "react-icons/io5";
|
||||
import Rating from '@mui/material/Rating';
|
||||
import parse from 'html-react-parser'
|
||||
|
||||
import Autocomplete from '@mui/material/Autocomplete';
|
||||
|
||||
|
||||
function Inscription_Information(props) {
|
||||
|
@ -40,6 +40,12 @@ function Inscription_Information(props) {
|
|||
const [class_internal_url, setclass_internal_url] = useState(props.internal_url);
|
||||
;
|
||||
|
||||
const New_civilite = [
|
||||
{ "id": "Mme", "label": "Mme", "value": "Mme" },
|
||||
{ "id": "M", "label": "M", "value": "M" },
|
||||
{ "id": "Neutre", "label": "Neutre", "value": "Neutre" },
|
||||
]
|
||||
|
||||
const modefinancement = [
|
||||
{
|
||||
value: 'cpf',
|
||||
|
@ -114,6 +120,13 @@ function Inscription_Information(props) {
|
|||
return;
|
||||
}
|
||||
|
||||
|
||||
var civilite = civilite_stagiaire
|
||||
if (String(civilite).trim().length <= 0) {
|
||||
civilite = "Neutre"
|
||||
}
|
||||
|
||||
|
||||
var prenom = document.getElementsByName("prenom")[0].value;
|
||||
if (String(prenom).trim().length <= 0) {
|
||||
document.getElementsByName("telephone")[0].style.borderColor = "red";
|
||||
|
@ -168,6 +181,7 @@ function Inscription_Information(props) {
|
|||
|
||||
// var class_internal_url = document.getElementsByName("adr_country")[0].value;
|
||||
|
||||
formData.append('civilite', civilite);
|
||||
formData.append('nom', nom);
|
||||
formData.append('employeur', employeur);
|
||||
formData.append('prenom', prenom);
|
||||
|
@ -210,6 +224,10 @@ function Inscription_Information(props) {
|
|||
setRecordData_status(result['status']);
|
||||
setRecordData_message(result['message']);
|
||||
|
||||
if (String(result['status']) === "true") {
|
||||
alert("Votre demande d'inscription a bien été prise en compte. Vous allez recevoir une email de confirmation dans votre boite email. Merci.");
|
||||
}
|
||||
|
||||
})
|
||||
.catch((error) => {
|
||||
console.error('Error:', error);
|
||||
|
@ -787,7 +805,7 @@ function Inscription_Information(props) {
|
|||
}
|
||||
// -- end champs specifiques
|
||||
|
||||
|
||||
const [civilite_stagiaire, setcivilite_stagiaire] = useState("");
|
||||
|
||||
return (
|
||||
<div className='inscription'>
|
||||
|
@ -874,6 +892,52 @@ function Inscription_Information(props) {
|
|||
{mysession &&
|
||||
<Box alignItems="left" sx={{ '& > :not(style)': { m: 1 }, width: '100%', }}>
|
||||
|
||||
<Autocomplete
|
||||
required
|
||||
disablePortal
|
||||
name="civilite"
|
||||
id="civilite"
|
||||
className="texte_area"
|
||||
sx={{ m: 1, width: '48%' }}
|
||||
|
||||
options={New_civilite}
|
||||
onChange={(event, value) => {
|
||||
|
||||
if (value && value.value) {
|
||||
setcivilite_stagiaire(value.value);
|
||||
}
|
||||
|
||||
}}
|
||||
renderInput={(params) => <TextField
|
||||
{...params}
|
||||
|
||||
variant="standard"
|
||||
label="Civilité"
|
||||
placeholder="Civilité"
|
||||
required
|
||||
/>
|
||||
|
||||
|
||||
}
|
||||
|
||||
/>
|
||||
|
||||
{/* <TextField
|
||||
required
|
||||
label="Civilité"
|
||||
name="civilite"
|
||||
className="texte_area"
|
||||
sx={{ m: 1, width: '48%' }}
|
||||
select
|
||||
variant="standard"
|
||||
>
|
||||
<MenuItem value="Mme" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }}>Mme.; </MenuItem>
|
||||
<MenuItem value="M" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >M. </MenuItem>
|
||||
<MenuItem value="Neutre" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Neutre </MenuItem>
|
||||
|
||||
|
||||
</TextField>*/}
|
||||
|
||||
<TextField
|
||||
required
|
||||
label="Nom"
|
||||
|
|
|
@ -27,7 +27,7 @@ import { format } from 'date-fns'
|
|||
import moment from "moment";
|
||||
import 'react-tooltip/dist/react-tooltip.css'
|
||||
import { Tooltip } from 'react-tooltip'
|
||||
|
||||
import Autocomplete from '@mui/material/Autocomplete';
|
||||
import GestionAdministrative from "./GestionAdministrative";
|
||||
import { IoMdAddCircle, IoIosRemoveCircleOutline } from "react-icons/io";
|
||||
import { Fab } from "@material-ui/core";
|
||||
|
@ -117,30 +117,37 @@ const PartnerClientActivite = (props) => {
|
|||
|
||||
const type_activite_list = [
|
||||
{
|
||||
id: 'email',
|
||||
value: 'email',
|
||||
label: 'Email',
|
||||
},
|
||||
{
|
||||
id: 'call',
|
||||
value: 'call',
|
||||
label: 'Appel',
|
||||
},
|
||||
{
|
||||
id: 'meeting',
|
||||
value: 'meeting',
|
||||
label: 'Réunion',
|
||||
},
|
||||
{
|
||||
id: 'autre',
|
||||
value: 'autre',
|
||||
label: 'Autre',
|
||||
},
|
||||
{
|
||||
id: 'cmd',
|
||||
value: 'cmd',
|
||||
label: 'commande',
|
||||
},
|
||||
{
|
||||
id: 'devis',
|
||||
value: 'devis',
|
||||
label: 'devis',
|
||||
},
|
||||
{
|
||||
id: 'facture',
|
||||
value: 'facture',
|
||||
label: 'facture',
|
||||
},
|
||||
|
@ -149,14 +156,17 @@ const PartnerClientActivite = (props) => {
|
|||
|
||||
const activite_status_list = [
|
||||
{
|
||||
id: '0',
|
||||
value: '0',
|
||||
label: 'encours',
|
||||
},
|
||||
{
|
||||
id: '1',
|
||||
value: '1',
|
||||
label: 'Fait',
|
||||
},
|
||||
{
|
||||
id: '-1',
|
||||
value: '-1',
|
||||
label: 'annulé',
|
||||
},
|
||||
|
@ -229,6 +239,8 @@ const PartnerClientActivite = (props) => {
|
|||
|
||||
}, []);
|
||||
|
||||
const [New_Getall_Training_Employee_No_Filter_result, setNew_Getall_Training_Employee_No_Filter_result] = useState([]);
|
||||
|
||||
const [Getall_Training_Employee_No_Filter_api, setGetall_Training_Employee_No_Filter_api] = useState();
|
||||
const [Getall_Training_Employee_No_Filter_message, setGetall_Training_Employee_No_Filter_message] = useState();
|
||||
const [Getall_Training_Employee_No_Filter_result, setGetall_Training_Employee_No_Filter_result] = useState();
|
||||
|
@ -251,6 +263,33 @@ const PartnerClientActivite = (props) => {
|
|||
//console.log(" In Getall_Training_Employee_No_Filter res.data.message r_class = " + res.data.message);
|
||||
setGetall_Training_Employee_No_Filter_api("true");
|
||||
setGetall_Training_Employee_No_Filter_result(res.data.message);
|
||||
|
||||
var new_data2 = [];
|
||||
const new_data = res.data.message.map((x) => {
|
||||
|
||||
//---
|
||||
var localid = JSON.parse(x).id;
|
||||
var local_id = JSON.parse(x)._id;
|
||||
var local_nom = JSON.parse(x).nom;
|
||||
var local_prenom = JSON.parse(x).prenom;
|
||||
var local_ismanager = JSON.parse(x).ismanager;
|
||||
|
||||
|
||||
//---
|
||||
var node = {
|
||||
"_id": local_id,
|
||||
"id": localid,
|
||||
"label": local_nom + " " + local_prenom,
|
||||
"nom": local_nom,
|
||||
"prenom": local_prenom,
|
||||
"ismanager": local_ismanager
|
||||
};
|
||||
new_data2.push(node);
|
||||
});
|
||||
|
||||
if (new_data2.length > 0)
|
||||
setNew_Getall_Training_Employee_No_Filter_result(new_data2);
|
||||
|
||||
}
|
||||
else {
|
||||
setGetall_Training_Employee_No_Filter_api("false");
|
||||
|
@ -856,7 +895,26 @@ const PartnerClientActivite = (props) => {
|
|||
|
||||
{String(formedit_mode_activite) === "1" && <div className="training_caract">
|
||||
Type d'activité <br />
|
||||
<TextField
|
||||
|
||||
<Autocomplete
|
||||
disablePortal
|
||||
name="activite_type"
|
||||
id="activite_type"
|
||||
className="disabled_style"
|
||||
|
||||
options={type_activite_list}
|
||||
value={type_activite_list.filter((data) => (data).id === String(p_activite_type))[0].label}
|
||||
onChange={(event, value) => {
|
||||
if (value && value.value) {
|
||||
setp_activite_type(value.value);
|
||||
}
|
||||
}}
|
||||
renderInput={(params) => <TextField {...params} label="" />
|
||||
}
|
||||
/>
|
||||
|
||||
|
||||
{/*<TextField
|
||||
required
|
||||
select
|
||||
name="activite_type"
|
||||
|
@ -869,12 +927,12 @@ const PartnerClientActivite = (props) => {
|
|||
value={p_activite_type}
|
||||
onChange={(e) => setp_activite_type(e.target.value)} >
|
||||
{type_activite_list.map((option) => (
|
||||
<MenuItem key={option.value} value={option.value}
|
||||
style={{"width":"100%", "paddingLeft":"5px"}}>
|
||||
<MenuItem key={option.value} value={option.value}
|
||||
style={{ "width": "100%", "paddingLeft": "5px" }}>
|
||||
{option.label} <br />
|
||||
</MenuItem>
|
||||
))}
|
||||
</TextField>
|
||||
</TextField>*/}
|
||||
|
||||
</div>}
|
||||
|
||||
|
@ -898,7 +956,26 @@ const PartnerClientActivite = (props) => {
|
|||
|
||||
{String(formedit_mode_activite) === "1" && <div className="training_caract">
|
||||
Statut <br />
|
||||
<TextField
|
||||
|
||||
<Autocomplete
|
||||
disablePortal
|
||||
name="activite_status"
|
||||
id="activite_status"
|
||||
className="disabled_style"
|
||||
|
||||
options={activite_status_list}
|
||||
value={activite_status_list.filter((data) => (data).id === String(p_activite_status))[0].label}
|
||||
onChange={(event, value) => {
|
||||
if (value && value.value) {
|
||||
setp_activite_status(value.value);
|
||||
}
|
||||
}}
|
||||
renderInput={(params) => <TextField {...params} label="" />
|
||||
}
|
||||
/>
|
||||
|
||||
|
||||
{/* <TextField
|
||||
required
|
||||
select
|
||||
name="activite_status"
|
||||
|
@ -915,7 +992,7 @@ const PartnerClientActivite = (props) => {
|
|||
{option.label} <br />
|
||||
</MenuItem>
|
||||
))}
|
||||
</TextField>
|
||||
</TextField>*/}
|
||||
</div>}
|
||||
|
||||
{String(formedit_mode_activite) === "0" && <div className="training_caract">
|
||||
|
@ -934,15 +1011,33 @@ const PartnerClientActivite = (props) => {
|
|||
</TextField>
|
||||
</div>}
|
||||
|
||||
|
||||
{String(formedit_mode_activite) === "1" && <div className="training_caract" > Assigné à (employé) <br />
|
||||
|
||||
<TextField
|
||||
{String(formedit_mode_activite) === "1" && <div className="training_caract" > Assigné à (employé)<br />
|
||||
<Autocomplete
|
||||
disablePortal
|
||||
id="activite_assigned_to"
|
||||
name="activite_assigned_to"
|
||||
className="disabled_style"
|
||||
options={New_Getall_Training_Employee_No_Filter_result}
|
||||
value={New_Getall_Training_Employee_No_Filter_result.filter((data) => (data)._id === String(p_activite_employee_assigned_id))[0].label}
|
||||
onChange={(event, value) => {
|
||||
if (value && value._id) {
|
||||
setp_activite_employee_assigned_id(value._id);
|
||||
|
||||
}
|
||||
}}
|
||||
|
||||
renderInput={(params) => <TextField {...params} label="" />
|
||||
}
|
||||
/>
|
||||
|
||||
|
||||
{/* <TextField
|
||||
|
||||
id="activite_assigned_to"
|
||||
name="activite_assigned_to"
|
||||
select
|
||||
|
||||
|
||||
className="disabled_style"
|
||||
value={p_activite_employee_assigned_id}
|
||||
onChange={(e) => {
|
||||
|
@ -954,12 +1049,12 @@ const PartnerClientActivite = (props) => {
|
|||
{Getall_Training_Employee_No_Filter_result &&
|
||||
Getall_Training_Employee_No_Filter_result.map((myclient) => (
|
||||
<MenuItem key={JSON.parse(myclient)._id} value={JSON.parse(myclient)._id}
|
||||
style={{"width":"100%", "paddingLeft":"5px"}} >
|
||||
style={{ "width": "100%", "paddingLeft": "5px" }} >
|
||||
{JSON.parse(myclient).nom} {JSON.parse(myclient).prenom}
|
||||
|
||||
</MenuItem>
|
||||
))}
|
||||
</TextField>
|
||||
</TextField>*/}
|
||||
</div>}
|
||||
|
||||
{String(formedit_mode_activite) !== "1" && <div className="training_caract" > Assigné à (employé) <br />
|
||||
|
@ -970,7 +1065,7 @@ const PartnerClientActivite = (props) => {
|
|||
id="activite_assigned_to"
|
||||
name="activite_assigned_to"
|
||||
className="disabled_style"
|
||||
|
||||
|
||||
fullWidth
|
||||
|
||||
value={p_activite_employee_assigned_nom_prenom}
|
||||
|
@ -1078,7 +1173,24 @@ const PartnerClientActivite = (props) => {
|
|||
|
||||
|
||||
<div className="training_caract"> Type d'activité <br />
|
||||
<TextField
|
||||
|
||||
<Autocomplete
|
||||
disablePortal
|
||||
name="activite_type"
|
||||
id="activite_type"
|
||||
className="disabled_style"
|
||||
|
||||
options={type_activite_list}
|
||||
onChange={(event, value) => {
|
||||
if (value && value.value) {
|
||||
setone_activite_type(value.value);
|
||||
}
|
||||
}}
|
||||
renderInput={(params) => <TextField {...params} label="" />
|
||||
}
|
||||
/>
|
||||
|
||||
{/*<TextField
|
||||
required
|
||||
select
|
||||
name="activite_type"
|
||||
|
@ -1091,16 +1203,34 @@ const PartnerClientActivite = (props) => {
|
|||
value={one_activite_type}
|
||||
onChange={(e) => setone_activite_type(e.target.value)} >
|
||||
{type_activite_list.map((option) => (
|
||||
<MenuItem key={option.value} value={option.value} style={{"width":"100%", "paddingLeft":"5px"}} >
|
||||
<MenuItem key={option.value} value={option.value} style={{ "width": "100%", "paddingLeft": "5px" }} >
|
||||
{option.label} <br />
|
||||
</MenuItem>
|
||||
))}
|
||||
</TextField>
|
||||
</TextField>*/}
|
||||
|
||||
</div>
|
||||
|
||||
<div className="training_caract"> Statut <br />
|
||||
<TextField
|
||||
|
||||
<Autocomplete
|
||||
disablePortal
|
||||
name="activite_status"
|
||||
id="activite_status"
|
||||
className="disabled_style"
|
||||
|
||||
options={activite_status_list}
|
||||
onChange={(event, value) => {
|
||||
if (value && value.value) {
|
||||
setone_activite_status(value.value);
|
||||
}
|
||||
}}
|
||||
renderInput={(params) => <TextField {...params} label="" />
|
||||
}
|
||||
/>
|
||||
|
||||
|
||||
{/*<TextField
|
||||
required
|
||||
select
|
||||
name="activite_status"
|
||||
|
@ -1117,19 +1247,38 @@ const PartnerClientActivite = (props) => {
|
|||
{option.label} <br />
|
||||
</MenuItem>
|
||||
))}
|
||||
</TextField>
|
||||
</TextField>*/}
|
||||
</div>
|
||||
|
||||
<div className="training_caract"> Assigné à (employé) <br />
|
||||
<TextField
|
||||
<div className="training_caract"> Assigné à (employé) <br/>
|
||||
|
||||
<Autocomplete
|
||||
disablePortal
|
||||
id="activite_assigned_to"
|
||||
name="activite_assigned_to"
|
||||
className="disabled_style"
|
||||
options={New_Getall_Training_Employee_No_Filter_result}
|
||||
//value={p_formateur_label}
|
||||
onChange={(event, value) => {
|
||||
if (value && value._id) {
|
||||
setp_activite_employee_assigned_id(value._id);
|
||||
|
||||
}
|
||||
}}
|
||||
|
||||
renderInput={(params) => <TextField {...params} label="" />
|
||||
}
|
||||
/>
|
||||
|
||||
{/*<TextField
|
||||
|
||||
id="activite_assigned_to"
|
||||
name="activite_assigned_to"
|
||||
|
||||
select
|
||||
|
||||
|
||||
className="disabled_style"
|
||||
|
||||
|
||||
value={p_activite_employee_assigned_id}
|
||||
onChange={(e) => {
|
||||
setp_activite_employee_assigned_id(e.target.value);
|
||||
|
@ -1140,12 +1289,12 @@ const PartnerClientActivite = (props) => {
|
|||
{Getall_Training_Employee_No_Filter_result &&
|
||||
Getall_Training_Employee_No_Filter_result.map((myclient) => (
|
||||
<MenuItem key={JSON.parse(myclient)._id} value={JSON.parse(myclient)._id}
|
||||
style={{"paddingLeft":"5px", "width":"100%"}}>
|
||||
style={{ "paddingLeft": "5px", "width": "100%" }}>
|
||||
{JSON.parse(myclient).nom} {JSON.parse(myclient).prenom} <br />
|
||||
|
||||
</MenuItem>
|
||||
))}
|
||||
</TextField>
|
||||
</TextField>*/}
|
||||
</div>
|
||||
|
||||
<div className="training_caract" style={{ "width": "105%" }}> Détail <br />
|
||||
|
@ -1166,7 +1315,7 @@ const PartnerClientActivite = (props) => {
|
|||
/>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div className="div_row" style={{ "border": "None" }}>
|
||||
|
|
|
@ -500,7 +500,7 @@ const Partner_Client = (props) => {
|
|||
|
||||
Dialog_client_handleClose_buton();
|
||||
handleClick_edit_session_From_Line(gridline_id);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
@ -529,7 +529,7 @@ const Partner_Client = (props) => {
|
|||
|
||||
<div className="partner_client">
|
||||
|
||||
<Dialog
|
||||
{String(gridline_id) !== "" && <Dialog
|
||||
open={Dialog_client_open}
|
||||
onClose={Dialog_client_handleClose}
|
||||
className="displaypartnersession"
|
||||
|
@ -537,13 +537,13 @@ const Partner_Client = (props) => {
|
|||
|
||||
<DialogTitle>client</DialogTitle>
|
||||
<DialogContent className="DialogContent_width">
|
||||
|
||||
|
||||
<div className="div_row_dialog">
|
||||
<div className="div_row_gauche_dialog_session" style={{ "textAlign": 'left' }}>
|
||||
Raison Sociale
|
||||
</div>
|
||||
{Get_List_Partner_Clients_result && selected_id &&
|
||||
String(selected_id).length > 0 && <div className="div_row_droite_dialog_session" style={{ "textAlign": 'right' }}>
|
||||
String(selected_id).length > 0 && String(gridline_id) !== "" && <div className="div_row_droite_dialog_session" style={{ "textAlign": 'right' }}>
|
||||
{JSON.parse(Get_List_Partner_Clients_result[gridline_id]).raison_socile}
|
||||
</div>}
|
||||
</div>
|
||||
|
@ -580,19 +580,19 @@ const Partner_Client = (props) => {
|
|||
|
||||
<div className="div_row_dialog">
|
||||
<div className="div_row_gauche_dialog_session" style={{ "textAlign": 'left' }}>
|
||||
Adresse postale
|
||||
Adresse postale
|
||||
</div>
|
||||
{Get_List_Partner_Clients_result && selected_id &&
|
||||
{Get_List_Partner_Clients_result && selected_id &&
|
||||
String(selected_id).length > 0 && <div className="div_row_droite_dialog_session" style={{ "textAlign": 'right' }}>
|
||||
{JSON.parse(Get_List_Partner_Clients_result[gridline_id]).adr_adresse} <br/>
|
||||
{JSON.parse(Get_List_Partner_Clients_result[gridline_id]).adr_code_postal} {JSON.parse(Get_List_Partner_Clients_result[gridline_id]).adr_pays} <br/>
|
||||
{JSON.parse(Get_List_Partner_Clients_result[gridline_id]).adr_pays.toUpperCase()}
|
||||
{JSON.parse(Get_List_Partner_Clients_result[gridline_id]).adr_adresse} <br />
|
||||
{JSON.parse(Get_List_Partner_Clients_result[gridline_id]).adr_code_postal} {JSON.parse(Get_List_Partner_Clients_result[gridline_id]).adr_pays} <br />
|
||||
{JSON.parse(Get_List_Partner_Clients_result[gridline_id]).adr_pays.toUpperCase()}
|
||||
</div>}
|
||||
</div>
|
||||
|
||||
<div className="div_row_dialog">
|
||||
<div className="div_row_gauche_dialog_session" style={{ "textAlign": 'left' }}>
|
||||
Site Web
|
||||
Site Web
|
||||
</div>
|
||||
{Get_List_Partner_Clients_result && selected_id &&
|
||||
String(selected_id).length > 0 && <div className="div_row_droite_dialog_session" style={{ "textAlign": 'right' }}>
|
||||
|
@ -618,7 +618,7 @@ const Partner_Client = (props) => {
|
|||
</DialogActions>
|
||||
|
||||
|
||||
</Dialog>
|
||||
</Dialog>}
|
||||
|
||||
|
||||
<div className="div_row">
|
||||
|
@ -911,7 +911,7 @@ const Partner_Client = (props) => {
|
|||
<Button variant="outlined" onClick={handleClick_add_new_client}
|
||||
className="detail_class_submenu bton_add_session"
|
||||
id='menu_one_participant' name='menu_one_participant'> Ajout 1 Client <img src={participants} alt="ajout un client" className="icon_plus" />
|
||||
|
||||
|
||||
|
||||
</Button>
|
||||
|
||||
|
|
|
@ -372,7 +372,7 @@
|
|||
font-size: small !important;
|
||||
color: black;
|
||||
width: 90% !important;
|
||||
height: 3rem !important;
|
||||
height: 3.5rem !important;
|
||||
margin: 5px !important;
|
||||
margin-bottom: 1rem !important;
|
||||
}
|
||||
|
@ -637,7 +637,7 @@
|
|||
font-size: small !important;
|
||||
color: black;
|
||||
width: 90% !important;
|
||||
height: 3rem !important;
|
||||
height: 3.5rem !important;
|
||||
margin: 5px !important;
|
||||
margin-bottom: 1rem !important;
|
||||
}
|
||||
|
@ -913,7 +913,7 @@
|
|||
font-size: small !important;
|
||||
color: black;
|
||||
width: 90% !important;
|
||||
height: 3rem !important;
|
||||
height: 3.5rem !important;
|
||||
margin: 5px !important;
|
||||
margin-bottom: 1rem !important;
|
||||
}
|
||||
|
@ -1110,7 +1110,7 @@
|
|||
|
||||
// end media
|
||||
.css-1v4ccyo {
|
||||
height: 3rem !important;
|
||||
height: 3.5rem !important;
|
||||
font-size: small;
|
||||
}
|
||||
|
||||
|
|
|
@ -13730,7 +13730,7 @@
|
|||
height: 386px;
|
||||
left: 72px;
|
||||
//top: 4950px;
|
||||
top: 4300px;
|
||||
top: 4500px;
|
||||
|
||||
/* White */
|
||||
|
||||
|
|
Loading…
Reference in New Issue