24/02/26 - 19h30
parent
c758a46d94
commit
dd8202453b
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
|
@ -35,7 +35,7 @@ import { axisClasses } from '@mui/x-charts';
|
|||
import { pieArcLabelClasses } from '@mui/x-charts/PieChart';
|
||||
import Stack from '@mui/material/Stack';
|
||||
import Typography from '@mui/material/Typography';
|
||||
import { PieChart } from '@mui/x-charts/PieChart';
|
||||
import { PieChart } from '@mui/x-charts/PieChart';
|
||||
import fileDownload from 'js-file-download'
|
||||
const pieParams = { height: 200, margin: { right: 5 } };
|
||||
const palette = ['red', 'blue', 'green'];
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ import MenuItem from '@mui/material/MenuItem';
|
|||
import 'react-confirm-alert/src/react-confirm-alert.css'; // Import css
|
||||
import Button from '@mui/material/Button';
|
||||
import axios from "axios";
|
||||
import { Pie, ResponsivePie } from "@nivo/pie";
|
||||
import { getCookie, setCookie } from 'react-use-cookie';
|
||||
import { useHistory } from "react-router-dom";
|
||||
import { DataGrid, GridToolbar, frFR } from '@mui/x-data-grid';
|
||||
|
|
@ -135,6 +136,44 @@ function PaperComponent(props) {
|
|||
);
|
||||
}
|
||||
|
||||
const ProgressBar = ({ bgColor, progress }) => {
|
||||
const containerStyles = {
|
||||
height: 30,
|
||||
|
||||
backgroundColor: "#e0e0de",
|
||||
borderRadius: 10,
|
||||
margin: 10
|
||||
};
|
||||
|
||||
const fillerStyles = {
|
||||
height: "100%",
|
||||
width: `${progress}%`,
|
||||
backgroundColor: bgColor,
|
||||
borderRadius: "inherit",
|
||||
textAlign: "center",
|
||||
paddingTop: '5px',
|
||||
};
|
||||
|
||||
const labelStyles = {
|
||||
padding: 5,
|
||||
color: "white",
|
||||
fontWeight: "bold"
|
||||
};
|
||||
|
||||
return (
|
||||
<div className="progress-bar" style={containerStyles}>
|
||||
<div style={fillerStyles}>
|
||||
<span style={labelStyles}>{progress}%</span>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
};
|
||||
|
||||
const appStyles = {
|
||||
height: 20,
|
||||
width: 500,
|
||||
margin: 50
|
||||
};
|
||||
|
||||
const useStyles = makeStyles((theme) => ({
|
||||
|
||||
|
|
@ -1282,6 +1321,7 @@ const DisplayPartnerSession = (props) => {
|
|||
'Mémo & Comment.',
|
||||
'Env. Code LMS',
|
||||
'Fin Accès LMS',
|
||||
'Suivi LMS',
|
||||
'Annuler Insc.',
|
||||
];
|
||||
|
||||
|
|
@ -1540,6 +1580,12 @@ const DisplayPartnerSession = (props) => {
|
|||
|
||||
setDialog_MAJ_Acces_LMS_open(true);
|
||||
}
|
||||
else if (option && String(option) === "Suivi LMS") {
|
||||
if (working_cellValues.row._id && String(working_cellValues.row._id).length > 5) {
|
||||
Get_LMS_Process_And_Connexion(working_cellValues.row._id)
|
||||
setDialog_Suivi_LMS_open(true);
|
||||
}
|
||||
}
|
||||
|
||||
}}
|
||||
>
|
||||
|
|
@ -15762,6 +15808,130 @@ const DisplayPartnerSession = (props) => {
|
|||
const [p_detail_inscription_comment, setp_detail_inscription_comment] = useState("");
|
||||
const [p_detail_inscription_memo, setp_detail_inscription_memo] = useState("");
|
||||
|
||||
const [Dialog_Suivi_LMS_open, setDialog_Suivi_LMS_open] = useState(false);
|
||||
|
||||
const Close_Dialog_Suivi_LMS_open = () => {
|
||||
// clean_order_detail_fields();
|
||||
setDialog_Suivi_LMS_open(false);
|
||||
};
|
||||
|
||||
|
||||
|
||||
const [user_lms_suivi_progess, setuser_lms_suivi_progess] = useState("");
|
||||
|
||||
const [user_lms_suivi_connexion, setuser_lms_suivi_connexion] = useState("");
|
||||
const [Newuser_lms_suivi_connexion, setNewuser_lms_suivi_connexion] = useState([]);
|
||||
|
||||
|
||||
const [NewGet_LMS_Process_And_Connexion_result, setNewGet_LMS_Process_And_Connexion_result] = useState([]);
|
||||
|
||||
const [Get_LMS_Process_And_Connexion_api, setGet_LMS_Process_And_Connexion_api] = useState();
|
||||
const [Get_LMS_Process_And_Connexion_message, setGet_LMS_Process_And_Connexion_message] = useState();
|
||||
const [Get_LMS_Process_And_Connexion_result, setGet_LMS_Process_And_Connexion_result] = useState([]);
|
||||
function Get_LMS_Process_And_Connexion(local_inscrit_id) {
|
||||
|
||||
var form = new FormData();
|
||||
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
form.append("token", stored_cookie);
|
||||
form.append("tab_inscription_id", local_inscrit_id);
|
||||
|
||||
//console.log(" ### Get_LMS_Process_And_Connexion form = ", form)
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_LMS_Connexion_List_And_Progress_Inscrit/";
|
||||
|
||||
//var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_LMS_Connexion_List_And_Progress_Inscrit_localhost/";
|
||||
|
||||
|
||||
setLoading(true);
|
||||
axios.post(myurl, form).then(res => {
|
||||
|
||||
setLoading(false);
|
||||
if (String(res.data.status) === String("true")) {
|
||||
setLoading(false);
|
||||
//console.log(" In Get_LMS_Process_And_Connexion res.data.status = " + res.data.status);
|
||||
//console.log(" In Get_LMS_Process_And_Connexion res.data.message r_class = " + res.data.message);
|
||||
setGet_LMS_Process_And_Connexion_api("true");
|
||||
setGet_LMS_Process_And_Connexion_result(res.data.message);
|
||||
|
||||
var local_json = JSON.parse(res.data.message);
|
||||
|
||||
|
||||
|
||||
setuser_lms_suivi_connexion(local_json.tab_connexion);
|
||||
setuser_lms_suivi_progess(local_json.tab_process);
|
||||
|
||||
var new_data2 = [];
|
||||
const new_data = local_json.tab_connexion.map((x) => {
|
||||
|
||||
//---
|
||||
var date_connexion = (x).date_connexion;
|
||||
var ip_connexion = (x).ip_connexion;
|
||||
var nom = (x).nom;
|
||||
var prenom = (x).prenom;
|
||||
var inscription_id = (x).inscription_id;
|
||||
|
||||
|
||||
|
||||
//---
|
||||
var node = {
|
||||
"date_connexion": date_connexion,
|
||||
"ip_connexion": ip_connexion,
|
||||
"nom": nom,
|
||||
"prenom": prenom,
|
||||
"inscription_id": inscription_id,
|
||||
};
|
||||
new_data2.push(node);
|
||||
|
||||
|
||||
|
||||
// return {"_id": " + str(local_id) + ", "label": " + local_courrier_template_ref_interne + '" , "courrier_template_ref_interne": "' + local_courrier_template_ref_interne + '", "nom_champ_technique": "' + local_nom_champ_technique + '", "nom_champ_fonctionel": "' + local_nom_champ_fonctionel + '","valide": "1" };
|
||||
|
||||
});
|
||||
|
||||
|
||||
if (new_data2.length > 0)
|
||||
setNewuser_lms_suivi_connexion(new_data2);
|
||||
|
||||
|
||||
}
|
||||
else {
|
||||
setLoading(false);
|
||||
setGet_LMS_Process_And_Connexion_api("false");
|
||||
setGet_LMS_Process_And_Connexion_message(res.data.message);
|
||||
// alert(res.data.message);
|
||||
setdisplay_alert_mysy("1");
|
||||
setalert_message(res.data.message);
|
||||
setalert_type("error");
|
||||
}
|
||||
|
||||
}).catch((error) => {
|
||||
setLoading(false);
|
||||
|
||||
console.warn('Not good man :( Get_LMS_Process_And_Connexion = ', error);
|
||||
setGet_LMS_Process_And_Connexion_api("false");
|
||||
setdisplay_alert_mysy("1");
|
||||
setalert_message(" Impossible de recuperer le suivi LMS");
|
||||
setalert_type("error");
|
||||
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
const data = [
|
||||
|
||||
{
|
||||
id: "vu",
|
||||
label: "vu",
|
||||
value: 5,
|
||||
color: "hsl(186, 70%, 50%)"
|
||||
},
|
||||
{
|
||||
id: "non_vu",
|
||||
label: "non_vu",
|
||||
value: 2,
|
||||
color: "hsl(104, 70%, 50%)"
|
||||
}
|
||||
];
|
||||
|
||||
return (
|
||||
<div className="displaypartnersession">
|
||||
|
|
@ -15782,6 +15952,148 @@ const DisplayPartnerSession = (props) => {
|
|||
{/*** FIN Affichage des messages d'alerte*/}
|
||||
|
||||
|
||||
|
||||
{/********** Dialog pour recherche Apprenant puis facture */}
|
||||
<Dialog
|
||||
open={Dialog_Suivi_LMS_open}
|
||||
//onClose={Dialog_Order_handleClose}
|
||||
className="partner_commande"
|
||||
static
|
||||
onClose={() => null}
|
||||
|
||||
PaperProps={{
|
||||
|
||||
|
||||
className: classes.paper, // Apply the paper style
|
||||
style: {
|
||||
overflowY: 'unset',
|
||||
position: 'absolute',
|
||||
top: '10rem',
|
||||
margin: "2px",
|
||||
maxWidth: 'unset',
|
||||
width: '50rem'
|
||||
},
|
||||
}}
|
||||
hideBackdrop={true}
|
||||
disableScrollLock
|
||||
classes={{
|
||||
paper: classes.dialog
|
||||
}}
|
||||
|
||||
PaperComponent={PaperComponent}
|
||||
aria-labelledby="draggable-dialog-title"
|
||||
>
|
||||
|
||||
{user_lms_suivi_progess && user_lms_suivi_progess.length > 0 && <DialogTitle style={{ cursor: 'move', background: '#fff', fontFamily: 'DM Sans' }} id="draggable-dialog-title"> Suivi LMS de {user_lms_suivi_progess[0].prenom} {user_lms_suivi_progess[0].nom} </DialogTitle>}
|
||||
<DialogContent>
|
||||
|
||||
|
||||
{user_lms_suivi_progess && <div className="div_row" style={{ "width": "100%", }}>
|
||||
|
||||
<div className="Grid_1_col" >
|
||||
|
||||
<div className="Grid_2_col_sub_colone" style={{ minHeight: '10rem', padding: "0px" }}>
|
||||
<div style={{ width: '100%', float: 'left' }}>
|
||||
|
||||
<div className="Grid_2_col_sub_colone_header">
|
||||
Progression
|
||||
</div>
|
||||
|
||||
|
||||
{parseFloat(String(user_lms_suivi_progess[0].pourcentage_progress)/100).toFixed(2) < 0.6 && <ProgressBar bgColor={"#ffb343"} progress={user_lms_suivi_progess[0].pourcentage_progress} />}
|
||||
|
||||
{parseFloat(String(user_lms_suivi_progess[0].pourcentage_progress)/100).toFixed(2) >= 0.6 && parseFloat(String(user_lms_suivi_progess[0].pourcentage_progress)/100).toFixed(2) <= 0.9 && <ProgressBar bgColor={"#ececa3"} progress={user_lms_suivi_progess[0].pourcentage_progress} />}
|
||||
|
||||
|
||||
{parseFloat(String(user_lms_suivi_progess[0].pourcentage_progress)/100).toFixed(2) > 0.9 && <ProgressBar bgColor={"#a5c90f"} progress={user_lms_suivi_progess[0].pourcentage_progress} />}
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</div>}
|
||||
<div className="div_row"> </div>
|
||||
{Newuser_lms_suivi_connexion && Newuser_lms_suivi_connexion.length > 0 && <div className="div_row" >
|
||||
<div className="Grid_1_col" >
|
||||
|
||||
<div className="Grid_2_col_sub_colone" style={{ minHeight: '10rem', padding: "0px" }}>
|
||||
<div style={{ width: '100%', float: 'left' }}>
|
||||
|
||||
<div className="Grid_2_col_sub_colone_header">
|
||||
{Newuser_lms_suivi_connexion.length} Connexions
|
||||
</div>
|
||||
|
||||
<div style={{
|
||||
display: 'flex', flexDirection: 'row', justifyContent: 'flex-start', width: '100%',
|
||||
paddingLeft: '10px', flexWrap: 'wrap', background: '#e0e0de'
|
||||
}}>
|
||||
{Newuser_lms_suivi_connexion.map((connexion) => (
|
||||
<ul style={{ fontSize: '13px', marginBottom: '5px' }}> Le {String(connexion.date_connexion).substring(0, 16)} == > IP. {connexion.ip_connexion}</ul>
|
||||
))}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>}
|
||||
|
||||
{Newuser_lms_suivi_connexion && Newuser_lms_suivi_connexion.length <= 0 && <div className="div_row" >
|
||||
<div className="Grid_1_col" >
|
||||
|
||||
<div className="Grid_2_col_sub_colone" style={{ minHeight: '10rem', padding: "0px" }}>
|
||||
<div style={{ width: '100%', float: 'left' }}>
|
||||
|
||||
<div className="Grid_2_col_sub_colone_header">
|
||||
Aucune Connexion
|
||||
</div>
|
||||
|
||||
<div style={{
|
||||
display: 'flex', flexDirection: 'row', justifyContent: 'flex-start', width: '100%',
|
||||
paddingLeft: '10px', flexWrap: 'wrap', background: '#e0e0de'
|
||||
}}>
|
||||
-----------------
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>}
|
||||
|
||||
|
||||
</DialogContent>
|
||||
|
||||
<DialogActions>
|
||||
|
||||
<IconButton
|
||||
autoFocus
|
||||
onClick={Close_Dialog_Suivi_LMS_open}
|
||||
color="primary"
|
||||
className={classes.customizedButton}
|
||||
>
|
||||
<CancelPresentationIcon />
|
||||
</IconButton>
|
||||
|
||||
|
||||
</DialogActions>
|
||||
</Dialog>
|
||||
|
||||
{/********** FIN Dialog pour recherche Apprenant puis facture */}
|
||||
|
||||
|
||||
|
||||
|
||||
{/* Dialog pour gerer les Memo_Comment */}
|
||||
<Dialog
|
||||
open={Dialog_Memo_Comment_open}
|
||||
|
|
@ -21064,8 +21376,6 @@ const DisplayPartnerSession = (props) => {
|
|||
fontWeight: '700'
|
||||
},
|
||||
|
||||
|
||||
|
||||
'& .line--statut--selected': {
|
||||
backgroundColor: '#e9f7f1',
|
||||
color: '#0a2a4d',
|
||||
|
|
@ -25782,7 +26092,7 @@ const DisplayPartnerSession = (props) => {
|
|||
{String(addOneParticipant) === "1" && <div className="div_row session_data" style={{ "border": "None", "backgroundColor": "#F0F0F0" }}>
|
||||
<div className="titre1"> Ajout d'un nouveau participant à la session <u> {selected_code_session} </u> de la formation <u> {selected_class_title} </u></div>
|
||||
|
||||
<div className="session_caract"> <b> Civilité aa</b><br />
|
||||
<div className="session_caract"> <b> Civilité </b><br />
|
||||
|
||||
{New_civilite.length > 0 && <Autocomplete
|
||||
disablePortal
|
||||
|
|
|
|||
|
|
@ -12672,7 +12672,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
|
||||
{New_Get_List_Partner_Clients_result && New_Get_List_Partner_Clients_result.length > 0 &&
|
||||
String(participant_data_edit_mode) === "1" && <div className="session_caract"> A Facturer 2 <br />
|
||||
String(participant_data_edit_mode) === "1" && <div className="session_caract"> A Facturer <br />
|
||||
|
||||
<Autocomplete
|
||||
disablePortal
|
||||
|
|
|
|||
|
|
@ -168,11 +168,6 @@ const Module_Historique_Action = (props) => {
|
|||
|
||||
))}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</Timeline>
|
||||
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -273,9 +273,18 @@ const Partner_Client = (props) => {
|
|||
|
||||
const [Edite_Client, setEdite_Client] = useState("");
|
||||
const [Client_email, setClient_email] = useState("");
|
||||
|
||||
const [Client_nom, setClient_nom] = useState("");
|
||||
|
||||
|
||||
|
||||
function handleClick_modifier(event, cellValues) {
|
||||
var clientmail = String(cellValues.row.email);
|
||||
setClient_email(clientmail);
|
||||
|
||||
setClient_nom(cellValues.row.nom);
|
||||
|
||||
|
||||
setEdite_Client("1");
|
||||
window.scrollTo({
|
||||
top: 600,
|
||||
|
|
@ -700,6 +709,8 @@ const Partner_Client = (props) => {
|
|||
setselected_id(client_id);
|
||||
|
||||
setClient_email(clientmail);
|
||||
setClient_nom(line.nom);
|
||||
|
||||
setEdite_Client("1");
|
||||
|
||||
window.scrollTo({
|
||||
|
|
@ -1647,9 +1658,10 @@ const Partner_Client = (props) => {
|
|||
|
||||
{String(Edite_Client) === "1" && <div className="div_row" style={{ "paddingRight": "10px" }}>
|
||||
|
||||
<div className="titre1"> Detail client / Financeur <b>{Client_email} </b></div>
|
||||
<div className="titre1"> Détail client / Financeur <b> {Client_nom} - {Client_email} </b></div>
|
||||
|
||||
<AddParnerClient client_mail={Client_email}
|
||||
clien_nom={Client_nom}
|
||||
close_detail_client={close_detail_client}
|
||||
father_scroll_to_top={father_scroll_to_top}
|
||||
client_id={selected_id}
|
||||
|
|
@ -1663,6 +1675,7 @@ const Partner_Client = (props) => {
|
|||
<div className="titre1"> Nouveau client / financeur</div>
|
||||
<div ref={myRef_add_client}> </div>
|
||||
<AddParnerClient client_mail={Client_email}
|
||||
clien_nom={Client_nom}
|
||||
close_detail_client={close_detail_client}
|
||||
new_customer="1"
|
||||
client_id={selected_id}
|
||||
|
|
|
|||
|
|
@ -60,6 +60,16 @@ import {
|
|||
|
||||
} from '@mui/x-data-grid';
|
||||
|
||||
import Timeline from '@mui/lab/Timeline';
|
||||
import TimelineItem from '@mui/lab/TimelineItem';
|
||||
import TimelineSeparator from '@mui/lab/TimelineSeparator';
|
||||
import TimelineConnector from '@mui/lab/TimelineConnector';
|
||||
import TimelineContent from '@mui/lab/TimelineContent';
|
||||
import TimelineDot from '@mui/lab/TimelineDot';
|
||||
import TimelineOppositeContent, {
|
||||
timelineOppositeContentClasses,
|
||||
} from '@mui/lab/TimelineOppositeContent';
|
||||
|
||||
//import { utils, writeFileXLSX } from "xlsx";
|
||||
import { ContextMenu } from "react-contextmenu";
|
||||
|
||||
|
|
@ -913,7 +923,7 @@ const Partner_Facture = (props) => {
|
|||
|
||||
if (String(res.data.status) === "true") {
|
||||
//console.log(" In Get_Given_Line_Of_Partner_Invoice_Line_Data res.data.status = " + res.data.status);
|
||||
// console.log(" In Get_Given_Line_Of_Partner_Invoice_Line_Data res.data.message r_class = " + res.data.message);
|
||||
console.log(" In Get_Given_Line_Of_Partner_Invoice_Line_Data res.data.message r_class = " + res.data.message);
|
||||
setGet_Given_Line_Of_Partner_Invoice_Line_Data_api("true");
|
||||
setGet_Given_Line_Of_Partner_Invoice_Line_Data_result(res.data.message);
|
||||
|
||||
|
|
@ -1051,12 +1061,10 @@ const Partner_Facture = (props) => {
|
|||
}
|
||||
|
||||
|
||||
;
|
||||
|
||||
} else {
|
||||
setdisplay_alert_mysy("1");
|
||||
setalert_message(" Aucune ligne de facture recuperée");
|
||||
setalert_type("error");
|
||||
//setdisplay_alert_mysy("1");
|
||||
//setalert_message(" Aucune ligne de facture recuperée");
|
||||
//setalert_type("error");
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -3061,6 +3069,83 @@ const Partner_Facture = (props) => {
|
|||
})
|
||||
}
|
||||
|
||||
const [Create_Inscrit_Invoice_api, setCreate_Inscrit_Invoice_api] = useState();
|
||||
const [Create_Inscrit_Invoice_message, setCreate_Inscrit_Invoice_message] = useState();
|
||||
const [Create_Inscrit_Invoice_result, setCreate_Inscrit_Invoice_result] = useState();
|
||||
function Create_Inscrit_Invoice() {
|
||||
var form = new FormData();
|
||||
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
|
||||
|
||||
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
form.append("token", stored_cookie);
|
||||
form.append("inscription_id", invoice_inscrit_selected_inscrit_id);
|
||||
form.append("invoice_amount", invoice_inscrit_selected_montant_a_facture);
|
||||
form.append("session_id", invoice_inscrit_selected_session_id);
|
||||
form.append("invoice_date", "");
|
||||
|
||||
|
||||
|
||||
//console.log(" form == ", form);
|
||||
|
||||
var myurl = myurl = process.env.REACT_APP_API_URL + "myclass/api/Create_Inscrit_Invoice/";
|
||||
|
||||
setLoading(true);
|
||||
|
||||
axios.post(myurl, form).then(res => {
|
||||
setLoading(false);
|
||||
//console.log(" In Create_Inscrit_Invoice res.data.status = " + res.data.status);
|
||||
//console.log(" In Create_Inscrit_Invoice res.data.message r_class = " + res.data.message);
|
||||
|
||||
if (String(res.data.status) === String("true")) {
|
||||
|
||||
setCreate_Inscrit_Invoice_api("true");
|
||||
setCreate_Inscrit_Invoice_result(res.data.message);
|
||||
|
||||
Close_Dialog_Rech_Apprenant_Et_Facture_open();
|
||||
|
||||
Get_List_Partner_Clients();
|
||||
Getall_Parter_Invoice_No_Filter();
|
||||
|
||||
|
||||
// alert(res.data.message)
|
||||
setdisplay_alert_mysy("1");
|
||||
setalert_message(res.data.message);
|
||||
setalert_type("success");
|
||||
|
||||
if (document.getElementById('myRef_head')) {
|
||||
var divh = document.getElementById('myRef_head').offsetTop;
|
||||
window.scrollTo({
|
||||
top: divh,
|
||||
behavior: "smooth",
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
else {
|
||||
setCreate_Inscrit_Invoice_api("false");
|
||||
setCreate_Inscrit_Invoice_message(res.data.message);
|
||||
// alert(res.data.message);
|
||||
setdisplay_alert_mysy("1");
|
||||
setalert_message(res.data.message);
|
||||
setalert_type("error");
|
||||
}
|
||||
|
||||
}).catch((error) => {
|
||||
setLoading(false);
|
||||
console.warn('UpdateStagiaireData : Not good man :( Create_Inscrit_Invoice = ' + error);
|
||||
setCreate_Inscrit_Invoice_api("false");
|
||||
// alert(" Impossible d'ajouter ou mettre à jour le paiement ");
|
||||
setdisplay_alert_mysy("1");
|
||||
setalert_message(" Impossible de créer la facture ");
|
||||
setalert_type("error");
|
||||
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
|
||||
const [Dialog_annotation_1_message, setDialog_annotation_1_message] = React.useState(false);
|
||||
const [Dialog_annotation_1_open, setDialog_annotation_1_open] = React.useState(false);
|
||||
|
||||
|
|
@ -4799,19 +4884,44 @@ const Partner_Facture = (props) => {
|
|||
const Close_Dialog_Rech_Apprenant_Et_Facture_open = () => {
|
||||
// clean_order_detail_fields();
|
||||
setDialog_Rech_Apprenant_Et_Facture_open(false);
|
||||
|
||||
clear_apprenant_invoice_fields();
|
||||
};
|
||||
|
||||
function clear_apprenant_invoice_fields() {
|
||||
setinvoice_inscrit_selected_montant_a_facture("0");
|
||||
setinvoice_inscrit_selected_session_id("");
|
||||
setinvoice_inscrit_selected_inscrit_id("");
|
||||
setinvoice_inscrit_selected_reste_a_facture("");
|
||||
setinvoice_inscrit_selected_frais_inscription("");
|
||||
|
||||
setinvoice_inscrit_selected_total_facture("");
|
||||
setNewGetall_TrainingParticipant_List_Invoices_result([])
|
||||
setNewGetall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment_result([{
|
||||
"_id": "",
|
||||
"id": "",
|
||||
"label": "",
|
||||
"email": "",
|
||||
"nom": "",
|
||||
"prenom": "",
|
||||
"apprenant_id": "",
|
||||
}]);
|
||||
setNewGetall_TrainingParticipant_List_Invoices_result([]);
|
||||
|
||||
}
|
||||
|
||||
const [invoice_inscrit_selected_session_id, setinvoice_inscrit_selected_session_id] = useState("");
|
||||
const [invoice_inscrit_selected_inscrit_id, setinvoice_inscrit_selected_inscrit_id] = useState("");
|
||||
const [invoice_inscrit_selected_total_facture, setinvoice_inscrit_selected_total_facture] = useState("");
|
||||
|
||||
const [invoice_inscrit_selected_montant_a_facture, setinvoice_inscrit_selected_montant_a_facture] = useState("");
|
||||
|
||||
const [invoice_inscrit_selected_reste_a_facture, setinvoice_inscrit_selected_reste_a_facture] = useState("");
|
||||
const [invoice_inscrit_selected_frais_inscription, setinvoice_inscrit_selected_frais_inscription] = useState("");
|
||||
|
||||
|
||||
|
||||
const [NewGetall_TrainingParticipant_Reduce_Fields_result, setNewGetall_TrainingParticipant_Reduce_Fields_result] = useState([{
|
||||
const [NewGetall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment_result, setNewGetall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment_result] = useState([{
|
||||
"_id": "",
|
||||
"id": "",
|
||||
"label": "",
|
||||
|
|
@ -4821,10 +4931,11 @@ const Partner_Facture = (props) => {
|
|||
"apprenant_id": "",
|
||||
}]);
|
||||
|
||||
const [Getall_TrainingParticipant_Reduce_Fields_api, setGetall_TrainingParticipant_Reduce_Fields_api] = useState();
|
||||
const [Getall_TrainingParticipant_Reduce_Fields_message, setGetall_TrainingParticipant_Reduce_Fields_message] = useState();
|
||||
const [Getall_TrainingParticipant_Reduce_Fields_result, setGetall_TrainingParticipant_Reduce_Fields_result] = useState([]);
|
||||
function Getall_TrainingParticipant_Reduce_Fields(local_session_id) {
|
||||
// Important, ici on ne va recuperer que la liste des inscrit a une session / promo pour qui il reste de choses a facturer
|
||||
const [Getall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment_api, setGetall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment_api] = useState();
|
||||
const [Getall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment_message, setGetall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment_message] = useState();
|
||||
const [Getall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment_result, setGetall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment_result] = useState([]);
|
||||
function Getall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment(local_session_id) {
|
||||
|
||||
var form = new FormData();
|
||||
|
||||
|
|
@ -4832,8 +4943,8 @@ const Partner_Facture = (props) => {
|
|||
form.append("token", stored_cookie);
|
||||
form.append("session_id", local_session_id);
|
||||
|
||||
//console.log(" ### Getall_TrainingParticipant_Reduce_Fields form = ", form)
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_Insription_From_Session_id_Reduice_Fields_With_Filter/";
|
||||
//console.log(" ### Getall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment form = ", form)
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_Insription_From_Session_id_Reduice_Fields_With_Filter_With_To_Paie/";
|
||||
|
||||
|
||||
setLoading(true);
|
||||
|
|
@ -4842,10 +4953,10 @@ const Partner_Facture = (props) => {
|
|||
setLoading(false);
|
||||
if (String(res.data.status) === String("true")) {
|
||||
setLoading(false);
|
||||
//console.log(" In Getall_TrainingParticipant_Reduce_Fields res.data.status = " + res.data.status);
|
||||
//console.log(" In Getall_TrainingParticipant_Reduce_Fields res.data.message r_class = " + res.data.message);
|
||||
setGetall_TrainingParticipant_Reduce_Fields_api("true");
|
||||
setGetall_TrainingParticipant_Reduce_Fields_result(res.data.message);
|
||||
//console.log(" In Getall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment res.data.status = " + res.data.status);
|
||||
//console.log(" In Getall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment res.data.message r_class = " + res.data.message);
|
||||
setGetall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment_api("true");
|
||||
setGetall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment_result(res.data.message);
|
||||
|
||||
var new_data2 = [];
|
||||
const new_data = res.data.message.map((x) => {
|
||||
|
|
@ -4887,14 +4998,14 @@ const Partner_Facture = (props) => {
|
|||
new_data2.push(node);
|
||||
|
||||
if (new_data2.length > 0)
|
||||
setNewGetall_TrainingParticipant_Reduce_Fields_result(new_data2);
|
||||
setNewGetall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment_result(new_data2);
|
||||
|
||||
|
||||
}
|
||||
else {
|
||||
setLoading(false);
|
||||
setGetall_TrainingParticipant_Reduce_Fields_api("false");
|
||||
setGetall_TrainingParticipant_Reduce_Fields_message(res.data.message);
|
||||
setGetall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment_api("false");
|
||||
setGetall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment_message(res.data.message);
|
||||
// alert(res.data.message);
|
||||
setdisplay_alert_mysy("1");
|
||||
setalert_message(res.data.message);
|
||||
|
|
@ -4904,8 +5015,8 @@ const Partner_Facture = (props) => {
|
|||
}).catch((error) => {
|
||||
setLoading(false);
|
||||
|
||||
console.warn('Not good man :( Getall_TrainingParticipant_Reduce_Fields = ', error);
|
||||
setGetall_TrainingParticipant_Reduce_Fields_api("false");
|
||||
console.warn('Not good man :( Getall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment = ', error);
|
||||
setGetall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment_api("false");
|
||||
setdisplay_alert_mysy("1");
|
||||
setalert_message(" Impossible de recuperer la liste des inscrits");
|
||||
setalert_type("error");
|
||||
|
|
@ -4915,6 +5026,59 @@ const Partner_Facture = (props) => {
|
|||
|
||||
|
||||
|
||||
const [Nb_Invoiced_Inscrit_Of_Session, setNb_Invoiced_Inscrit_Of_Session] = useState("");
|
||||
|
||||
const [Get_Nb_Invoiced_Inscrit_Of_Session_api, setGet_Nb_Invoiced_Inscrit_Of_Session_api] = useState();
|
||||
const [Get_Nb_Invoiced_Inscrit_Of_Session_message, setGet_Nb_Invoiced_Inscrit_Of_Session_message] = useState();
|
||||
const [Get_Nb_Invoiced_Inscrit_Of_Session_result, setGet_Nb_Invoiced_Inscrit_Of_Session_result] = useState([]);
|
||||
function Get_Nb_Invoiced_Inscrit_Of_Session(local_session_id) {
|
||||
|
||||
var form = new FormData();
|
||||
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
form.append("token", stored_cookie);
|
||||
form.append("session_id", local_session_id);
|
||||
|
||||
//console.log(" ### Get_Nb_Invoiced_Inscrit_Of_Session form = ", form)
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_Nb_Insription_From_Session_Full_Invoiced/";
|
||||
|
||||
|
||||
setLoading(true);
|
||||
axios.post(myurl, form).then(res => {
|
||||
|
||||
setLoading(false);
|
||||
if (String(res.data.status) === String("true")) {
|
||||
setLoading(false);
|
||||
//console.log(" In Get_Nb_Invoiced_Inscrit_Of_Session res.data.status = " + res.data.status);
|
||||
// console.log(" In Get_Nb_Invoiced_Inscrit_Of_Session res.data.message r_class = " + res.data.message);
|
||||
setGet_Nb_Invoiced_Inscrit_Of_Session_api("true");
|
||||
setGet_Nb_Invoiced_Inscrit_Of_Session_result(res.data.message);
|
||||
|
||||
setNb_Invoiced_Inscrit_Of_Session(res.data.message);
|
||||
|
||||
}
|
||||
else {
|
||||
setLoading(false);
|
||||
setGet_Nb_Invoiced_Inscrit_Of_Session_api("false");
|
||||
setGet_Nb_Invoiced_Inscrit_Of_Session_message(res.data.message);
|
||||
// alert(res.data.message);
|
||||
setdisplay_alert_mysy("1");
|
||||
setalert_message(res.data.message);
|
||||
setalert_type("error");
|
||||
}
|
||||
|
||||
}).catch((error) => {
|
||||
setLoading(false);
|
||||
|
||||
console.warn('Not good man :( Get_Nb_Invoiced_Inscrit_Of_Session = ', error);
|
||||
setGet_Nb_Invoiced_Inscrit_Of_Session_api("false");
|
||||
setdisplay_alert_mysy("1");
|
||||
setalert_message(" Impossible de recuperer le nombre d'inscrits completement facturé");
|
||||
setalert_type("error");
|
||||
|
||||
})
|
||||
}
|
||||
|
||||
const [NewGetall_TrainingParticipant_List_Invoices_result, setNewGetall_TrainingParticipant_List_Invoices_result] = useState([]);
|
||||
|
||||
const [Getall_TrainingParticipant_List_Invoices_api, setGetall_TrainingParticipant_List_Invoices_api] = useState();
|
||||
|
|
@ -4978,6 +5142,8 @@ const Partner_Facture = (props) => {
|
|||
|
||||
if (new_data2.length > 0)
|
||||
setNewGetall_TrainingParticipant_List_Invoices_result(new_data2);
|
||||
else
|
||||
setNewGetall_TrainingParticipant_List_Invoices_result([]);
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -5074,10 +5240,13 @@ const Partner_Facture = (props) => {
|
|||
|
||||
if (value && value._id) {
|
||||
setinvoice_inscrit_selected_session_id(value._id);
|
||||
Getall_TrainingParticipant_Reduce_Fields(value._id);
|
||||
Getall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment(value._id);
|
||||
Get_Nb_Invoiced_Inscrit_Of_Session(value._id);
|
||||
|
||||
} else {
|
||||
setinvoice_inscrit_selected_session_id("");
|
||||
setGetall_TrainingParticipant_Reduce_Fields_result([[{
|
||||
setNb_Invoiced_Inscrit_Of_Session("")
|
||||
setGetall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment_result([[{
|
||||
"_id": "",
|
||||
"id": "",
|
||||
"label": "",
|
||||
|
|
@ -5085,7 +5254,9 @@ const Partner_Facture = (props) => {
|
|||
"nom": "",
|
||||
"prenom": "",
|
||||
"apprenant_id": "",
|
||||
}]])
|
||||
}]]);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -5099,30 +5270,38 @@ const Partner_Facture = (props) => {
|
|||
/>
|
||||
</div>
|
||||
|
||||
<div className="session_caract_Dialog" style={{ "textAlign": "left", "width": "50%", "height": "5rem", "float": "right" }} > Inscrit <br />
|
||||
{NewGetall_TrainingParticipant_Reduce_Fields_result && NewGetall_TrainingParticipant_Reduce_Fields_result.length > 0 && <Autocomplete
|
||||
<div className="session_caract_Dialog" style={{ "textAlign": "left", "width": "50%", "height": "5rem", "float": "right" }} >
|
||||
<Tooltip className="tooltip_css" id="all_option_01" />
|
||||
<a data-tooltip-id="all_option_01" data-tooltip-html="Affiche uniquement les inscrits avec un reste à facturer">
|
||||
Inscrit <FcInfo />
|
||||
</a>
|
||||
<br />
|
||||
{NewGetall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment_result && NewGetall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment_result.length > 0 && <Autocomplete
|
||||
disablePortal
|
||||
name="ref_session"
|
||||
id="ref_session"
|
||||
fullWidth
|
||||
options={NewGetall_TrainingParticipant_Reduce_Fields_result}
|
||||
options={NewGetall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment_result}
|
||||
|
||||
value={NewGetall_TrainingParticipant_Reduce_Fields_result.filter((data) => (data)._id === String(invoice_inscrit_selected_inscrit_id))[0].label}
|
||||
value={NewGetall_TrainingParticipant_Reduce_Fields_With_Remaining_Paiment_result.filter((data) => (data)._id === String(invoice_inscrit_selected_inscrit_id))[0].label}
|
||||
onChange={(event, value) => {
|
||||
if (value && value._id) {
|
||||
setinvoice_inscrit_selected_inscrit_id(value._id);
|
||||
Getall_TrainingParticipant_List_Invoices(value._id)
|
||||
Getall_TrainingParticipant_List_Invoices(value._id);
|
||||
|
||||
} else {
|
||||
setinvoice_inscrit_selected_inscrit_id("");
|
||||
setNewGetall_TrainingParticipant_List_Invoices_result([]);
|
||||
setGetall_TrainingParticipant_List_Invoices_result([]);
|
||||
setGetall_TrainingParticipant_List_Invoices_result([]);
|
||||
setNb_Invoiced_Inscrit_Of_Session("")
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
}}
|
||||
|
||||
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une session"
|
||||
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
|
||||
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem", color: "#0a2a4d", fontFamily: 'DM Sans' } }}
|
||||
|
||||
/>
|
||||
}
|
||||
|
|
@ -5131,6 +5310,11 @@ const Partner_Facture = (props) => {
|
|||
</div>
|
||||
</div>
|
||||
|
||||
{Nb_Invoiced_Inscrit_Of_Session && Nb_Invoiced_Inscrit_Of_Session.length > 0 &&
|
||||
JSON.parse(Nb_Invoiced_Inscrit_Of_Session).nb_fully_invoiced_inscrit > 0 && <div className="div_row" style={{ "border": "None", "color": "#81bc3a", "textAlign": "center" }} >
|
||||
Insciptions complétement Facturées : {JSON.parse(Nb_Invoiced_Inscrit_Of_Session).nb_fully_invoiced_inscrit} sur / <b>{JSON.parse(Nb_Invoiced_Inscrit_Of_Session).session_nb_inscrit} </b>
|
||||
</div>}
|
||||
|
||||
|
||||
{NewGetall_TrainingParticipant_List_Invoices_result && NewGetall_TrainingParticipant_List_Invoices_result.length > 0 && <div className="div_row" >
|
||||
<div className="Grid_1_col" >
|
||||
|
|
@ -5142,16 +5326,36 @@ const Partner_Facture = (props) => {
|
|||
Liste des factures - {invoice_inscrit_selected_total_facture} €
|
||||
</div>
|
||||
|
||||
<div style={{
|
||||
display: 'flex', flexDirection: 'row', justifyContent: 'flex-start', width: '100%',
|
||||
paddingLeft: '10px', flexWrap: 'wrap'
|
||||
}}>
|
||||
{NewGetall_TrainingParticipant_List_Invoices_result.map((invoice) => (
|
||||
<ul style={{ fontSize: '13px', marginBottom: '5px' }}> Le {invoice.invoice_date}, ref. {invoice.invoice_header_ref_interne},
|
||||
montant : {invoice.order_line_montant_hors_taxes} €</ul>
|
||||
))}
|
||||
|
||||
</div>
|
||||
|
||||
<Timeline
|
||||
sx={{
|
||||
[`& .${timelineOppositeContentClasses.root}`]: {
|
||||
flex: 0.2,
|
||||
},
|
||||
}}
|
||||
>
|
||||
|
||||
{NewGetall_TrainingParticipant_List_Invoices_result &&
|
||||
NewGetall_TrainingParticipant_List_Invoices_result.map((invoice) => (
|
||||
|
||||
<TimelineItem style={{ "fontSize": "12px", "minHeight": "10px", color: '#0a2a4d' }}>
|
||||
<TimelineOppositeContent color="textSecondary" style={{ "fontSize": "12px", "minHeight": "10px", color: '#0a2a4d' }}>
|
||||
{invoice.invoice_date}
|
||||
</TimelineOppositeContent>
|
||||
<TimelineSeparator>
|
||||
<TimelineDot />
|
||||
<TimelineConnector />
|
||||
</TimelineSeparator>
|
||||
<TimelineContent style={{ "fontSize": "12px", color: '#0a2a4d' }}><b>{invoice.invoice_header_ref_interne} :</b> {invoice.order_line_montant_hors_taxes} € </TimelineContent>
|
||||
</TimelineItem>
|
||||
|
||||
))}
|
||||
|
||||
|
||||
</Timeline>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
@ -5162,7 +5366,7 @@ const Partner_Facture = (props) => {
|
|||
<div className="div_row"> </div>
|
||||
|
||||
{invoice_inscrit_selected_inscrit_id && invoice_inscrit_selected_inscrit_id.length > 5 && <div className="div_row" style={{ "width": "100%", }}>
|
||||
<div className="session_caract_Dialog" >Saisir le montant à facturer ( reste à facturer = {invoice_inscrit_selected_reste_a_facture} € )<br />
|
||||
<div className="session_caract_Dialog" > <b> Saisir le montant à facturer </b> ( reste à facturer = {invoice_inscrit_selected_reste_a_facture} € )<br />
|
||||
<TextField
|
||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
||||
|
||||
|
|
@ -5173,8 +5377,9 @@ const Partner_Facture = (props) => {
|
|||
fullWidth
|
||||
//value={p_detail_fin_data_montant}
|
||||
onChange={(e) => {
|
||||
|
||||
}}
|
||||
setinvoice_inscrit_selected_montant_a_facture(e.target.value);
|
||||
}
|
||||
}
|
||||
|
||||
/>
|
||||
</div>
|
||||
|
|
@ -5201,7 +5406,7 @@ const Partner_Facture = (props) => {
|
|||
|
||||
<div className="div_row">
|
||||
<div className="div_row_gauche">
|
||||
<Button onClick={"Add_Dialog_Invoice_Client"} className="bton_enreg_dialog">Ajouter</Button>
|
||||
<Button onClick={Create_Inscrit_Invoice} className="bton_enreg_dialog">Facturer</Button>
|
||||
</div>
|
||||
<div className="div_row_droite" style={{ "textAlign": 'center' }}>
|
||||
<Button onClick={Close_Dialog_Rech_Apprenant_Et_Facture_open} className="bton_annule_dialog" >Annuler</Button>
|
||||
|
|
@ -8082,6 +8287,7 @@ const Partner_Facture = (props) => {
|
|||
</Button>
|
||||
|
||||
<Button variant="outlined" onClick={(e) => {
|
||||
clear_apprenant_invoice_fields();
|
||||
Getall_TrainingSession();
|
||||
setDialog_Rech_Apprenant_Et_Facture_open(true)
|
||||
}}
|
||||
|
|
|
|||
|
|
@ -1816,6 +1816,7 @@
|
|||
|
||||
.session_caract_Dialog {
|
||||
font-family: 'DM Sans';
|
||||
color: #0a2a4d;
|
||||
width: 100%;
|
||||
padding: 5px;
|
||||
float: left;
|
||||
|
|
|
|||
|
|
@ -1816,6 +1816,7 @@
|
|||
|
||||
.session_caract_Dialog {
|
||||
font-family: 'DM Sans';
|
||||
color: #0a2a4d;
|
||||
width: 100%;
|
||||
padding: 5px;
|
||||
float: left;
|
||||
|
|
|
|||
|
|
@ -3061,6 +3061,7 @@
|
|||
|
||||
.session_caract_Dialog {
|
||||
font-family: 'DM Sans';
|
||||
color: #0a2a4d;
|
||||
width: 100%;
|
||||
padding: 5px;
|
||||
float: left;
|
||||
|
|
@ -3071,6 +3072,7 @@
|
|||
}
|
||||
|
||||
.session_caract_Dialog_comment_2_lines {
|
||||
color: #0a2a4d;
|
||||
width: 100%;
|
||||
padding: 5px;
|
||||
float: left;
|
||||
|
|
@ -3081,6 +3083,7 @@
|
|||
}
|
||||
|
||||
.session_caract_Dialog_comment_3_lines {
|
||||
color: #0a2a4d;
|
||||
width: 100%;
|
||||
padding: 5px;
|
||||
float: left;
|
||||
|
|
@ -3092,12 +3095,13 @@
|
|||
|
||||
|
||||
.session_caract_Dialog_DatePicker {
|
||||
|
||||
color: #0a2a4d;
|
||||
width: 99% !important;
|
||||
background-color: #FFFFFF;
|
||||
}
|
||||
|
||||
.session_caract_Dialog_icone_bton_add_reduce {
|
||||
color: #0a2a4d;
|
||||
font-size: large;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2109,6 +2109,7 @@
|
|||
|
||||
.session_caract_Dialog {
|
||||
font-family: 'DM Sans';
|
||||
color: #0a2a4d;
|
||||
width: 100%;
|
||||
padding: 5px;
|
||||
float: left;
|
||||
|
|
|
|||
|
|
@ -1994,6 +1994,7 @@
|
|||
|
||||
.session_caract_Dialog {
|
||||
font-family: 'DM Sans';
|
||||
color: #0a2a4d;
|
||||
width: 100%;
|
||||
padding: 5px;
|
||||
float: left;
|
||||
|
|
|
|||
|
|
@ -1927,6 +1927,7 @@
|
|||
|
||||
.session_caract_Dialog {
|
||||
font-family: 'DM Sans';
|
||||
color: #0a2a4d;
|
||||
width: 100%;
|
||||
padding: 5px;
|
||||
float: left;
|
||||
|
|
|
|||
|
|
@ -1888,6 +1888,7 @@
|
|||
|
||||
.session_caract_Dialog {
|
||||
font-family: 'DM Sans';
|
||||
color: #0a2a4d;
|
||||
width: 100%;
|
||||
padding: 5px;
|
||||
float: left;
|
||||
|
|
|
|||
|
|
@ -1816,6 +1816,7 @@
|
|||
|
||||
.session_caract_Dialog {
|
||||
font-family: 'DM Sans';
|
||||
color: #0a2a4d;
|
||||
width: 100%;
|
||||
padding: 5px;
|
||||
float: left;
|
||||
|
|
|
|||
|
|
@ -1843,6 +1843,7 @@
|
|||
|
||||
.session_caract_Dialog {
|
||||
font-family: 'DM Sans';
|
||||
color: #0a2a4d;
|
||||
width: 100%;
|
||||
padding: 5px;
|
||||
float: left;
|
||||
|
|
|
|||
|
|
@ -1816,6 +1816,7 @@
|
|||
|
||||
.session_caract_Dialog {
|
||||
font-family: 'DM Sans';
|
||||
color: #0a2a4d;
|
||||
width: 100%;
|
||||
padding: 5px;
|
||||
float: left;
|
||||
|
|
|
|||
|
|
@ -2224,6 +2224,7 @@
|
|||
|
||||
.session_caract_Dialog {
|
||||
font-family: 'DM Sans';
|
||||
color: #0a2a4d;
|
||||
width: 100%;
|
||||
padding: 5px;
|
||||
float: left;
|
||||
|
|
|
|||
|
|
@ -27,6 +27,11 @@
|
|||
.css-1ixds2g {
|
||||
height: 2.5rem !important;
|
||||
font-size: small !important;
|
||||
|
||||
word-break: break-all;
|
||||
font-family: "DM Sans";
|
||||
color: #0a2a4d;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.css-1v4ccyo {
|
||||
|
|
@ -1271,7 +1276,7 @@
|
|||
padding-right: 15px;
|
||||
display: block;
|
||||
word-break: break-all;
|
||||
font-family: DM Sans;
|
||||
font-family: "DM Sans";
|
||||
color: #0a2a4d;
|
||||
font-size: small !important;
|
||||
|
||||
|
|
@ -1280,6 +1285,12 @@
|
|||
.css-1ixds2g {
|
||||
font-size: small !important;
|
||||
height: 2rem !important;
|
||||
|
||||
word-break: break-all;
|
||||
font-family: "DM Sans";
|
||||
color: #0a2a4d;
|
||||
font-size: 14px;
|
||||
|
||||
}
|
||||
|
||||
.css-1v4ccyo {
|
||||
|
|
|
|||
Loading…
Reference in New Issue