29/01/24 - 21h30
parent
3b6d732df3
commit
146bbf80d9
|
@ -1554,6 +1554,7 @@ const Config_Documents = (props) => {
|
|||
|
||||
}
|
||||
|
||||
const [New_Get_List_Personnalisable_Default_Document_result, setNew_Get_List_Personnalisable_Default_Document_result] = useState();
|
||||
|
||||
const [Get_List_Personnalisable_Default_Document_api, setGet_List_Personnalisable_Default_Document_api] = useState();
|
||||
const [Get_List_Personnalisable_Default_Document_message, setGet_List_Personnalisable_Default_Document_message] = useState();
|
||||
|
@ -1577,6 +1578,32 @@ const Config_Documents = (props) => {
|
|||
setGet_List_Personnalisable_Default_Document_api("true");
|
||||
setGet_List_Personnalisable_Default_Document_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_type_doc = JSON.parse(x).type_doc;
|
||||
|
||||
//---
|
||||
var node = {
|
||||
"_id": local_id,
|
||||
"id": localid,
|
||||
"label": local_nom+" - "+local_type_doc+"",
|
||||
"nom": local_nom,
|
||||
"type_doc": local_type_doc,
|
||||
|
||||
};
|
||||
new_data2.push(node);
|
||||
});
|
||||
|
||||
if (new_data2.length > 0)
|
||||
setNew_Get_List_Personnalisable_Default_Document_result(new_data2);
|
||||
|
||||
|
||||
}
|
||||
else {
|
||||
setGet_List_Personnalisable_Default_Document_api("false");
|
||||
|
@ -3036,8 +3063,10 @@ const Config_Documents = (props) => {
|
|||
{String(display_detail_document) !== "1" && String(add_one_document) === "1" && <div className="div_row">
|
||||
<h3> Personnaliser un nouveau document </h3>
|
||||
<div className="div_row" style={{ "textAlign": "left" }}>
|
||||
|
||||
<div className="div_row_gauche"> Choisir le document à ajouter <br />
|
||||
<TextField
|
||||
|
||||
{/* <TextField
|
||||
name="champ_table"
|
||||
id="champ_table"
|
||||
select
|
||||
|
@ -3061,7 +3090,25 @@ const Config_Documents = (props) => {
|
|||
|
||||
</MenuItem>
|
||||
))}
|
||||
</TextField>
|
||||
</TextField>*/}
|
||||
|
||||
<Autocomplete
|
||||
disablePortal
|
||||
name="champ_table"
|
||||
id="champ_table"
|
||||
|
||||
options={New_Get_List_Personnalisable_Default_Document_result}
|
||||
onChange={(event, value) => {
|
||||
if (value && value._id) {
|
||||
setselecte_defaul_doc_to_add(value._id);
|
||||
|
||||
}
|
||||
|
||||
}}
|
||||
|
||||
renderInput={(params) => <TextField {...params} label="" />
|
||||
}
|
||||
/>
|
||||
|
||||
</div>
|
||||
|
||||
|
|
|
@ -52,7 +52,7 @@ import { FcOpenedFolder } from "react-icons/fc";
|
|||
import { gridClasses } from '@mui/x-data-grid';
|
||||
import Link from '@mui/material/Link';
|
||||
import { PiDotsThree } from "react-icons/pi";
|
||||
|
||||
import Module_Editique from "./Module_Editique";
|
||||
|
||||
const DisplayPartnerSession = (props) => {
|
||||
|
||||
|
@ -14361,6 +14361,8 @@ const DisplayPartnerSession = (props) => {
|
|||
|
||||
{String(submenu) === String("editique") && <div style={{ "border": "None" }}>
|
||||
|
||||
<Module_Editique conntected_employee_id={props.conntected_employee_id} related_collection={"session_formation"}
|
||||
related_collection_recid={selected_session_id}/>
|
||||
|
||||
</div>}
|
||||
|
||||
|
|
|
@ -108,9 +108,13 @@ const Module_Editique = (props) => {
|
|||
setSelected(nodeIds);
|
||||
};
|
||||
|
||||
|
||||
const [tab_handleExpandClick_id, settab_handleExpandClick_id] = React.useState([]);
|
||||
//settab_handleExpandClick_id(['0', '1', '2', '3', '4', '20'])
|
||||
|
||||
const handleExpandClick = () => {
|
||||
setExpanded((oldExpanded) =>
|
||||
oldExpanded.length === 0 ? ['1', '5', '6', '7'] : [],
|
||||
oldExpanded.length === 0 ? ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10'] : [],
|
||||
);
|
||||
};
|
||||
|
||||
|
@ -207,10 +211,7 @@ const Module_Editique = (props) => {
|
|||
setselected_session_id(props.related_collection_recid);
|
||||
Getall_Editable_Document_By_Partner_By_Collection();
|
||||
Get_related_collection_Data();
|
||||
window.scrollTo({
|
||||
top: 0,
|
||||
behavior: "smooth",
|
||||
});
|
||||
|
||||
|
||||
}, [])
|
||||
|
||||
|
@ -274,6 +275,11 @@ const Module_Editique = (props) => {
|
|||
|
||||
var nom_fichier_cmd = "Convention.zip";
|
||||
|
||||
if( String(selected_convention_id).trim() === ""){
|
||||
alert(" Vous devez choisir un modèle de document ");
|
||||
return;
|
||||
}
|
||||
|
||||
var url = process.env.REACT_APP_API_URL + "myclass/api/Prepare_and_Send_Convention_From_Session_By_PDF/" + stored_cookie + "/" + selected_session_id + "/" + selected_convention_id;
|
||||
|
||||
|
||||
|
@ -307,6 +313,50 @@ const Module_Editique = (props) => {
|
|||
|
||||
}
|
||||
|
||||
|
||||
function Download_Session_Convocation_PDF() {
|
||||
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
|
||||
var nom_fichier_cmd = "Convocation.zip";
|
||||
|
||||
if( String(selected_convention_id).trim() === ""){
|
||||
alert(" Vous devez choisir un modèle de document ");
|
||||
return;
|
||||
}
|
||||
var url = process.env.REACT_APP_API_URL + "myclass/api/Prepare_and_Send_Convocation_From_Session_By_PDF/" + stored_cookie + "/" + selected_session_id + "/" + selected_convention_id;
|
||||
|
||||
|
||||
|
||||
if (String(selected_convention_id) === "default_pdf") {
|
||||
// Il s'agit d'envoyer les convention par defaut de type mail
|
||||
url = process.env.REACT_APP_API_URL + "myclass/api/Prepare_and_Send_Default_Convocation_From_Session_By_PDF/" + stored_cookie + "/" + selected_session_id + "/" + selected_convention_id;
|
||||
|
||||
}
|
||||
|
||||
console.log(" ### url = ", url);
|
||||
|
||||
//console.log(" nom_fichier_cmd = ", nom_fichier_cmd, " --- selected_session_id = ", selected_session_id, " --- selected_convention_id =", selected_convention_id);
|
||||
setLoading(true);
|
||||
axios.get(url, { responseType: 'blob', },)
|
||||
.then((res) => {
|
||||
setLoading(false);
|
||||
//console.log(" In Download_Stagiaire_Conventions_PDF res.data = " + res.data);
|
||||
if (String(res.data) === String("false")) {
|
||||
alert("Impossible de télécharger la convocation (2) ");
|
||||
} else {
|
||||
fileDownload(res.data, nom_fichier_cmd);
|
||||
Getall_Editable_Document_By_Partner_By_Collection();
|
||||
|
||||
}
|
||||
}).catch((error) => {
|
||||
setLoading(false);
|
||||
console.error('Error:', error);
|
||||
alert(" Impossible de télécharger la convocation ")
|
||||
|
||||
});
|
||||
|
||||
}
|
||||
const [New_Get_List_Stagiaire_Conventions_result, setNew_Get_List_Stagiaire_Conventions_result] = useState([]);
|
||||
|
||||
const [Get_List_Stagiaire_Conventions_api, setGet_List_Stagiaire_Conventions_api] = useState();
|
||||
|
@ -388,6 +438,90 @@ const Module_Editique = (props) => {
|
|||
})
|
||||
}
|
||||
|
||||
|
||||
|
||||
const [New_Get_List_Stagiaire_Convocations_result, setNew_Get_List_Stagiaire_Convocations_result] = useState([]);
|
||||
|
||||
const [Get_List_Stagiaire_Convocations_api, setGet_List_Stagiaire_Convocations_api] = useState();
|
||||
const [Get_List_Stagiaire_Convocations_message, setGet_List_Stagiaire_Convocations_message] = useState();
|
||||
const [Get_List_Stagiaire_Convocations_result, setGet_List_Stagiaire_Convocations_result] = useState();
|
||||
function Get_List_Stagiaire_Convocations(ref_interne, nom, type_doc, courrier_template_type_document_ref_interne) {
|
||||
|
||||
var form = new FormData();
|
||||
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
form.append("token", stored_cookie);
|
||||
form.append("type_doc", type_doc);
|
||||
form.append("courrier_template_type_document_ref_interne", courrier_template_type_document_ref_interne);
|
||||
|
||||
|
||||
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_List_Convocations_Stagiaire_With_Filter/";
|
||||
setLoading(true);
|
||||
|
||||
|
||||
axios.post(myurl, form).then(res => {
|
||||
//console.log(" In Get_List_Stagiaire_Convocations res.data.status = " + res.data.status);
|
||||
//console.log(" In Get_List_Stagiaire_Convocations res.data.message r_class = " + res.data.message);
|
||||
setLoading(false);
|
||||
if (String(res.data.status) === String("true")) {
|
||||
|
||||
|
||||
setGet_List_Stagiaire_Convocations_api("true");
|
||||
setGet_List_Stagiaire_Convocations_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_ref_interne = JSON.parse(x).ref_interne;
|
||||
var local_nom = JSON.parse(x).nom;
|
||||
var local_sujet = JSON.parse(x).sujet;
|
||||
var local_type_doc = JSON.parse(x).type_doc;
|
||||
var local_cible = JSON.parse(x).cible;
|
||||
var local_joint_pdf = JSON.parse(x).joint_pdf;
|
||||
|
||||
|
||||
|
||||
//---
|
||||
var node = {
|
||||
"_id": local_id,
|
||||
"id": localid,
|
||||
"label": local_nom,
|
||||
"ref_interne": local_ref_interne,
|
||||
"nom": local_nom,
|
||||
"sujet": local_sujet,
|
||||
"type_doc": local_type_doc,
|
||||
"cible": local_cible,
|
||||
"joint_pdf": local_joint_pdf,
|
||||
|
||||
};
|
||||
new_data2.push(node);
|
||||
});
|
||||
|
||||
if (new_data2.length > 0)
|
||||
setNew_Get_List_Stagiaire_Convocations_result(new_data2);
|
||||
|
||||
}
|
||||
else {
|
||||
setGet_List_Stagiaire_Convocations_api("false");
|
||||
setGet_List_Stagiaire_Convocations_message(res.data.message);
|
||||
alert(res.data.message);
|
||||
}
|
||||
|
||||
}).catch((error) => {
|
||||
setLoading(false);
|
||||
console.warn('Not good man :( Get_List_Stagiaire_Convocations = ', error);
|
||||
setGet_List_Stagiaire_Convocations_api("false");
|
||||
alert("Impossible de récupérer les modèles de convocations");
|
||||
//setmyApimyApiMessage("")
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
const [sessions_file_change_1_convention_api, setsessions_file_change_1_convention_api] = useState();
|
||||
const [sessions_file_change_1_convention_result, setsessions_file_change_1_convention_result] = useState();
|
||||
const [sessions_file_change_1_convention_message, setsessions_file_change_1_convention_message] = useState();
|
||||
|
@ -676,6 +810,77 @@ const Module_Editique = (props) => {
|
|||
})
|
||||
}
|
||||
|
||||
|
||||
const [Send_Stagiaire_Convocations_By_Email_api, setSend_Stagiaire_Convocations_By_Email_api] = useState();
|
||||
const [Send_Stagiaire_Convocations_By_Email_message, setSend_Stagiaire_Convocations_By_Email_message] = useState();
|
||||
const [Send_Stagiaire_Convocations_By_Email_result, setSend_Stagiaire_Convocations_By_Email_result] = useState();
|
||||
function Send_Stagiaire_Convocations_By_Email(event) {
|
||||
|
||||
var form = new FormData();
|
||||
|
||||
if (String(selected_convention_id).trim() === "") {
|
||||
alert(" Vous devez choisir un document");
|
||||
return;
|
||||
}
|
||||
|
||||
form.append("class_internal_url", selected_internal_url);
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
form.append("token", stored_cookie);
|
||||
form.append("session_id", selected_session_id);
|
||||
form.append("courrier_template_id", selected_convention_id);
|
||||
form.append("email_test", selected_convention_email_test);
|
||||
form.append("email_production", selected_convention_email_destinataire_prod);
|
||||
|
||||
|
||||
console.log("form === ", form);
|
||||
// pièce jointe
|
||||
form.append("file_business_object", "");
|
||||
var list_files = new FormData();
|
||||
|
||||
for (let i = 0; i < tab_convention_pieces_jointes_result.length; i++) {
|
||||
form.append('File', tab_convention_pieces_jointes_result[i]);
|
||||
|
||||
}
|
||||
//form.append("File", list_files);
|
||||
|
||||
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Prepare_and_Send_Convocation_From_Session_By_Email/";
|
||||
if (String(selected_convention_id) === "default_mail") {
|
||||
// Il s'agit d'envoyer les convention par defaut de type mail
|
||||
myurl = process.env.REACT_APP_API_URL + "myclass/api/Prepare_and_Send_Default_Convocation_From_Session_By_Email/";
|
||||
}
|
||||
|
||||
//console.log(" ### myurl = ", myurl);
|
||||
|
||||
setLoading(true);
|
||||
axios.post(myurl, form).then(res => {
|
||||
setLoading(false);
|
||||
//console.log(" In Send_Stagiaire_Convocations_By_Email res.data.status = " + res.data.status);
|
||||
//console.log(" In Send_Stagiaire_Convocations_By_Email res.data.message r_class = " + res.data.message);
|
||||
|
||||
if (String(res.data.status) === String("true")) {
|
||||
setSend_Stagiaire_Convocations_By_Email_api("true");
|
||||
setSend_Stagiaire_Convocations_By_Email_result(res.data.message);
|
||||
|
||||
Getall_Editable_Document_By_Partner_By_Collection();
|
||||
alert(res.data.message);
|
||||
Dialog_convention_handleClose_buton()
|
||||
}
|
||||
else {
|
||||
setSend_Stagiaire_Convocations_By_Email_api("false");
|
||||
setSend_Stagiaire_Convocations_By_Email_message(res.data.message);
|
||||
alert(res.data.message);
|
||||
}
|
||||
|
||||
}).catch((error) => {
|
||||
setLoading(false);
|
||||
console.warn('Not good man :( Send_Stagiaire_Convocations_By_Email = ', error);
|
||||
setSend_Stagiaire_Convocations_By_Email_api("false");
|
||||
alert("Impossible d'envoyer la convocation par email");
|
||||
//setmyApimyApiMessage("")
|
||||
})
|
||||
}
|
||||
|
||||
const [action_server_to_run, setaction_server_to_run] = useState("");
|
||||
const [action_server_type_doc, setaction_server_type_doc] = useState("");
|
||||
const [action_server_nom_doc, setaction_server_nom_doc] = useState("");
|
||||
|
@ -703,6 +908,17 @@ const Module_Editique = (props) => {
|
|||
setDialog_CONF_INSCRIPTION_open(false);
|
||||
};
|
||||
|
||||
const [Dialog_CONVOCATION_STAGIAIRE_open, setDialog_CONVOCATION_STAGIAIRE_open] = React.useState(false);
|
||||
const Dialog_CONVOCATION_STAGIAIRE_handleClose = () => {
|
||||
//alert(" Utiliser le bouton 'fermer' ");
|
||||
//setOpen(false);
|
||||
};
|
||||
|
||||
const Dialog_CONVOCATION_STAGIAIRE_handleClose_buton = () => {
|
||||
setDialog_CONVOCATION_STAGIAIRE_open(false);
|
||||
};
|
||||
|
||||
|
||||
return (
|
||||
|
||||
<div className="module_editique">
|
||||
|
@ -839,6 +1055,314 @@ const Module_Editique = (props) => {
|
|||
{/* FIN Dialog pour gerer les EMARGEMENT_FORMATION */}
|
||||
|
||||
|
||||
{/* Dialog pour gerer les CONVOCATION_STAGIAIRE */}
|
||||
<Dialog
|
||||
open={Dialog_CONVOCATION_STAGIAIRE_open}
|
||||
onClose={Dialog_CONVOCATION_STAGIAIRE_handleClose}
|
||||
className="displaypartnersession"
|
||||
>
|
||||
|
||||
<DialogTitle>MySy Information</DialogTitle>
|
||||
<DialogContent className="DialogContent_width" style={{ "minHeight": "30rem" }}>
|
||||
<DialogContentText>
|
||||
{Dialog_1_message} - {action_server_type_doc}
|
||||
</DialogContentText>
|
||||
|
||||
|
||||
<div className="session_caract_Dialog" > Type Document<br />
|
||||
<TextField
|
||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 } }}
|
||||
|
||||
name="event_dialog_type_convention"
|
||||
id="event_dialog_type_convention"
|
||||
|
||||
select
|
||||
fullWidth
|
||||
|
||||
value={selected_convention_type}
|
||||
onChange={(e) => {
|
||||
setselected_convention_type(e.target.value);
|
||||
Get_List_Stagiaire_Convocations(action_server_ref_interne_doc, action_server_nom_doc,
|
||||
String(e.target.value), Dialog_1_message);
|
||||
|
||||
}
|
||||
}
|
||||
>
|
||||
|
||||
<MenuItem value="email" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Email </MenuItem>
|
||||
<MenuItem value="pdf" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >PDF </MenuItem>
|
||||
</TextField>
|
||||
|
||||
</div>
|
||||
|
||||
{(String(selected_convention_type) === "email" || String(selected_convention_type) === "pdf") && <div className="session_caract_Dialog" > Choisir une convention
|
||||
<Autocomplete
|
||||
disablePortal
|
||||
name="event_dialog_version_convention"
|
||||
id="event_dialog_version_convention"
|
||||
fullWidth
|
||||
//className="disabled_style enable_style"
|
||||
options={New_Get_List_Stagiaire_Convocations_result}
|
||||
|
||||
onChange={(event, value) => {
|
||||
if (value && value._id) {
|
||||
|
||||
setselected_convention_id(value._id);
|
||||
|
||||
if (String(value._id) === "default_mail") {
|
||||
setselected_convention_type("email");
|
||||
}
|
||||
else if (String(value._id) === "default_pdf") {
|
||||
setselected_convention_type("pdf");
|
||||
} else {
|
||||
var result2 = Get_List_Stagiaire_Convocations_result.filter((local_mymanager) => JSON.parse(local_mymanager)._id === String(value._id))
|
||||
setselected_convention_type(JSON.parse(result2).type_doc);
|
||||
}
|
||||
settab_convention_pieces_jointes_result([]);
|
||||
}
|
||||
}}
|
||||
|
||||
renderInput={(params) => <TextField {...params} label="" />
|
||||
}
|
||||
/>
|
||||
|
||||
</div>}
|
||||
|
||||
{String(selected_convention_type) === "email" && <div className="session_caract_Dialog" > Type Document<br />
|
||||
<TextField
|
||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, width: '75%' }}
|
||||
|
||||
name="event_dialog_type_convention"
|
||||
id="event_dialog_type_convention"
|
||||
|
||||
value="email"
|
||||
|
||||
/>
|
||||
|
||||
|
||||
{String(selected_convention_type) === "email" && <label className="bton_image_class" style={{ "width": "20%", "float": "right", "height": "3.5rem", "paddingTop": "15px" }} onClick={(e) => {
|
||||
|
||||
if (selected_convention_email_test) {
|
||||
var validRegex = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/;
|
||||
if (!selected_convention_email_test.match(validRegex)) {
|
||||
alert("L'adresse email de test est invalide.");
|
||||
return;
|
||||
}
|
||||
Send_Stagiaire_Conventions_By_Email_Test();
|
||||
} else {
|
||||
alert("L'adresse email de test est invalide.");
|
||||
}
|
||||
|
||||
|
||||
|
||||
}} > <FcSearch /> Test</label>}
|
||||
|
||||
</div>}
|
||||
|
||||
{String(selected_convention_type) === "pdf" && <div className="session_caract_Dialog" > Type Document<br />
|
||||
<TextField
|
||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 } }}
|
||||
|
||||
name="event_dialog_type_convention"
|
||||
id="event_dialog_type_convention"
|
||||
|
||||
value="pdf"
|
||||
fullWidth
|
||||
|
||||
|
||||
/>
|
||||
|
||||
|
||||
|
||||
</div>}
|
||||
|
||||
|
||||
{String(selected_convention_type) === "email" && <div className="session_caract_Dialog" >
|
||||
<Tooltip className="tooltip_css" id="test01" style={{ "fontSize": "12px" }} />
|
||||
<a data-tooltip-id="test01" data-tooltip-html="Pour recevoir une email de test avant de l'envoyer">
|
||||
Adresse email de test <FcInfo /> <TextField
|
||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
||||
|
||||
name="event_dialog_email_test_convention"
|
||||
id="event_dialog_email_test_convention"
|
||||
|
||||
fullWidth
|
||||
|
||||
value={selected_convention_email_test}
|
||||
onChange={(e) => {
|
||||
setselected_convention_email_test(e.target.value);
|
||||
}
|
||||
}
|
||||
/>
|
||||
</a>
|
||||
|
||||
</div>
|
||||
}
|
||||
|
||||
{String(selected_convention_type) === "pdf" && <div className="session_caract_Dialog" > Recevoir un pré-envoie
|
||||
<TextField
|
||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
||||
|
||||
name="event_dialog_email_test_convention"
|
||||
id="event_dialog_email_test_convention"
|
||||
fullWidth
|
||||
value=""
|
||||
|
||||
/>
|
||||
|
||||
</div>
|
||||
}
|
||||
|
||||
{String(selected_convention_type) === "email" &&
|
||||
String(actionmass_ftion_val) !== String("convention") && <div className="session_caract_Dialog" > Email destinaitaire
|
||||
<TextField
|
||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
||||
|
||||
name="event_dialog_email_production_convention"
|
||||
id="event_dialog_email_production_convention"
|
||||
|
||||
fullWidth
|
||||
|
||||
value={selected_convention_email_destinataire_prod}
|
||||
onChange={(e) => {
|
||||
setselected_convention_email_destinataire_prod(e.target.value);
|
||||
}
|
||||
}
|
||||
/>
|
||||
|
||||
</div>
|
||||
}
|
||||
|
||||
|
||||
{String(selected_convention_type) === "pdf" &&
|
||||
String(actionmass_ftion_val) !== String("convention") && <div className="session_caract_Dialog" > Email destinaitaire
|
||||
<TextField
|
||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
||||
|
||||
name="event_dialog_email_production_convention"
|
||||
id="event_dialog_email_production_convention"
|
||||
|
||||
fullWidth
|
||||
|
||||
value=""
|
||||
|
||||
/>
|
||||
|
||||
</div>
|
||||
}
|
||||
|
||||
{String(selected_convention_type) === "email" && <div>
|
||||
|
||||
<div>
|
||||
<div className="div_row" style={{ "border": "None" }}>
|
||||
<hr className="hr_break" />
|
||||
</div>
|
||||
|
||||
<div className="div_row" style={{ "border": "None", "fontSize": "22px", "fontWeight": "600", "padding": "5px" }}>
|
||||
Pièces jointes Convention
|
||||
|
||||
</div>
|
||||
|
||||
<div className="div_row" style={{ "padding": "5px" }}>
|
||||
|
||||
<div style={{ "fontSize": "12px" }}>
|
||||
<label htmlFor="upload_convention_file">
|
||||
<input
|
||||
style={{ display: "none" }}
|
||||
id="upload_convention_file"
|
||||
name="upload_convention_file"
|
||||
type="file"
|
||||
onChange={sessions_file_change_1_convention}
|
||||
/>
|
||||
|
||||
<Fab
|
||||
color="secondary"
|
||||
size="small"
|
||||
component="span"
|
||||
aria-label="add"
|
||||
variant="extended"
|
||||
>
|
||||
<IoMdAddCircle /> <nav style={{ "fontSize": "12px" }}> Ajouter un fichier </nav>
|
||||
</Fab>
|
||||
|
||||
</label>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
{tab_convention_pieces_jointes_result && <div className="div_row" style={{ "padding": "5px" }}>
|
||||
|
||||
<div className="div_row">
|
||||
Liste des pièces jointes <br />
|
||||
{<div className="div_row">
|
||||
{tab_convention_pieces_jointes_result && tab_convention_pieces_jointes_result.map((val) => (
|
||||
<div className="div_row_list_pj_convention" >
|
||||
<nav style={{ "color": "orange", "cursor": "pointer" }}
|
||||
onClick={(e) => {
|
||||
Delete_Convention_Attached_Doc(e);
|
||||
}}
|
||||
name={val.name} id={val.name}> Supprimer {val.name} </nav> <br />
|
||||
|
||||
|
||||
</div>
|
||||
))}
|
||||
</div>}
|
||||
</div>
|
||||
</div>}
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>}
|
||||
|
||||
|
||||
|
||||
</DialogContent>
|
||||
|
||||
<DialogActions>
|
||||
<div className="div_row">
|
||||
<div className="div_row_gauche">
|
||||
{String(selected_convention_type) === "email" && <Button onClick={(e) => {
|
||||
|
||||
if (String(selected_convention_email_test).length > 2) {
|
||||
// On alerte juste l'utilisateur que l'email de test n'est pas vide, juste au cas ou il aurait cliqué par erreur sur l'envoie.
|
||||
const response = window.confirm(" Vous allez envoyer la convention au destinaitaire final. Continuer ?");
|
||||
if (!response) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
Send_Stagiaire_Convocations_By_Email();
|
||||
Dialog_CONVOCATION_STAGIAIRE_handleClose_buton();
|
||||
|
||||
}}
|
||||
className="bton_enreg_dialog">Envoyer mail </Button>}
|
||||
|
||||
|
||||
{String(selected_convention_type) === "pdf" &&
|
||||
<Button className="bton_enreg_dialog" onClick={(e) => {
|
||||
Download_Session_Convocation_PDF();
|
||||
Dialog_CONVOCATION_STAGIAIRE_handleClose_buton();
|
||||
}}
|
||||
>Télécharger </Button>}
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div className="div_row_droite" style={{ "textAlign": 'center' }}>
|
||||
<Button onClick={Dialog_CONVOCATION_STAGIAIRE_handleClose_buton} className="bton_annule_dialog" >Fermer</Button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</DialogActions>
|
||||
|
||||
</Dialog>
|
||||
{/* FIN Dialog pour gerer les CONVOCATION_STAGIAIRE */}
|
||||
|
||||
|
||||
{/* Dialog pour gerer les conventions */}
|
||||
<Dialog
|
||||
open={Dialog_convention_open}
|
||||
|
@ -1122,6 +1646,8 @@ const Module_Editique = (props) => {
|
|||
|
||||
}}
|
||||
className="bton_enreg_dialog">Envoyer mail </Button>}
|
||||
|
||||
|
||||
{String(selected_convention_type) === "pdf" &&
|
||||
<Button className="bton_enreg_dialog" onClick={(e) => {
|
||||
Download_Session_Conventions_PDF();
|
||||
|
@ -1146,14 +1672,14 @@ const Module_Editique = (props) => {
|
|||
|
||||
<div className="div_row" style={{ "background": "#e8e6e6", "marginLeft": "5px", "marginRight": "5px" }}>
|
||||
|
||||
<div style={{ "width": "58%", "float": "left", "marginLeft": "5px", "marginRight": "5px" }}>
|
||||
<div style={{ "width": "58%", "float": "left", "marginLeft": "5px", "marginRight": "5px", "borderRight": "3mm ridge rgba(211, 220, 50, .6)" }}>
|
||||
Action Editique <br />
|
||||
<div style={{ "width": "100%", "float": "left" }}>
|
||||
{Getall_Editable_Document_By_Partner_By_Collection_result &&
|
||||
Getall_Editable_Document_By_Partner_By_Collection_result.map((document) => (
|
||||
|
||||
<div className="div_row" style={{ "height": "3rem", "marginLeft": "5px", "marginRight": "5px" }}>
|
||||
<div className="bton_action_server" style={{ width: "55%", float: "left", height: "2.5rem", paddingTop: "10px" }} onClick={(e) => {
|
||||
<div className="bton_action_server" style={{ width: "45%", float: "left", height: "2.5rem", paddingTop: "10px" }} onClick={(e) => {
|
||||
|
||||
setaction_server_to_run(String(JSON.parse(document).server_action_name))
|
||||
//setaction_server_type_doc(String(JSON.parse(document).courrier_template_type_doc))
|
||||
|
@ -1162,16 +1688,23 @@ const Module_Editique = (props) => {
|
|||
Action_Server(String(JSON.parse(document).server_action_name));
|
||||
setaction_server_type_doc_ref_interne(JSON.parse(document).courrier_template_ref_interne);
|
||||
setDialog_1_message(String(JSON.parse(document).courrier_template_ref_interne))
|
||||
Get_List_Stagiaire_Conventions(String(JSON.parse(document).courrier_template_ref_interne), String(JSON.parse(document).courrier_template_nom), String(JSON.parse(document).courrier_template_type_doc)
|
||||
);
|
||||
|
||||
|
||||
if (String(JSON.parse(document).courrier_template_ref_interne) === "CONVENTION_STAGIAIRE_ENTREPRISE" ||
|
||||
String(JSON.parse(document).courrier_template_ref_interne) === "CONVENTION_STAGIAIRE_INDIVIDUELLE") {
|
||||
Get_List_Stagiaire_Conventions(String(JSON.parse(document).courrier_template_ref_interne), String(JSON.parse(document).courrier_template_nom), String(JSON.parse(document).courrier_template_type_doc)
|
||||
);
|
||||
setDialog_convention_open(true);
|
||||
}
|
||||
else if (String(JSON.parse(document).courrier_template_ref_interne) === "EMARGEMENT_FORMATION") {
|
||||
setDialog_EMARGEMENT_FORMATION_open(true);
|
||||
}
|
||||
else if (String(JSON.parse(document).courrier_template_ref_interne) === "CONVOCATION_STAGIAIRE") {
|
||||
console.log(" ### Dialog_CONVOCATION_STAGIAIRE_open");
|
||||
Get_List_Stagiaire_Convocations(String(JSON.parse(document).courrier_template_ref_interne), String(JSON.parse(document).courrier_template_nom), String(JSON.parse(document).courrier_template_type_doc)
|
||||
);
|
||||
setDialog_CONVOCATION_STAGIAIRE_open(true);
|
||||
}
|
||||
|
||||
else if (String(JSON.parse(document).courrier_template_ref_interne) === "CONF_INSCRIPTION") {
|
||||
setDialog_CONF_INSCRIPTION_open(true);
|
||||
|
@ -1182,27 +1715,19 @@ const Module_Editique = (props) => {
|
|||
</div>
|
||||
|
||||
{String(JSON.parse(document).has_history_event) === "1" &&
|
||||
<div style={{ display: "inline-block", width: "40%", textAlign: "left", paddingLeft: "0.5rem", "float": "right" }}>
|
||||
<div style={{ display: "inline-block", width: "15%", textAlign: "left", paddingLeft: "0.5rem", "float": "left", height: "2.5rem", }}>
|
||||
|
||||
<ToggleSwitch_v2_mysy id="toggleSwitch" name="toggleSwitch" checked={true} style={{ height: "1.5rem" }} />
|
||||
|
||||
</div>}
|
||||
|
||||
{String(JSON.parse(document).has_history_event) !== "1" &&
|
||||
<div style={{ display: "inline-block", width: "40%", textAlign: "left", paddingLeft: "0.5rem", "float": "right" }}>
|
||||
<div style={{ display: "inline-block", width: "15%", textAlign: "left", paddingLeft: "0.5rem", "float": "left", height: "2.5rem", }}>
|
||||
|
||||
<ToggleSwitch_v2_mysy id="toggleSwitch" name="toggleSwitch" checked={false} style={{ height: "1.5rem" }} />
|
||||
|
||||
</div>}
|
||||
|
||||
{JSON.parse(document).list_document_history_event &&
|
||||
JSON.parse(document).list_document_history_event.map((history_doc) => (
|
||||
<nav>
|
||||
{history_doc._id}
|
||||
|
||||
</nav>
|
||||
))}
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
@ -1216,15 +1741,22 @@ const Module_Editique = (props) => {
|
|||
</div>
|
||||
|
||||
|
||||
<div style={{ "width": "40%", "float": "right", "borderLeft": " 3mm ridge rgba(211, 220, 50, .6);" }}>
|
||||
Détail <br />
|
||||
<Box sx={{ minHeight: 270, flexGrow: 1, maxWidth: 300 }}>
|
||||
<Box sx={{ mb: 1 }}>
|
||||
<Button onClick={handleExpandClick}>
|
||||
<div style={{ "width": "40%", "float": "right", }}>
|
||||
Détail <Button onClick={handleExpandClick}>
|
||||
{expanded.length === 0 ? 'Voir tout' : 'Réduire'}
|
||||
</Button>
|
||||
<Box sx={{
|
||||
minHeight: 270, flexGrow: 1,
|
||||
boxShadow: 1,
|
||||
borderRadius: 2,
|
||||
bgcolor: "yellowgreen"
|
||||
}}>
|
||||
|
||||
|
||||
{Getall_Editable_Document_By_Partner_By_Collection_result &&
|
||||
Getall_Editable_Document_By_Partner_By_Collection_result.map((document) => (
|
||||
|
||||
|
||||
</Box>
|
||||
<TreeView
|
||||
aria-label="controlled"
|
||||
defaultCollapseIcon={<ExpandMoreIcon />}
|
||||
|
@ -1234,21 +1766,30 @@ const Module_Editique = (props) => {
|
|||
onNodeToggle={handleToggle}
|
||||
onNodeSelect={handleSelect}
|
||||
multiSelect
|
||||
className="test03"
|
||||
>
|
||||
<TreeItem nodeId="1" label="Applications" className="test01">
|
||||
<TreeItem nodeId="2" label="Calendar" className="test02" />
|
||||
<TreeItem nodeId="3" label="Chrome" />
|
||||
<TreeItem nodeId="4" label="Webstorm" />
|
||||
</TreeItem>
|
||||
<TreeItem nodeId="5" label="Documents">
|
||||
<TreeItem nodeId="6" label="MUI">
|
||||
<TreeItem nodeId="7" label="src">
|
||||
<TreeItem nodeId="8" label="index.js" />
|
||||
<TreeItem nodeId="9" label="tree-view.js" />
|
||||
</TreeItem>
|
||||
</TreeItem>
|
||||
<TreeItem nodeId={(JSON.parse(document).id)} label={(JSON.parse(document).courrier_template_ref_interne)} className="test01"
|
||||
>
|
||||
|
||||
{JSON.parse(document).list_document_history_event &&
|
||||
JSON.parse(document).list_document_history_event.map((history_doc) => (
|
||||
|
||||
<TreeItem className="test02" nodeId={history_doc._id}
|
||||
label={(String(history_doc.date_update).substring(0, 16) + " Par " + String(history_doc.local_update_by_email))} />
|
||||
|
||||
))}
|
||||
|
||||
{/*!JSON.parse(document).list_document_history_event || (JSON.parse(document).list_document_history_event).length <= 0 &&
|
||||
<TreeItem nodeId={"0"} label="Aucun"
|
||||
className="test02" />*/}
|
||||
|
||||
|
||||
|
||||
|
||||
</TreeItem>
|
||||
|
||||
</TreeView>
|
||||
))}
|
||||
</Box>
|
||||
|
||||
</div>
|
||||
|
|
|
@ -607,7 +607,7 @@ const TestUrl_New = (props) => {
|
|||
<br />
|
||||
|
||||
<h2> Module Ediditique </h2>
|
||||
<Module_Editique conntected_employee_id={"1234"} related_collection={"session_formation"} related_collection_recid={"65224c1c7e5ee82f3a74afc6"}/>
|
||||
<Module_Editique conntected_employee_id={"1234"} related_collection={"session_formation"} related_collection_recid={"657e1bb9bd0c06f196c96b51"}/>
|
||||
|
||||
<Button variant="contained" className="bton_enreg"
|
||||
onClick={afficher_champs_spec}>
|
||||
|
|
|
@ -3,10 +3,10 @@ import React from "react";
|
|||
|
||||
const ToggleSwitch_v2_mysy = ({ label, checked }) => {
|
||||
return (
|
||||
<div className="toggleswitch">
|
||||
<div className="toggleswitch2_mysy">
|
||||
<div className="container">
|
||||
|
||||
<nav style={{"width":"100%", "float":"right", "textAlign":'right', }}>
|
||||
<nav style={{"width":"100%", "float":"right", "textAlign":'right', "maxHeight":"2.5rem"}}>
|
||||
<div className="toggle-switch">
|
||||
<input type="checkbox" className="checkbox"
|
||||
name={label} id={label} checked={checked} />
|
||||
|
|
|
@ -2,22 +2,34 @@
|
|||
|
||||
.test01 {
|
||||
font-size: 3rem;
|
||||
color: red;
|
||||
// color: red;
|
||||
font-weight: bold !important;
|
||||
}
|
||||
|
||||
.test02 {
|
||||
font-size: 3rem;
|
||||
color: burlywood;
|
||||
font-size: 5px !important;
|
||||
// color: burlywood;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.test03 {
|
||||
text-align: left !important;
|
||||
font-size: x-small;
|
||||
//background-color: #464b5e !important;
|
||||
}
|
||||
|
||||
.css-hytcpw{
|
||||
max-width: 100% !important;
|
||||
}
|
||||
|
||||
.tooltip_css {
|
||||
background: #81BC3A;
|
||||
//background: #81BC3A;
|
||||
z-index: 9999;
|
||||
}
|
||||
|
||||
|
||||
.css-1bcfi89-MuiTreeItem-content .MuiTreeItem-iconContainer{
|
||||
font-size: 5px !important;
|
||||
}
|
||||
|
||||
.bton_action_server {
|
||||
box-shadow: 0 0 5px -1px rgba(0, 0, 0, 0.2);
|
||||
|
|
|
@ -0,0 +1,76 @@
|
|||
.toggleswitch2_mysy {
|
||||
|
||||
.label{
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
.container {
|
||||
text-align: center;
|
||||
padding-right: 5px !important;
|
||||
}
|
||||
.toggle-switch {
|
||||
position: relative;
|
||||
width: 98%;
|
||||
display: inline-block;
|
||||
text-align: left;
|
||||
top: 5px;
|
||||
max-height: 2.5rem;
|
||||
}
|
||||
.checkbox {
|
||||
display: none;
|
||||
}
|
||||
.label {
|
||||
display: block;
|
||||
overflow: hidden;
|
||||
cursor: pointer;
|
||||
border: 0 solid #bbb;
|
||||
border-radius: 20px;
|
||||
}
|
||||
.inner {
|
||||
display: block;
|
||||
width: 200%;
|
||||
margin-left: -100%;
|
||||
transition: margin 0.3s ease-in 0s;
|
||||
}
|
||||
.inner:before,
|
||||
.inner:after {
|
||||
float: left;
|
||||
width: 50%;
|
||||
height: 36px;
|
||||
padding: 0;
|
||||
line-height: 36px;
|
||||
color: #fff;
|
||||
font-weight: bold;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.inner:before {
|
||||
content: "OUI";
|
||||
padding-left: 10px;
|
||||
background-color: #060;
|
||||
color: #fff;
|
||||
}
|
||||
.inner:after {
|
||||
content: "NON";
|
||||
padding-right: 10px;
|
||||
background-color: #bbb;
|
||||
color: #fff;
|
||||
text-align: right;
|
||||
}
|
||||
.switch {
|
||||
display: block;
|
||||
width: 24px;
|
||||
margin: 5px;
|
||||
background: #fff;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
border: 0 solid #bbb;
|
||||
border-radius: 20px;
|
||||
transition: all 0.3s ease-in 0s;
|
||||
}
|
||||
.checkbox:checked + .label .inner {
|
||||
margin-left: 0;
|
||||
}
|
||||
.checkbox:checked + .label .switch {
|
||||
right: 0px;
|
||||
}
|
||||
}
|
|
@ -96,4 +96,4 @@
|
|||
@import "./components/quisommesnous_v2";
|
||||
@import "./components/quisommesnous_v3";
|
||||
@import "./components/module_editique";
|
||||
|
||||
@import "./components/toggleswitch2_mysy";
|
||||
|
|
Loading…
Reference in New Issue