23/11/2023 - 21h30
parent
6564400cc5
commit
71df408068
|
@ -42,7 +42,7 @@ import img_loading_spin from "./../mysy_img/mysy_spin_loading.gif";
|
||||||
import { Fab } from "@material-ui/core";
|
import { Fab } from "@material-ui/core";
|
||||||
import { IoMdAddCircle, IoIosRemoveCircleOutline } from "react-icons/io";
|
import { IoMdAddCircle, IoIosRemoveCircleOutline } from "react-icons/io";
|
||||||
import { AiTwotoneEdit, AiTwotoneSave } from "react-icons/ai";
|
import { AiTwotoneEdit, AiTwotoneSave } from "react-icons/ai";
|
||||||
|
import { confirmAlert } from 'react-confirm-alert';
|
||||||
import ToggleSwitch from "./ToggleSwitch";
|
import ToggleSwitch from "./ToggleSwitch";
|
||||||
|
|
||||||
const DisplayPartnerSession = (props) => {
|
const DisplayPartnerSession = (props) => {
|
||||||
|
@ -666,6 +666,81 @@ const DisplayPartnerSession = (props) => {
|
||||||
|
|
||||||
]
|
]
|
||||||
|
|
||||||
|
const columns_list_emargement = [
|
||||||
|
{ field: 'id', headerName: 'id', hide: true },
|
||||||
|
{ field: '_id', headerName: '_id', hide: true },
|
||||||
|
{ field: 'date', headerName: 'date', width: 100, hide: true, flex: 1 },
|
||||||
|
{ field: 'sequence_start', headerName: 'Debut', width: 100, hideable: false, flex: 1 },
|
||||||
|
{ field: 'sequence_end', headerName: 'Fin', width: 100, hideable: false, flex: 1 },
|
||||||
|
{ field: 'is_present', headerName: 'Présent', width: 100, hide: false, editable: true, type: 'boolean', },
|
||||||
|
|
||||||
|
{ field: 'email', headerName: 'email', width: 250, hideable: false, flex: 1 },
|
||||||
|
{ field: 'nom', headerName: 'nom', width: 150, hide: false, editable: true },
|
||||||
|
{ field: 'prenom', headerName: 'prenom', width: 150, hide: false, editable: false },
|
||||||
|
|
||||||
|
{
|
||||||
|
field: "valide", headerName: 'Valider',
|
||||||
|
renderCell: (cellValues) => {
|
||||||
|
return (
|
||||||
|
|
||||||
|
<Button
|
||||||
|
|
||||||
|
onClick={(event) => {
|
||||||
|
handleClick_valide_emargement(event, cellValues);
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
<FcApproval />
|
||||||
|
|
||||||
|
</Button>
|
||||||
|
|
||||||
|
);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
]
|
||||||
|
|
||||||
|
const columns_list_evaluation = [
|
||||||
|
{ field: 'id', headerName: 'id', hide: true },
|
||||||
|
{ field: 'email', headerName: 'email', width: 200, hideable: true, resizable: true },
|
||||||
|
{ field: 'nom', headerName: 'nom', width: 200, hide: false, editable: true },
|
||||||
|
{ field: 'prenom', headerName: 'prenom', width: 200, hide: false, editable: false },
|
||||||
|
{
|
||||||
|
field: 'eval_status', headerName: 'Statut', width: 100, editable: false, flex: true,
|
||||||
|
valueFormatter: (params) => {
|
||||||
|
if (String(params.value) === "0")
|
||||||
|
return "Envoyé";
|
||||||
|
else if (String(params.value) === "1")
|
||||||
|
return "Evalué";
|
||||||
|
else
|
||||||
|
return "A envoyer";
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{ field: 'eval_eval', headerName: 'Evaluation', width: 100, editable: false, flex: true },
|
||||||
|
{ field: 'eval_note', headerName: 'Note', width: 100, editable: false, },
|
||||||
|
{ field: 'eval_pedagogie', headerName: 'Pédagogie', width: 100, editable: false, },
|
||||||
|
{ field: 'eval_date', headerName: 'Date evalution', width: 100, editable: false, },
|
||||||
|
{/*
|
||||||
|
field: "valide", headerName: 'Valider',
|
||||||
|
renderCell: (cellValues) => {
|
||||||
|
return (
|
||||||
|
|
||||||
|
<Button
|
||||||
|
|
||||||
|
onClick={(event) => {
|
||||||
|
handleClick_valide_emargement(event, cellValues);
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
<FcApproval />
|
||||||
|
|
||||||
|
</Button>
|
||||||
|
|
||||||
|
);
|
||||||
|
}
|
||||||
|
*/},
|
||||||
|
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
const columns_sequence = [
|
const columns_sequence = [
|
||||||
{ field: 'id', headerName: 'id', hide: true },
|
{ field: 'id', headerName: 'id', hide: true },
|
||||||
{ field: '_id', headerName: '_id', hide: true },
|
{ field: '_id', headerName: '_id', hide: true },
|
||||||
|
@ -1005,6 +1080,8 @@ const DisplayPartnerSession = (props) => {
|
||||||
GetListePreinscrit(cellValues.row._id, cellValues.row.class_internal_url);
|
GetListePreinscrit(cellValues.row._id, cellValues.row.class_internal_url);
|
||||||
|
|
||||||
GetListeInscrit(cellValues.row._id, cellValues.row.class_internal_url);
|
GetListeInscrit(cellValues.row._id, cellValues.row.class_internal_url);
|
||||||
|
|
||||||
|
GetListeEmargement(cellValues.row._id, cellValues.row.class_internal_url);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1043,6 +1120,8 @@ const DisplayPartnerSession = (props) => {
|
||||||
GetListePreinscrit(line._id, line.class_internal_url);
|
GetListePreinscrit(line._id, line.class_internal_url);
|
||||||
|
|
||||||
GetListeInscrit(line._id, line.class_internal_url);
|
GetListeInscrit(line._id, line.class_internal_url);
|
||||||
|
|
||||||
|
GetListeEmargement(line._id, line.class_internal_url);
|
||||||
}
|
}
|
||||||
const [Get_List_Partner_Clients_api, setGet_List_Partner_Clients_api] = useState();
|
const [Get_List_Partner_Clients_api, setGet_List_Partner_Clients_api] = useState();
|
||||||
const [Get_List_Partner_Clients_message, setGet_List_Partner_Clients_message] = useState();
|
const [Get_List_Partner_Clients_message, setGet_List_Partner_Clients_message] = useState();
|
||||||
|
@ -1361,6 +1440,48 @@ const DisplayPartnerSession = (props) => {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
async function submenu_emargement() {
|
||||||
|
setsubmenu("emargement");
|
||||||
|
|
||||||
|
await sleep(5);
|
||||||
|
if (!edit_session_form) {
|
||||||
|
desableSessionFields();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (document.getElementById("emargement")) {
|
||||||
|
document.getElementById("emargement").style.backgroundColor = "#104277";
|
||||||
|
document.getElementById("emargement").style.color = "white";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (document.getElementById("sequence_session")) {
|
||||||
|
document.getElementById("sequence_session").style.backgroundColor = "#d8edfc";
|
||||||
|
document.getElementById("sequence_session").style.color = "black";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (document.getElementById("detail_session")) {
|
||||||
|
document.getElementById("detail_session").style.backgroundColor = "#d8edfc";
|
||||||
|
document.getElementById("detail_session").style.color = "black";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (document.getElementById("inscrit")) {
|
||||||
|
document.getElementById("inscrit").style.backgroundColor = "#d8edfc";
|
||||||
|
document.getElementById("inscrit").style.color = "black";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (document.getElementById("preinscrit")) {
|
||||||
|
document.getElementById("preinscrit").style.backgroundColor = "#d8edfc";
|
||||||
|
document.getElementById("preinscrit").style.color = "black";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
function handleClickSessionManagement(event, cellValues) {
|
function handleClickSessionManagement(event, cellValues) {
|
||||||
var code_session = cellValues.row.code_session;
|
var code_session = cellValues.row.code_session;
|
||||||
setselected_code_session(cellValues.row.code_session);
|
setselected_code_session(cellValues.row.code_session);
|
||||||
|
@ -1375,6 +1496,9 @@ const DisplayPartnerSession = (props) => {
|
||||||
|
|
||||||
GetListePreinscrit(cellValues.row._id, cellValues.row.class_internal_url);
|
GetListePreinscrit(cellValues.row._id, cellValues.row.class_internal_url);
|
||||||
GetListeInscrit(cellValues.row._id, cellValues.row.class_internal_url);
|
GetListeInscrit(cellValues.row._id, cellValues.row.class_internal_url);
|
||||||
|
|
||||||
|
GetListeEmargement(cellValues.row._id, cellValues.row.class_internal_url);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const [selected_code_session, setselected_code_session] = useState();
|
const [selected_code_session, setselected_code_session] = useState();
|
||||||
|
@ -1430,6 +1554,8 @@ const DisplayPartnerSession = (props) => {
|
||||||
GetListePreinscrit(selected_session_id, selected_internal_url);
|
GetListePreinscrit(selected_session_id, selected_internal_url);
|
||||||
GetListeInscrit(selected_session_id, selected_internal_url);
|
GetListeInscrit(selected_session_id, selected_internal_url);
|
||||||
|
|
||||||
|
GetListeEmargement(selected_session_id, selected_internal_url);
|
||||||
|
|
||||||
alert(" Les stagiaires ont été correctement importés");
|
alert(" Les stagiaires ont été correctement importés");
|
||||||
submenu_inscrit();
|
submenu_inscrit();
|
||||||
|
|
||||||
|
@ -1981,6 +2107,7 @@ const DisplayPartnerSession = (props) => {
|
||||||
//setreduction_session("1");
|
//setreduction_session("1");
|
||||||
GetListePreinscrit(selected_session_id, selected_internal_url);
|
GetListePreinscrit(selected_session_id, selected_internal_url);
|
||||||
GetListeInscrit(selected_session_id, selected_internal_url);
|
GetListeInscrit(selected_session_id, selected_internal_url);
|
||||||
|
GetListeEmargement(selected_session_id, selected_internal_url);
|
||||||
|
|
||||||
submenu_inscrit();
|
submenu_inscrit();
|
||||||
One_clearParticipantFields();
|
One_clearParticipantFields();
|
||||||
|
@ -2237,6 +2364,7 @@ const DisplayPartnerSession = (props) => {
|
||||||
setactionmass_insc_val();
|
setactionmass_insc_val();
|
||||||
GetListePreinscrit(selected_session_id, selected_internal_url);
|
GetListePreinscrit(selected_session_id, selected_internal_url);
|
||||||
GetListeInscrit(selected_session_id, selected_internal_url);
|
GetListeInscrit(selected_session_id, selected_internal_url);
|
||||||
|
GetListeEmargement(selected_session_id, selected_internal_url);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2301,6 +2429,7 @@ const DisplayPartnerSession = (props) => {
|
||||||
setDeleteStagiaireData_result(res.data.message);
|
setDeleteStagiaireData_result(res.data.message);
|
||||||
GetListePreinscrit(selected_session_id, selected_internal_url);
|
GetListePreinscrit(selected_session_id, selected_internal_url);
|
||||||
GetListeInscrit(selected_session_id, selected_internal_url);
|
GetListeInscrit(selected_session_id, selected_internal_url);
|
||||||
|
GetListeEmargement(selected_session_id, selected_internal_url);
|
||||||
|
|
||||||
setretval_ch("1");
|
setretval_ch("1");
|
||||||
alert(" La mise à jour été correctement faite.")
|
alert(" La mise à jour été correctement faite.")
|
||||||
|
@ -2537,6 +2666,8 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
|
||||||
GetListePreinscrit(selected_session_id, selected_internal_url);
|
GetListePreinscrit(selected_session_id, selected_internal_url);
|
||||||
GetListeInscrit(selected_session_id, selected_internal_url);
|
GetListeInscrit(selected_session_id, selected_internal_url);
|
||||||
|
|
||||||
|
GetListeEmargement(selected_session_id, selected_internal_url);
|
||||||
|
|
||||||
submenu_inscrit();
|
submenu_inscrit();
|
||||||
|
|
||||||
} else if (String(res.data.status) === String("Err_Connexion")) {
|
} else if (String(res.data.status) === String("Err_Connexion")) {
|
||||||
|
@ -4224,6 +4355,8 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
|
||||||
GetListePreinscrit(selected_session_id, selected_internal_url);
|
GetListePreinscrit(selected_session_id, selected_internal_url);
|
||||||
GetListeInscrit(selected_session_id, selected_internal_url);
|
GetListeInscrit(selected_session_id, selected_internal_url);
|
||||||
|
|
||||||
|
GetListeEmargement(selected_session_id, selected_internal_url);
|
||||||
|
|
||||||
setretval_ch("1");
|
setretval_ch("1");
|
||||||
alert(" La mise à jour été correctement faite.")
|
alert(" La mise à jour été correctement faite.")
|
||||||
}
|
}
|
||||||
|
@ -6869,7 +7002,387 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
|
||||||
const [update_sequence, setupdate_sequence] = useState();
|
const [update_sequence, setupdate_sequence] = useState();
|
||||||
|
|
||||||
|
|
||||||
function submenu_add_automatic_sequence() {
|
/* Recuperation de la liste d'emargement */
|
||||||
|
const [selectionModel_emarg, setSelectionModel_emarg] = React.useState([]);
|
||||||
|
const [rowss_emarg, setRows_emarg] = useState([]);
|
||||||
|
const [GetListePreinscrit_emarg_api, setGetListePreinscrit_emarg_api] = useState();
|
||||||
|
const [GetListePreinscrit_emarg_meassage, setGetListePreinscrit_emarg_meassage] = useState();
|
||||||
|
const [GetListePreinscrit_emarg_result, setGetListePreinscrit_emarg_result] = useState([])
|
||||||
|
function GetListeEmargement(localsessionid, class_internal_url) {
|
||||||
|
clean_old_messages();
|
||||||
|
var form = new FormData();
|
||||||
|
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
|
||||||
|
const stored_cookie = getCookie('tokenmysypart');
|
||||||
|
form.append("token", stored_cookie);
|
||||||
|
form.append("class_internal_url", class_internal_url);
|
||||||
|
form.append("session_id", localsessionid);
|
||||||
|
|
||||||
|
/*
|
||||||
|
|
||||||
|
/!\ : Cette fonction a besoin d'un token actif
|
||||||
|
*/
|
||||||
|
|
||||||
|
if (String(stored_cookie) === String("")) {
|
||||||
|
alert(" La session n'est plus valide ");
|
||||||
|
history.push("/Connexion");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var myurl = process.env.REACT_APP_API_URL + "myclass/api/GetTableauEmargement/";
|
||||||
|
|
||||||
|
setLoading(true);
|
||||||
|
|
||||||
|
fetch(myurl,
|
||||||
|
{
|
||||||
|
method: 'POST',
|
||||||
|
body: form,
|
||||||
|
})
|
||||||
|
.then((data) => data.json())
|
||||||
|
.then((data) => {
|
||||||
|
setLoading(false);
|
||||||
|
//console.log('Success:', data['message'], "data['status'] = ", data['status']);
|
||||||
|
setGetListePreinscrit_emarg_result(data['message']);
|
||||||
|
setRows_emarg(data['message']);
|
||||||
|
if (String(data['status']) === String("Err_Connexion")) {
|
||||||
|
alert('Erreur: ' + data['message']);
|
||||||
|
history.push("/Connexion");
|
||||||
|
}
|
||||||
|
else if (String(data['status']) === String("true")) {
|
||||||
|
setGetListePreinscrit_emarg_api("true");
|
||||||
|
|
||||||
|
} else {
|
||||||
|
//console.log("erreur rrrr:" + data['status'])
|
||||||
|
setGetListePreinscrit_emarg_api("false");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}).catch((error) => {
|
||||||
|
setLoading(false);
|
||||||
|
console.error('Error:', error);
|
||||||
|
setGetListePreinscrit_emarg_api("false");
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
const [actionmass_emarg_val, setactionmass_emarg_val] = useState();
|
||||||
|
const actionmass_emarg = (event) => {
|
||||||
|
const value = event.target.value;
|
||||||
|
|
||||||
|
|
||||||
|
if (String(value) === "valider" || String(value) === "demande emargement") {
|
||||||
|
setactionmass_emarg_val(value);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
setactionmass_emarg_val();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function GetSelectedRows_Emarg_Ids() {
|
||||||
|
|
||||||
|
var tab_tmp = []
|
||||||
|
for (var i = 0; i < selectionModel_emarg.length; i++) {
|
||||||
|
var myid = parseInt(String(selectionModel_emarg[i]));
|
||||||
|
//var line = JSON.parse(rowss[myid]);
|
||||||
|
tab_tmp.push(myid);
|
||||||
|
}
|
||||||
|
return tab_tmp;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
async function actionmass_emarge_Traitemet() {
|
||||||
|
var liste_formation = GetSelectedRows_Emarg_Ids();
|
||||||
|
for (var i = 0; i < liste_formation.length; i++) {
|
||||||
|
var line = JSON.parse(rowss_emarg[liste_formation[i]]);
|
||||||
|
//console.log(" line = ", line);
|
||||||
|
var email = line.email;
|
||||||
|
//console.log(" Traitement de email = ", email);
|
||||||
|
|
||||||
|
if (String(actionmass_emarg_val) === "demande emargement") {
|
||||||
|
ActionMassListEmargement();
|
||||||
|
}
|
||||||
|
await sleep(50)
|
||||||
|
}
|
||||||
|
setSelectionModel_emarg([]);
|
||||||
|
setactionmass_emarg_val();
|
||||||
|
|
||||||
|
GetListeEmargement(selected_session_id, selected_internal_url);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
const [ActionMassListEmargement_api, setActionMassListEmargement_api] = useState();
|
||||||
|
const [ActionMassListEmargement_message, setActionMassListEmargement_message] = useState();
|
||||||
|
const [ActionMassListEmargement_result, setActionMassListEmargement_result] = useState();
|
||||||
|
function ActionMassListEmargement(e) {
|
||||||
|
|
||||||
|
clean_old_messages();
|
||||||
|
if (selectionModel_emarg.length <= 0) {
|
||||||
|
alert(" Selectionnez un enregistrement pour envoyer la demande d'emargement");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var actionenmasse = ""
|
||||||
|
if (document.getElementById("actionmass_emarge")) {
|
||||||
|
actionenmasse = document.getElementById("actionmass_emarge").value;
|
||||||
|
}
|
||||||
|
|
||||||
|
var liste_emargement_id = GetSelectedRowsEmargement();
|
||||||
|
|
||||||
|
//console.log("liste_formation = " + liste_emargement_id);
|
||||||
|
|
||||||
|
var form = new FormData();
|
||||||
|
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
|
||||||
|
const stored_cookie = getCookie('tokenmysypart');
|
||||||
|
form.append("token", stored_cookie);
|
||||||
|
form.append("tab_ids", liste_emargement_id);
|
||||||
|
var myurl = process.env.REACT_APP_API_URL + "myclass/api/EmargementMail/";
|
||||||
|
|
||||||
|
setLoading(true);
|
||||||
|
axios.post(myurl, form).then(res => {
|
||||||
|
setLoading(false);
|
||||||
|
if (String(res.data.status) === String("true")) {
|
||||||
|
//console.log(" In UpdateStagiaireData res.data.status = " + res.data.status);
|
||||||
|
//console.log(" In UpdateStagiaireData res.data.message r_class = " + res.data.message);
|
||||||
|
|
||||||
|
setActionMassListEmargement_api("true");
|
||||||
|
setActionMassListEmargement_result(res.data.message);
|
||||||
|
} else if (String(res.data.status) === String("Err_Connexion")) {
|
||||||
|
alert('Erreur: ' + res.data.message);
|
||||||
|
history.push("/Connexion");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
setActionMassListEmargement_api("false");
|
||||||
|
setActionMassListEmargement_message(res.data.message);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}).catch((error) => {
|
||||||
|
setLoading(false);
|
||||||
|
console.warn('ActionMassListEmargement : Not good man :( mysearchtext = ' + error);
|
||||||
|
setActionMassListEmargement_api("false");
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if (String(actionenmasse) === String("depublier")) {
|
||||||
|
|
||||||
|
alert("depublier");
|
||||||
|
}
|
||||||
|
|
||||||
|
else if (String(actionenmasse) === String("publier")) {
|
||||||
|
alert("publier");
|
||||||
|
}
|
||||||
|
|
||||||
|
else if (String(actionenmasse) === String("supprimer")) {
|
||||||
|
alert("supprimer");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function ConfirmInitListEmargement() {
|
||||||
|
confirmAlert({
|
||||||
|
message: "Confirmez la (re)initialisation de la liste d'emargement ? Toutes les confirmations seront perdues",
|
||||||
|
|
||||||
|
buttons: [
|
||||||
|
{
|
||||||
|
label: 'Oui',
|
||||||
|
onClick: () => { CreateListEmargement() }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: 'Non',
|
||||||
|
onClick: () => { return }
|
||||||
|
|
||||||
|
}
|
||||||
|
],
|
||||||
|
closeOnEscape: false,
|
||||||
|
closeOnClickOutside: false,
|
||||||
|
keyCodeForClose: [8, 32],
|
||||||
|
willUnmount: () => { },
|
||||||
|
afterClose: () => { },
|
||||||
|
onClickOutside: () => { },
|
||||||
|
onKeypress: () => { },
|
||||||
|
onKeypressEscape: () => { },
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
const [CreateListEmargement_api, setCreateListEmargement_api] = useState();
|
||||||
|
const [CreateListEmargement_message, setCreateListEmargement_message] = useState();
|
||||||
|
const [CreateListEmargement_result, setCreateListEmargement_result] = useState();
|
||||||
|
function CreateListEmargement() {
|
||||||
|
clean_old_messages();
|
||||||
|
var form = new FormData();
|
||||||
|
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
|
||||||
|
const stored_cookie = getCookie('tokenmysypart');
|
||||||
|
form.append("token", stored_cookie);
|
||||||
|
form.append("class_internal_url", selected_internal_url);
|
||||||
|
form.append("session_id", selected_session_id);
|
||||||
|
|
||||||
|
//alert(" mysession = "+mysession);
|
||||||
|
|
||||||
|
//var myurl = process.env.REACT_APP_API_URL + "myclass/api/CreateTableauEmargement/";
|
||||||
|
|
||||||
|
// Update du 23/11/2023 : Les emargements sont basé sur les séquence déjà créées
|
||||||
|
var myurl = process.env.REACT_APP_API_URL + "myclass/api/CreateTableauEmargement_From_Sequence/";
|
||||||
|
|
||||||
|
setLoading(true);
|
||||||
|
axios.post(myurl, form).then(res => {
|
||||||
|
|
||||||
|
setLoading(false);
|
||||||
|
if (String(res.data.status) === String("true")) {
|
||||||
|
//console.log(" In UpdateStagiaireData res.data.status = " + res.data.status);
|
||||||
|
//console.log(" In UpdateStagiaireData res.data.message r_class = " + res.data.message);
|
||||||
|
setCreateListEmargement_api("true");
|
||||||
|
setCreateListEmargement_result(res.data.message);
|
||||||
|
GetListeEmargement(selected_session_id, selected_internal_url);
|
||||||
|
|
||||||
|
} else if (String(res.data.status) === String("Err_Connexion")) {
|
||||||
|
alert('Erreur: ' + res.data.message);
|
||||||
|
history.push("/Connexion");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
setCreateListEmargement_api("false");
|
||||||
|
setCreateListEmargement_message(res.data.message);
|
||||||
|
alert(res.data.messag);
|
||||||
|
}
|
||||||
|
|
||||||
|
}).catch((error) => {
|
||||||
|
setLoading(false);
|
||||||
|
console.warn('CreateListEmargement : Not good man :( mysearchtext = ' + error);
|
||||||
|
setCreateListEmargement_api("false");
|
||||||
|
alert(" Impossible d'initialiser la liste d'émargement");
|
||||||
|
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
const [selectedemargement, setselectedemargement] = useState([])
|
||||||
|
function GetSelectedRowsEmargement() {
|
||||||
|
|
||||||
|
var tab_tmp = []
|
||||||
|
|
||||||
|
|
||||||
|
for (var i = 0; i < selectionModel_emarg.length; i++) {
|
||||||
|
var myid = parseInt(String(selectionModel_emarg[i]));
|
||||||
|
tab_tmp.push(JSON.parse(rowss_emarg[myid])._id);
|
||||||
|
|
||||||
|
}
|
||||||
|
setselectedemargement(tab_tmp);
|
||||||
|
return tab_tmp;
|
||||||
|
}
|
||||||
|
|
||||||
|
function DownloadListEmargement(event) {
|
||||||
|
|
||||||
|
const stored_cookie = getCookie('tokenmysypart');
|
||||||
|
|
||||||
|
var nom_liste_emarge = "Liste_Emargement.pdf";
|
||||||
|
|
||||||
|
var url = process.env.REACT_APP_API_URL + "myclass/api/GerneratePDFEmargementList/" + stored_cookie + "/" + selected_session_id + "/" + selected_internal_url;
|
||||||
|
setLoading(true);
|
||||||
|
|
||||||
|
|
||||||
|
axios.get(url, { responseType: 'blob', },)
|
||||||
|
.then((res) => {
|
||||||
|
setLoading(false);
|
||||||
|
fileDownload(res.data, nom_liste_emarge)
|
||||||
|
}).catch((error) => {
|
||||||
|
console.error('Error:', error);
|
||||||
|
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function ConfirmEnvoiListEmargement() {
|
||||||
|
confirmAlert({
|
||||||
|
message: "Confirmez l'envoi des demandes d'emargement aux participants",
|
||||||
|
|
||||||
|
buttons: [
|
||||||
|
{
|
||||||
|
label: 'Oui',
|
||||||
|
onClick: () => { ActionMassListEmargement() }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: 'Non',
|
||||||
|
onClick: () => { return }
|
||||||
|
|
||||||
|
}
|
||||||
|
],
|
||||||
|
closeOnEscape: false,
|
||||||
|
closeOnClickOutside: false,
|
||||||
|
keyCodeForClose: [8, 32],
|
||||||
|
willUnmount: () => { },
|
||||||
|
afterClose: () => { },
|
||||||
|
onClickOutside: () => { },
|
||||||
|
onKeypress: () => { },
|
||||||
|
onKeypressEscape: () => { },
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
const [UpdateStagiaireEmargement_api, setUpdateStagiaireEmargement_api] = useState();
|
||||||
|
const [UpdateStagiaireEmargement_message, setUpdateStagiaireEmargement_message] = useState();
|
||||||
|
const [UpdateStagiaireEmargement_result, setUpdateStagiaireEmargement_result] = useState();
|
||||||
|
function handleClick_valide_emargement(event, cellValues) {
|
||||||
|
|
||||||
|
var date = cellValues.row.date;
|
||||||
|
var email = cellValues.row.email;
|
||||||
|
var matin = cellValues.row.matin;
|
||||||
|
var matin_val = "";
|
||||||
|
var is_present_val = "";
|
||||||
|
|
||||||
|
|
||||||
|
console.log(" ### cellValues.row = ", cellValues.row);
|
||||||
|
var is_present = cellValues.row.is_present;
|
||||||
|
|
||||||
|
if (is_present === true) {
|
||||||
|
is_present_val = "1"
|
||||||
|
} else if (matin === false) {
|
||||||
|
is_present_val = "0"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*console.log(" ### date , email, matin,matin_val, apresmidi, apresmidi_val = ",
|
||||||
|
date, email, matin, matin_val, apresmidi, apresmidi_val);*/
|
||||||
|
|
||||||
|
var form = new FormData();
|
||||||
|
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
|
||||||
|
const stored_cookie = getCookie('tokenmysypart');
|
||||||
|
form.append("token", stored_cookie);
|
||||||
|
form.append("_id", cellValues.row._id);
|
||||||
|
form.append("session_id", selected_session_id);
|
||||||
|
form.append("email", email);
|
||||||
|
form.append("date", date);
|
||||||
|
form.append("is_present", is_present_val);
|
||||||
|
|
||||||
|
console.log(" ## form = ", form);
|
||||||
|
|
||||||
|
var myurl = process.env.REACT_APP_API_URL + "myclass/api/UpdateUserEmargementDate/";
|
||||||
|
|
||||||
|
setLoading(true);
|
||||||
|
axios.post(myurl, form).then(res => {
|
||||||
|
|
||||||
|
setLoading(false);
|
||||||
|
if (String(res.data.status) === String("true")) {
|
||||||
|
//console.log(" In UpdateStagiaireData res.data.status = " + res.data.status);
|
||||||
|
//console.log(" In UpdateStagiaireData res.data.message r_class = " + res.data.message);
|
||||||
|
setUpdateStagiaireEmargement_api("true");
|
||||||
|
setUpdateStagiaireEmargement_result(res.data.message);
|
||||||
|
GetListeEmargement(selected_session_id, selected_internal_url);
|
||||||
|
alert(" La mise à jour a été bien faite");
|
||||||
|
} else if (String(res.data.status) === String("Err_Connexion")) {
|
||||||
|
alert('Erreur: ' + res.data.message);
|
||||||
|
history.push("/Connexion");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
setUpdateStagiaireEmargement_api("false");
|
||||||
|
setUpdateStagiaireEmargement_message(res.data.message);
|
||||||
|
alert(res.data.message);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}).catch((error) => {
|
||||||
|
setLoading(false);
|
||||||
|
console.warn('handleClick_valide_emargement : Not good man :( mysearchtext = ' + error);
|
||||||
|
setUpdateStagiaireEmargement_api("false");
|
||||||
|
alert(" Impossible de valider l'émargement");
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -7821,7 +8334,7 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
|
||||||
<Button variant="outlined" ref={myRef} onClick={submenu_sequence_session} className="detail_class_submenu" id='sequence_session' name='sequence_session'>Séquences </Button>
|
<Button variant="outlined" ref={myRef} onClick={submenu_sequence_session} className="detail_class_submenu" id='sequence_session' name='sequence_session'>Séquences </Button>
|
||||||
<Button variant="outlined" onClick={submenu_preinscrit} className="detail_class_submenu" id='preinscrit' name='preinscrit'>Preinscription ({String(nb_stagiaire_Preinscrit)}) </Button>
|
<Button variant="outlined" onClick={submenu_preinscrit} className="detail_class_submenu" id='preinscrit' name='preinscrit'>Preinscription ({String(nb_stagiaire_Preinscrit)}) </Button>
|
||||||
<Button variant="outlined" onClick={submenu_inscrit} className="detail_class_submenu" id='inscrit' name='inscrit'>Inscription ({String(nb_stagiaire_Inscrit)}) </Button>
|
<Button variant="outlined" onClick={submenu_inscrit} className="detail_class_submenu" id='inscrit' name='inscrit'>Inscription ({String(nb_stagiaire_Inscrit)}) </Button>
|
||||||
|
<Button variant="outlined" onClick={submenu_emargement} className="detail_class_submenu" id='inscrit' name='inscrit'>Emargement </Button>
|
||||||
</div>}
|
</div>}
|
||||||
|
|
||||||
|
|
||||||
|
@ -11545,6 +12058,129 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
|
||||||
|
|
||||||
</div>}
|
</div>}
|
||||||
|
|
||||||
|
{String(submenu) === String("emargement") && <div style={{ "border": "None" }}>
|
||||||
|
|
||||||
|
<div className="div_row" style={{ "textAlign": "right", "marginTop": "0.5rem" }}>
|
||||||
|
<Button className="bton_emarge" onClick={ConfirmInitListEmargement}>Initialiser la liste émargement</Button>
|
||||||
|
<Button className="bton_emarge" onClick={DownloadListEmargement}>Imprimer la liste émargement</Button>
|
||||||
|
<Button className="bton_emarge" onClick={ConfirmEnvoiListEmargement}>Envoyer les demandes d'émargement</Button><br />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className="session_data" style={{ height: 500, width: '100%' }}>
|
||||||
|
<DataGrid
|
||||||
|
checkboxSelection
|
||||||
|
onSelectionModelChange={(newSelectionModel_emarg) => {
|
||||||
|
setSelectionModel_emarg(newSelectionModel_emarg);
|
||||||
|
//console.log("ch selected--" + newSelectionModel_emarg);
|
||||||
|
|
||||||
|
}}
|
||||||
|
|
||||||
|
selectionModel={selectionModel_emarg}
|
||||||
|
localeText={frFR.components.MuiDataGrid.defaultProps.localeText}
|
||||||
|
rows={rowss_emarg.map((item, index) => (
|
||||||
|
{
|
||||||
|
id: index,
|
||||||
|
_id: JSON.parse(item)._id,
|
||||||
|
nom: JSON.parse(item).nom,
|
||||||
|
prenom: JSON.parse(item).prenom,
|
||||||
|
email: JSON.parse(item).email,
|
||||||
|
date: JSON.parse(item).date,
|
||||||
|
matin: JSON.parse(item).matin,
|
||||||
|
apresmidi: JSON.parse(item).apresmidi,
|
||||||
|
|
||||||
|
sequence_start: JSON.parse(item).sequence_start,
|
||||||
|
sequence_end: JSON.parse(item).sequence_end,
|
||||||
|
is_present: JSON.parse(item).is_present,
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
))}
|
||||||
|
|
||||||
|
columns={columns_list_emargement}
|
||||||
|
pageSize={10}
|
||||||
|
className="datagridclass"
|
||||||
|
|
||||||
|
rowsPerPageOptions={[10]}
|
||||||
|
disableSelectionOnClick
|
||||||
|
components={{
|
||||||
|
Toolbar: GridToolbar,
|
||||||
|
}}
|
||||||
|
|
||||||
|
|
||||||
|
/>
|
||||||
|
{selectionModel_emarg && selectionModel_emarg.length >= 1 &&
|
||||||
|
<div className="block_en_mass">
|
||||||
|
<nav className='traitement_mass'>Traitement en masse / Emarge</nav>
|
||||||
|
<select
|
||||||
|
id={"actionmassemarg"} name={"actionmassemarg"}
|
||||||
|
onChange={actionmass_emarg}
|
||||||
|
className="action_mass">
|
||||||
|
<option selected value="n/a">Choisir une action</option>
|
||||||
|
<option value="demande emargement">Demande emargement</option>
|
||||||
|
|
||||||
|
</select>
|
||||||
|
|
||||||
|
{actionmass_emarg_val &&
|
||||||
|
<Popup
|
||||||
|
trigger={<Button className="bton_traiter_en_mass" >
|
||||||
|
<FcAcceptDatabase /> Traiter
|
||||||
|
|
||||||
|
</Button>}
|
||||||
|
modal
|
||||||
|
nested
|
||||||
|
position="center center"
|
||||||
|
>
|
||||||
|
|
||||||
|
{close => (
|
||||||
|
<div>
|
||||||
|
<button className="gest_close" onClick={close}>
|
||||||
|
×
|
||||||
|
</button>
|
||||||
|
<div className="gest_header"> MySy Information </div>
|
||||||
|
<div className="gest_content">
|
||||||
|
{' '}
|
||||||
|
|
||||||
|
Confirmer l'action <b> {actionmass_emarg_val} </b> en masse.
|
||||||
|
</div>
|
||||||
|
<div className="gest_actions">
|
||||||
|
<div style={{ "width": "45%", "float": "left" }}>
|
||||||
|
<button className="gest_bton_popup" onClick={(event) => {
|
||||||
|
actionmass_emarge_Traitemet();
|
||||||
|
close();
|
||||||
|
}}> Valider </button>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div style={{ "width": "45%", "float": "right" }}>
|
||||||
|
<button
|
||||||
|
className="gest_bton_popup"
|
||||||
|
onClick={() => {
|
||||||
|
//console.log('modal closed ');
|
||||||
|
close();
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
Annuler
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
|
</Popup>
|
||||||
|
}
|
||||||
|
<br />
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
}
|
||||||
|
|
||||||
|
<br />
|
||||||
|
{/*<Button className="bton_emarge" onClick={ActionMassListEmargement}>Envoyer les demandes d'emargement</Button><br />
|
||||||
|
*/}
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>}
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1460,10 +1460,6 @@ const DistplayPartnerTraningsPage = (props) => {
|
||||||
|
|
||||||
</div>}
|
</div>}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div className="div_row"> <br /> <br /> </div>
|
|
||||||
|
|
||||||
<div style={{ height: "850 px", "width": "100%" }}>
|
<div style={{ height: "850 px", "width": "100%" }}>
|
||||||
|
|
||||||
{String(myApiResponse) === "False" && <div className='koUpdateData'>
|
{String(myApiResponse) === "False" && <div className='koUpdateData'>
|
||||||
|
|
|
@ -456,12 +456,15 @@ function GestionAdministrative(props) {
|
||||||
const columns_list_emargement = [
|
const columns_list_emargement = [
|
||||||
{ field: 'id', headerName: 'id', hide: true },
|
{ field: 'id', headerName: 'id', hide: true },
|
||||||
{ field: '_id', headerName: '_id', hide: true },
|
{ field: '_id', headerName: '_id', hide: true },
|
||||||
{ field: 'date', headerName: 'date', width: 100, hideable: false, flex: 1 },
|
{ field: 'date', headerName: 'date', width: 100, hide: true, flex: 1 },
|
||||||
|
{ field: 'sequence_start', headerName: 'Debut', width: 100, hideable: false, flex: 1 },
|
||||||
|
{ field: 'sequence_end', headerName: 'Fin', width: 100, hideable: false, flex: 1 },
|
||||||
|
{ field: 'is_present', headerName: 'Présent', width: 100, hide: false, editable: true, type: 'boolean', },
|
||||||
|
|
||||||
{ field: 'email', headerName: 'email', width: 250, hideable: false, flex: 1 },
|
{ field: 'email', headerName: 'email', width: 250, hideable: false, flex: 1 },
|
||||||
{ field: 'nom', headerName: 'nom', width: 150, hide: false, editable: true },
|
{ field: 'nom', headerName: 'nom', width: 150, hide: false, editable: true },
|
||||||
{ field: 'prenom', headerName: 'prenom', width: 150, hide: false, editable: false },
|
{ field: 'prenom', headerName: 'prenom', width: 150, hide: false, editable: false },
|
||||||
{ field: 'matin', headerName: 'Matin', width: 100, hide: false, editable: true, type: 'boolean', },
|
|
||||||
{ field: 'apresmidi', headerName: 'Apres midi', width: 100, hide: false, editable: true, type: 'boolean', },
|
|
||||||
{
|
{
|
||||||
field: "valide", headerName: 'Valider',
|
field: "valide", headerName: 'Valider',
|
||||||
renderCell: (cellValues) => {
|
renderCell: (cellValues) => {
|
||||||
|
@ -599,20 +602,19 @@ function GestionAdministrative(props) {
|
||||||
var email = cellValues.row.email;
|
var email = cellValues.row.email;
|
||||||
var matin = cellValues.row.matin;
|
var matin = cellValues.row.matin;
|
||||||
var matin_val = "";
|
var matin_val = "";
|
||||||
var apresmidi = cellValues.row.apresmidi;
|
var is_present_val = "";
|
||||||
var apresmidi_val = "";
|
|
||||||
|
|
||||||
if (matin === true) {
|
|
||||||
matin_val = "1"
|
console.log(" ### cellValues.row = ", cellValues.row);
|
||||||
|
var is_present = cellValues.row.is_present;
|
||||||
|
|
||||||
|
if (is_present === true) {
|
||||||
|
is_present_val = "1"
|
||||||
} else if (matin === false) {
|
} else if (matin === false) {
|
||||||
matin_val = "0"
|
is_present_val = "0"
|
||||||
}
|
}
|
||||||
|
|
||||||
if (apresmidi === true) {
|
|
||||||
apresmidi_val = "1"
|
|
||||||
} else if (apresmidi === false) {
|
|
||||||
apresmidi_val = "0"
|
|
||||||
}
|
|
||||||
/*console.log(" ### date , email, matin,matin_val, apresmidi, apresmidi_val = ",
|
/*console.log(" ### date , email, matin,matin_val, apresmidi, apresmidi_val = ",
|
||||||
date, email, matin, matin_val, apresmidi, apresmidi_val);*/
|
date, email, matin, matin_val, apresmidi, apresmidi_val);*/
|
||||||
|
|
||||||
|
@ -620,14 +622,13 @@ function GestionAdministrative(props) {
|
||||||
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
|
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
|
||||||
const stored_cookie = getCookie('tokenmysypart');
|
const stored_cookie = getCookie('tokenmysypart');
|
||||||
form.append("token", stored_cookie);
|
form.append("token", stored_cookie);
|
||||||
|
form.append("_id", cellValues.row._id);
|
||||||
form.append("session_id", selected_session_id);
|
form.append("session_id", selected_session_id);
|
||||||
form.append("email", email);
|
form.append("email", email);
|
||||||
form.append("date", date);
|
form.append("date", date);
|
||||||
form.append("matin", matin_val);
|
form.append("is_present", is_present_val);
|
||||||
form.append("apresmidi", apresmidi_val);
|
|
||||||
form.append("class_internal_url", internal_url);
|
console.log(" ## form = ", form);
|
||||||
|
|
||||||
//console.log(" ## form = ", form);
|
|
||||||
|
|
||||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/UpdateUserEmargementDate/";
|
var myurl = process.env.REACT_APP_API_URL + "myclass/api/UpdateUserEmargementDate/";
|
||||||
axios.post(myurl, form).then(res => {
|
axios.post(myurl, form).then(res => {
|
||||||
|
@ -670,17 +671,18 @@ function GestionAdministrative(props) {
|
||||||
var apresmidi = tab_data.apresmidi;
|
var apresmidi = tab_data.apresmidi;
|
||||||
var apresmidi_val = "";
|
var apresmidi_val = "";
|
||||||
|
|
||||||
if (matin === true) {
|
var is_present_val = "";
|
||||||
matin_val = "1"
|
|
||||||
|
var is_present = tab_data.is_present;
|
||||||
|
var is_present = "";
|
||||||
|
|
||||||
|
if (is_present === true) {
|
||||||
|
is_present_val = "1"
|
||||||
} else if (matin === false) {
|
} else if (matin === false) {
|
||||||
matin_val = "0"
|
is_present_val = "0"
|
||||||
}
|
}
|
||||||
|
|
||||||
if (apresmidi === true) {
|
|
||||||
apresmidi_val = "1"
|
|
||||||
} else if (apresmidi === false) {
|
|
||||||
apresmidi_val = "0"
|
|
||||||
}
|
|
||||||
/*console.log(" ### date , email, matin,matin_val, apresmidi, apresmidi_val = ",
|
/*console.log(" ### date , email, matin,matin_val, apresmidi, apresmidi_val = ",
|
||||||
date, email, matin, matin_val, apresmidi, apresmidi_val);*/
|
date, email, matin, matin_val, apresmidi, apresmidi_val);*/
|
||||||
|
|
||||||
|
@ -691,15 +693,16 @@ function GestionAdministrative(props) {
|
||||||
form.append("session_id", mysession);
|
form.append("session_id", mysession);
|
||||||
form.append("email", email);
|
form.append("email", email);
|
||||||
form.append("date", date);
|
form.append("date", date);
|
||||||
form.append("matin", matin_val);
|
form.append("is_present", is_present);
|
||||||
form.append("apresmidi", apresmidi_val);
|
|
||||||
form.append("class_internal_url", internal_url);
|
form.append("class_internal_url", internal_url);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/UpdateUserEmargementDate/";
|
var myurl = process.env.REACT_APP_API_URL + "myclass/api/UpdateUserEmargementDate/";
|
||||||
|
setLoading(true);
|
||||||
axios.post(myurl, form).then(res => {
|
axios.post(myurl, form).then(res => {
|
||||||
|
|
||||||
|
setLoading(false);
|
||||||
if (String(res.data.status) === String("true")) {
|
if (String(res.data.status) === String("true")) {
|
||||||
//console.log(" In UpdateStagiaireData res.data.status = " + res.data.status);
|
//console.log(" In UpdateStagiaireData res.data.status = " + res.data.status);
|
||||||
//console.log(" In UpdateStagiaireData res.data.message r_class = " + res.data.message);
|
//console.log(" In UpdateStagiaireData res.data.message r_class = " + res.data.message);
|
||||||
|
@ -717,7 +720,7 @@ function GestionAdministrative(props) {
|
||||||
}
|
}
|
||||||
|
|
||||||
}).catch((error) => {
|
}).catch((error) => {
|
||||||
|
setLoading(false);
|
||||||
console.warn('handleClick_valide_emargement : Not good man :( mysearchtext = ' + error);
|
console.warn('handleClick_valide_emargement : Not good man :( mysearchtext = ' + error);
|
||||||
setUpdateStagiaireEmargement_api("false");
|
setUpdateStagiaireEmargement_api("false");
|
||||||
|
|
||||||
|
@ -1578,7 +1581,7 @@ function GestionAdministrative(props) {
|
||||||
//console.log(" In Getall_Parter_OR_Default_Session_Steps res.data.message r_class = " + res.data.message);
|
//console.log(" In Getall_Parter_OR_Default_Session_Steps res.data.message r_class = " + res.data.message);
|
||||||
setGetall_Parter_OR_Default_Session_Steps_api("true");
|
setGetall_Parter_OR_Default_Session_Steps_api("true");
|
||||||
setGetall_Parter_OR_Default_Session_Steps_result(res.data.message);
|
setGetall_Parter_OR_Default_Session_Steps_result(res.data.message);
|
||||||
setRows(res.data.message);
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
setGetall_Parter_OR_Default_Session_Steps_api("false");
|
setGetall_Parter_OR_Default_Session_Steps_api("false");
|
||||||
|
@ -1881,10 +1884,15 @@ function GestionAdministrative(props) {
|
||||||
|
|
||||||
//alert(" mysession = "+mysession);
|
//alert(" mysession = "+mysession);
|
||||||
|
|
||||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/CreateTableauEmargement/";
|
//var myurl = process.env.REACT_APP_API_URL + "myclass/api/CreateTableauEmargement/";
|
||||||
|
|
||||||
|
// Update du 23/11/2023 : Les emargements sont basé sur les séquence déjà créées
|
||||||
|
var myurl = process.env.REACT_APP_API_URL + "myclass/api/CreateTableauEmargement_From_Sequence/";
|
||||||
|
|
||||||
|
setLoading(true);
|
||||||
axios.post(myurl, form).then(res => {
|
axios.post(myurl, form).then(res => {
|
||||||
|
|
||||||
|
setLoading(false);
|
||||||
if (String(res.data.status) === String("true")) {
|
if (String(res.data.status) === String("true")) {
|
||||||
//console.log(" In UpdateStagiaireData res.data.status = " + res.data.status);
|
//console.log(" In UpdateStagiaireData res.data.status = " + res.data.status);
|
||||||
//console.log(" In UpdateStagiaireData res.data.message r_class = " + res.data.message);
|
//console.log(" In UpdateStagiaireData res.data.message r_class = " + res.data.message);
|
||||||
|
@ -1903,7 +1911,7 @@ function GestionAdministrative(props) {
|
||||||
}
|
}
|
||||||
|
|
||||||
}).catch((error) => {
|
}).catch((error) => {
|
||||||
|
setLoading(false);
|
||||||
console.warn('CreateListEmargement : Not good man :( mysearchtext = ' + error);
|
console.warn('CreateListEmargement : Not good man :( mysearchtext = ' + error);
|
||||||
setCreateListEmargement_api("false");
|
setCreateListEmargement_api("false");
|
||||||
alert(" Impossible d'initialiser la liste d'émargement");
|
alert(" Impossible d'initialiser la liste d'émargement");
|
||||||
|
@ -2108,7 +2116,7 @@ function GestionAdministrative(props) {
|
||||||
|
|
||||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Add_Update_SessionFormation/";
|
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Add_Update_SessionFormation/";
|
||||||
|
|
||||||
|
setLoading(true);
|
||||||
//console.log(" ### CreateSessionFormation form = ", form);
|
//console.log(" ### CreateSessionFormation form = ", form);
|
||||||
|
|
||||||
//return;
|
//return;
|
||||||
|
@ -2116,7 +2124,7 @@ function GestionAdministrative(props) {
|
||||||
axios.post(myurl, form).then(res => {
|
axios.post(myurl, form).then(res => {
|
||||||
//console.log(" In CreateSessionFormation res.data.status = " + res.data.status);
|
//console.log(" In CreateSessionFormation res.data.status = " + res.data.status);
|
||||||
//console.log(" In CreateSessionFormation res.data.message r_class = " + res.data.message);
|
//console.log(" In CreateSessionFormation res.data.message r_class = " + res.data.message);
|
||||||
|
setLoading(false);
|
||||||
if (String(res.data.status) === String("true")) {
|
if (String(res.data.status) === String("true")) {
|
||||||
setCreateSessionFormation_api("true");
|
setCreateSessionFormation_api("true");
|
||||||
setCreateSessionFormation_result(res.data.message);
|
setCreateSessionFormation_result(res.data.message);
|
||||||
|
@ -2136,7 +2144,7 @@ function GestionAdministrative(props) {
|
||||||
}
|
}
|
||||||
|
|
||||||
}).catch((error) => {
|
}).catch((error) => {
|
||||||
|
setLoading(false);
|
||||||
console.warn('CreateSessionFormation : Not good man :( mysearchtext = ' + error);
|
console.warn('CreateSessionFormation : Not good man :( mysearchtext = ' + error);
|
||||||
setCreateSessionFormation_api("false");
|
setCreateSessionFormation_api("false");
|
||||||
alert(" Impossible d'ajouter ou mettre à jour la sessions");
|
alert(" Impossible d'ajouter ou mettre à jour la sessions");
|
||||||
|
@ -2895,6 +2903,21 @@ function GestionAdministrative(props) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (document.getElementsByName("titre_session")[0]) {
|
||||||
|
document.getElementsByName("titre_session")[0].disabled = true;
|
||||||
|
document.getElementsByName("titre_session")[0].style.backgroundColor = "#ECEFF1";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (document.getElementsByName("emplacement_session")[0]) {
|
||||||
|
document.getElementsByName("emplacement_session")[0].disabled = true;
|
||||||
|
document.getElementsByName("emplacement_session")[0].style.backgroundColor = "#ECEFF1";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (document.getElementsByName("is_bpf_session")[0]) {
|
||||||
|
document.getElementsByName("is_bpf_session")[0].disabled = true;
|
||||||
|
document.getElementsByName("is_bpf_session")[0].style.backgroundColor = "#ECEFF1";
|
||||||
|
}
|
||||||
|
|
||||||
if (document.getElementsByName("distantiel")[0]) {
|
if (document.getElementsByName("distantiel")[0]) {
|
||||||
document.getElementsByName("distantiel")[0].disabled = true;
|
document.getElementsByName("distantiel")[0].disabled = true;
|
||||||
document.getElementsByName("distantiel")[0].style.backgroundColor = "#ECEFF1";
|
document.getElementsByName("distantiel")[0].style.backgroundColor = "#ECEFF1";
|
||||||
|
@ -3024,6 +3047,24 @@ function GestionAdministrative(props) {
|
||||||
document.getElementsByName("sessiondatefininscription")[0].style.backgroundColor = "#FFFFFF ";
|
document.getElementsByName("sessiondatefininscription")[0].style.backgroundColor = "#FFFFFF ";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (document.getElementsByName("titre_session")[0]) {
|
||||||
|
document.getElementsByName("titre_session")[0].disabled = false;
|
||||||
|
document.getElementsByName("titre_session")[0].style.backgroundColor = "#FFFFFF ";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (document.getElementsByName("emplacement_session")[0]) {
|
||||||
|
document.getElementsByName("emplacement_session")[0].disabled = false;
|
||||||
|
document.getElementsByName("emplacement_session")[0].style.backgroundColor = "#FFFFFF ";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (document.getElementsByName("is_bpf_session")[0]) {
|
||||||
|
document.getElementsByName("is_bpf_session")[0].disabled = false;
|
||||||
|
document.getElementsByName("is_bpf_session")[0].style.backgroundColor = "#FFFFFF ";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Pour les champs spécifiques session
|
// Pour les champs spécifiques session
|
||||||
for (let i = 0; i < rows_champs_specifics_session.length; i++) {
|
for (let i = 0; i < rows_champs_specifics_session.length; i++) {
|
||||||
|
@ -3068,6 +3109,15 @@ function GestionAdministrative(props) {
|
||||||
if (document.getElementsByName("distantiel")[0])
|
if (document.getElementsByName("distantiel")[0])
|
||||||
document.getElementsByName("distantiel")[0].value = "";
|
document.getElementsByName("distantiel")[0].value = "";
|
||||||
|
|
||||||
|
if (document.getElementsByName("titre_session")[0])
|
||||||
|
document.getElementsByName("titre_session")[0].value = "";
|
||||||
|
|
||||||
|
if (document.getElementsByName("emplacement_session")[0])
|
||||||
|
document.getElementsByName("emplacement_session")[0].value = "";
|
||||||
|
|
||||||
|
if (document.getElementsByName("is_bpf_session")[0])
|
||||||
|
document.getElementsByName("is_bpf_session")[0].value = "";
|
||||||
|
|
||||||
if (document.getElementsByName("sessiondatedebutinscription")[0])
|
if (document.getElementsByName("sessiondatedebutinscription")[0])
|
||||||
document.getElementsByName("sessiondatedebutinscription")[0].value = "";
|
document.getElementsByName("sessiondatedebutinscription")[0].value = "";
|
||||||
|
|
||||||
|
@ -3123,6 +3173,17 @@ function GestionAdministrative(props) {
|
||||||
if (document.getElementsByName("one_session_status")[0])
|
if (document.getElementsByName("one_session_status")[0])
|
||||||
document.getElementsByName("one_session_status")[0].value = "";
|
document.getElementsByName("one_session_status")[0].value = "";
|
||||||
|
|
||||||
|
if (document.getElementsByName("one_titre_session")[0])
|
||||||
|
document.getElementsByName("one_titre_session")[0].value = "";
|
||||||
|
|
||||||
|
if (document.getElementsByName("one_emplacement_session")[0])
|
||||||
|
document.getElementsByName("one_emplacement_session")[0].value = "";
|
||||||
|
|
||||||
|
if (document.getElementsByName("one_is_bpf_session")[0])
|
||||||
|
document.getElementsByName("one_is_bpf_session")[0].value = "";
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
setone_SessionstartDateInscription();
|
setone_SessionstartDateInscription();
|
||||||
setone_SessionendDateInscription();
|
setone_SessionendDateInscription();
|
||||||
setone_SessionendDate();
|
setone_SessionendDate();
|
||||||
|
@ -3340,11 +3401,14 @@ function GestionAdministrative(props) {
|
||||||
form.append("token", stored_cookie);
|
form.append("token", stored_cookie);
|
||||||
form.append("tab_ids", liste_emargement_id);
|
form.append("tab_ids", liste_emargement_id);
|
||||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/EmargementMail/";
|
var myurl = process.env.REACT_APP_API_URL + "myclass/api/EmargementMail/";
|
||||||
axios.post(myurl, form).then(res => {
|
|
||||||
|
|
||||||
|
setLoading(true);
|
||||||
|
axios.post(myurl, form).then(res => {
|
||||||
|
setLoading(false);
|
||||||
if (String(res.data.status) === String("true")) {
|
if (String(res.data.status) === String("true")) {
|
||||||
//console.log(" In UpdateStagiaireData res.data.status = " + res.data.status);
|
//console.log(" In UpdateStagiaireData res.data.status = " + res.data.status);
|
||||||
//console.log(" In UpdateStagiaireData res.data.message r_class = " + res.data.message);
|
//console.log(" In UpdateStagiaireData res.data.message r_class = " + res.data.message);
|
||||||
|
|
||||||
setActionMassListEmargement_api("true");
|
setActionMassListEmargement_api("true");
|
||||||
setActionMassListEmargement_result(res.data.message);
|
setActionMassListEmargement_result(res.data.message);
|
||||||
} else if (String(res.data.status) === String("Err_Connexion")) {
|
} else if (String(res.data.status) === String("Err_Connexion")) {
|
||||||
|
@ -3358,7 +3422,7 @@ function GestionAdministrative(props) {
|
||||||
}
|
}
|
||||||
|
|
||||||
}).catch((error) => {
|
}).catch((error) => {
|
||||||
|
setLoading(false);
|
||||||
console.warn('ActionMassListEmargement : Not good man :( mysearchtext = ' + error);
|
console.warn('ActionMassListEmargement : Not good man :( mysearchtext = ' + error);
|
||||||
setActionMassListEmargement_api("false");
|
setActionMassListEmargement_api("false");
|
||||||
|
|
||||||
|
@ -4756,7 +4820,7 @@ function GestionAdministrative(props) {
|
||||||
if (String(actionmass_emarg_val) === "demande emargement") {
|
if (String(actionmass_emarg_val) === "demande emargement") {
|
||||||
ActionMassListEmargement();
|
ActionMassListEmargement();
|
||||||
}
|
}
|
||||||
await sleep(100)
|
await sleep(50)
|
||||||
}
|
}
|
||||||
setSelectionModel_emarg([]);
|
setSelectionModel_emarg([]);
|
||||||
setactionmass_emarg_val();
|
setactionmass_emarg_val();
|
||||||
|
@ -6912,8 +6976,8 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
|
||||||
<TextField
|
<TextField
|
||||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
||||||
required
|
required
|
||||||
name="titre_session"
|
name="emplacement_session"
|
||||||
id="titre_session"
|
id="emplacement_session"
|
||||||
select
|
select
|
||||||
InputLabelProps={{
|
InputLabelProps={{
|
||||||
shrink: true,
|
shrink: true,
|
||||||
|
@ -7903,12 +7967,18 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
|
||||||
rows={rowss_emarg.map((item, index) => (
|
rows={rowss_emarg.map((item, index) => (
|
||||||
{
|
{
|
||||||
id: index,
|
id: index,
|
||||||
|
_id: JSON.parse(item)._id,
|
||||||
nom: JSON.parse(item).nom,
|
nom: JSON.parse(item).nom,
|
||||||
prenom: JSON.parse(item).prenom,
|
prenom: JSON.parse(item).prenom,
|
||||||
email: JSON.parse(item).email,
|
email: JSON.parse(item).email,
|
||||||
date: JSON.parse(item).date,
|
date: JSON.parse(item).date,
|
||||||
matin: JSON.parse(item).matin,
|
matin: JSON.parse(item).matin,
|
||||||
apresmidi: JSON.parse(item).apresmidi,
|
apresmidi: JSON.parse(item).apresmidi,
|
||||||
|
|
||||||
|
sequence_start: JSON.parse(item).sequence_start,
|
||||||
|
sequence_end: JSON.parse(item).sequence_end,
|
||||||
|
is_present: JSON.parse(item).is_present,
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
))}
|
))}
|
||||||
|
|
Loading…
Reference in New Issue