25/09/2023 - 12h40
parent
3e02c431c0
commit
c4f170ec00
|
@ -1,18 +0,0 @@
|
||||||
external_code;titre;domaine;description;formateur;objectif;programme;prerequis;cpf;institut_formation;distantiel;presentiel;prix;note;img_url;url;duree;duree_unite;plus_produit;mots_cle;metier;certif;publie;zone_diffusion;pourqui;support;img_banner_detail_class
|
|
||||||
MYSY_Demo_001;Gestion des Base des Données;Informatique;"Le terme « bases de données » est utilisé à tout va, dans les métiers. Mais qu’en est-il exactement ? <l>
|
|
||||||
Qu’est ce qu’une base de données, comment sont-elles utilisées pour améliorer nos actions et processus au quotidien ?<l>
|
|
||||||
Ce cours vous donnera un aperçu et les clés pour aller plus loin.<l><l>
|
|
||||||
|
|
||||||
En maitrisant les concepts définis dans les objectifs pédagogiques, vous pourrez :<l>
|
|
||||||
- Concevoir une base de données relationnelle, <l>
|
|
||||||
- Gérer et Administrer les contenus des bases de données.<l>";iexercice;"Ce cours vous permettra de maitriser les concepts de base pour la manipulation des base de données.<l>
|
|
||||||
En d’autres termes, à la fin de ce module, l’apprenant sera en mesure de :<l>
|
|
||||||
• De se connecter à une base de données de type Mysql et Postgresql<l>
|
|
||||||
• De créer et mettre à jour et supprimer une base de base de données<l>
|
|
||||||
• Créer et mettre jour et supprimer des tables de données, de les lier avec clés<l>
|
|
||||||
• D’insérer, mettre à jour et supprimer des enregistrements.<l>
|
|
||||||
• De créer des requête SQL nécessitant la jonction entre plusieurs tables.<l>";"Dans ce module, plusieurs concepts seront abordés comme : <l>
|
|
||||||
• Une base de données<l>
|
|
||||||
• Les roles, les utilisateurs<l>
|
|
||||||
• Les clés de liaison entre les tables<l>
|
|
||||||
• Les requête SQL<l>";Pour être à l’aise dans ce module, l’apprenant devra maitriser les concepts de base données, de modélisation d’information.;1;iexercice;1;1;1500;5;https://img.mysy-training.com/1000formation/LOGO-FORMATION1000.png;;5;jour;;BDD, relationnel,SQL;Informatique;1;1;;;mixte;
|
|
|
|
@ -1,2 +1,3 @@
|
||||||
nom;raison_sociale;email;adresse;code_postal;ville;pays;siret;telephone;tva;website;invoice_adresse;invoice_code_postal;invoice_email;invoice_nom;invoice_siret;invoice_tva;invoice_ville;invoice_pays
|
nom;raison_sociale;email;adresse;code_postal;ville;pays;siret;telephone;tva;website;invoice_adresse;invoice_code_postal;invoice_email;invoice_nom;invoice_siret;invoice_tva;invoice_ville;invoice_pays
|
||||||
client122;raison_sociale1;email1@mysy-training.fr;2 place du test;75001;Paris;France;Siret1;1010101;;www.client1.fr;invoice_adresse;invoice_code_postal;fact@mysy.fr;invoice_nom_val;invoice_siret_val;invoice_tva;invoice_ville;invoice_pays
|
client_test01;raison_sociale1;email-test01@mysy-training.fr;2 place du test;75001;Paris;France;Siret1;1010101;;www.client_test01.fr;invoice_adresse;invoice_code_postal;fact@mysy.fr;invoice_nom_val;invoice_siret_val;invoice_tva;invoice_ville;invoice_pays
|
||||||
|
client_test02;raison_sociale1;email_test02@mysy-training.fr;2 place du test;75001;Paris;France;Siret1;1010101;;www.client-test02.fr;invoice_adresse;invoice_code_postal;fact@mysy.fr;invoice_nom_val;invoice_siret_val;invoice_tva;invoice_ville;invoice_pays
|
||||||
|
|
|
|
@ -1,5 +1,5 @@
|
||||||
nom;prenom;email;telephone_mobile;telephone;profil;ismanager;superieur_hierarchie_email;civilite;adresse;code_postal;ville;pays;facebook;fonction;linkedin;twitter
|
nom;prenom;email;telephone_mobile;telephone;profil;ismanager;superieur_hierarchie_email;civilite;adresse;code_postal;ville;pays;facebook;fonction;linkedin;twitter
|
||||||
emp_nom01;emp_prenpm02;emp_nom01@mysy.com;6555555;1222222;enseignant;non;email_employe3@mysy.com;M;emp_adresse01;582222;paris01;France;em_face01;emp_fonction01;emp_link01;emp_tiwter01
|
nom_namanger1;Prenom_Mnager1;manager_01@mysy.com;6555555;1222222;directeur;non;;Mme;emp_adresse01;582222;paris01;France;;;;
|
||||||
emp_nom02;emp_prenpm03;emp_nom02@mysy.com;6555555;1222222;enseignant;non;email_employe3@mysy.com;Neutre;emp_adresse02;582223;paris02;France;em_face02;emp_fonction02;emp_link02;emp_tiwter02
|
nom_namanger2;Prenom_Mnager2;manager_02@mysy.com;6555555;1222222;administratif;non;;Neutre;emp_adresse02;582223;paris02;France;;;;
|
||||||
emp_nom03;emp_prenpm04;emp_nom03@mysy.com;6555555;1222222;enseignant;non;email_employe3@mysy.com;;emp_adresse03;582224;paris03;France;em_face03;emp_fonction03;emp_link03;emp_tiwter03
|
emp_test01;prenom01;testnom01@mysy.com;6555555;1222222;enseignant;non;manager_01@mysy.com;M;emp_adresse01;582222;paris01;France;em_face01;emp_fonction01;emp_link01;emp_tiwter01
|
||||||
emp_nom04;emp_prenpm05;emp_nom04@mysy.com;6555555;1222222;enseignant;non;email_employe3@mysy.com;Mme;emp_adresse04;582225;paris04;France;em_face04;emp_fonction04;emp_link04;emp_tiwter04
|
emp_test02;prenom02;testnom02@mysy.com;6555555;1222222;enseignant;non;manager_01@mysy.com;Neutre;emp_adresse02;582223;paris02;France;em_face02;emp_fonction02;emp_link02;emp_tiwter02
|
||||||
|
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
external_code;titre;domaine;description;formateur;objectif;programme;prerequis;cpf;institut_formation;distantiel;presentiel;prix;note;img_url;url;duree;duree_unite;plus_produit;mots_cle;metier;certif;publie;zone_diffusion;pourqui;support;img_banner_detail_class
|
||||||
|
MYSY_Test_AP;PRATICIEN EN AROMATHERAPIE INTEGRATIVE;sante_nat;L’Aromathérapie Intégrative© est un enseignement scientifique qui ne se limite pas à connaître les propriétés des huiles essentielles pour supprimer des symptômes, mais qui intègre leur utilisation dans une stratégie thérapeutique globale de santé, fondée sur une bonne compréhension de l'anatomie, de la physiologie et de la biochimie, afin d’être capable de proposer des solutions individualisées et efficaces.;ÉCOLE FRANCAISE D'AROMATHERAPIE INTEGRATIVE (EFAI);Intégrer les règles de sécurité pour utiliser et conseiller l’usage des huiles essentielles. <l> Faire le lien entre la composition biochimique d’une huile essentielle et ses actions sur l’organisme.<l> Intégrer les bases indispensables de biochimie, d’anatomie et de physiologie humaine. <l> Évaluer une situation d’exclusion réclamant une prise en charge médicale. <l> Analyser une situation et les attentes d’un consultant pour définir une stratégie d’accompagnement adaptée avec des huiles essentielles dans les domaines relevant de sa compétence. <l> Établir une formule parfaitement adaptée à une personne et un problème. <l> Être capable de fabriquer un baume, une crème, une composition huileuse. ;Modules de 3 jours par mois en présentiel. <l> Entrainement à distance avec documents, vidéos et quiz en ligne <l> Evaluation à chaque module sur le programme du module précédent;Le niveau BAC est recommandé mais pas obligatoire. <l>Solide motivation.;0;ÉCOLE FRANCAISE D'AROMATHERAPIE INTEGRATIVE (EFAI);0;1;2590;5;https://img.mysy-training.com/ecole_aroma/img/logo_ecole_arome_vert.jpg;;21;jour;Mode hybride avec présentiel ( théorie, pratique, supports papier) et distanciel asynchrone : vidéos et quiz d'entrainement sur une plateforme dédiée :<l> Groupe de discussion sur messagerie whatsapp. <l> Evaluations pour vérifier l'atteinte des objectifs pédagogiques. <l> Evaluation, finale des compétences <l> Rédaction d'un travail de synthèse avec sujet au choix, à présenter devant un jury extérieur à l'école.;AROMATHERAPIE, HUILES ESSENTIELLES, AROMA;dev_perso;1;1;;• Aux professionnels du bien-être et de la santé qui désirent acquérir un outil complémentaire <l> • Aux particuliers en reconversion professionnelle dans le domaine de la santé et du bien-être <l> • Aux particuliers pour une utilisation familiale ou en démarche personnelle. <l> Inclusion des personnes handicapées.;mixte;
|
||||||
|
MYSY_Test_OP;PRATICIEN EN OLFACTOTHERAPIE;sante_nat;"Les huiles essentielles au service de notre équilibre psycho-émotionnel.<l>
|
||||||
|
Les informations olfactives sont en priorité traitées dans le cerveau par le système limbique qui gère aussi la mémoire émotionnelle.<l>
|
||||||
|
Ainsi une simple odeur peut faire remonter des émotions en lien avec un vécu plus ou moins traumatique, permettant de comprendre quels besoins n’ont pas été entendus et qui causent des souffrances plus ou moins conscientes.<l>
|
||||||
|
L'olfactothérapie invite à se mettre en chemin pour évoluer vers un plus grand respect de Soi et plus de sérénité́ dans la Vie.";ÉCOLE FRANCAISE D'AROMATHERAPIE INTEGRATIVE (EFAI);Maîtriser les règles de sécurité pour utiliser et conseiller l’usage des huiles essentielles. <l> Évaluer une situation d’exclusion réclamant une prise en charge différente. <l> Analyser une situation et les attentes d’un consultant pour définir une stratégie d’accompagnement adaptée avec des huiles essentielles dans les domaines relevant de sa compétence. <l> Proposer une HE parfaitement adaptée à une personne en demande d’accompagnement psycho-émotionnel. ;Modules de 3 jours par mois en présentiel. <l> Entrainement à distance avec documents, vidéos et quiz en ligne ;Aucun prérequis n’est demandé excepté la motivation de partir à la découverte de Soi et de l'Autre.;0;ÉCOLE FRANCAISE D'AROMATHERAPIE INTEGRATIVE (EFAI);0;1;2590;5;https://img.mysy-training.com/ecole_aroma/img/logo_ecole_arome_vert.jpg;;21;jour;Mode hybride avec présentiel ( théorie, expérimentation, supports papier) et distanciel asynchrone : vidéos et quiz d'entrainement sur une plateforme dédiée :<l> Groupe de discussion sur messagerie whatsapp. <l> Entrainements à la consultation avec clients volontaires. <l> Evaluation, finale des compétences <l> Rédaction d'un travail personnel de synthèse.<l> Compte-rendus de 21 séances à rendre dans les mois qui suivent la formation pour obtenir la certification.;OLFACTOTHERAPIE, HUILES ESSENTIELLES;dev_perso;1;1;;"Aucun prérequis n’est demandé, cette formation est ouverte à toute personne motivée à travailler sur elle pour pouvoir mieux accompagner l’Autre.<l>
|
||||||
|
Elle est tout particulièrement conseillée aux sophrologues, praticiens en hypnose, aux psychothérapeutes et praticiens en relation d’aide désirant acquérir un outil complémentaire qui décuplera l’efficacité de leurs propres techniques.";mixte;
|
||||||
|
MYSY_Test_AR;PRATICIEN EN AROMATHERAPIE INTEGRATIVE;sante_nat;L’Aromathérapie Intégrative© est un enseignement scientifique qui ne se limite pas à connaître les propriétés des huiles essentielles pour supprimer des symptômes, mais qui intègre leur utilisation dans une stratégie thérapeutique globale de santé, fondée sur une bonne compréhension de l'anatomie, de la physiologie et de la biochimie, afin d’être capable de proposer des solutions individualisées et efficaces.;ÉCOLE FRANCAISE D'AROMATHERAPIE INTEGRATIVE (EFAI);Intégrer les règles de sécurité pour utiliser et conseiller l’usage des huiles essentielles. <l> Faire le lien entre la composition biochimique d’une huile essentielle et ses actions sur l’organisme.<l> Intégrer les bases indispensables de biochimie, d’anatomie et de physiologie humaine. <l> Évaluer une situation d’exclusion réclamant une prise en charge médicale. <l> Analyser une situation et les attentes d’un consultant pour définir une stratégie d’accompagnement adaptée avec des huiles essentielles dans les domaines relevant de sa compétence. <l> Établir une formule parfaitement adaptée à une personne et un problème. <l> Être capable de fabriquer un baume, une crème, une composition huileuse. ;Modules de 3 jours par mois en présentiel. <l> Entrainement à distance avec documents, vidéos et quiz en ligne <l> Evaluation à chaque module sur le programme du module précédent;Le niveau BAC est recommandé mais pas obligatoire. Solide motivation.;0;ÉCOLE FRANCAISE D'AROMATHERAPIE INTEGRATIVE (EFAI);0;1;1650;5;https://img.mysy-training.com/ecole_aroma/img/logo_ecole_arome_vert.jpg;;12;jour;Mode hybride avec présentiel ( théorie, pratique, supports papier) et distanciel asynchrone : vidéos et quiz d'entrainement sur une plateforme dédiée. <l> Groupe de discussion sur messagerie whatsapp. <l> Evaluations pour vérifier l'atteinte des objectifs pédagogiques. <l> Evaluation, finale des compétences <l> Rédaction d'un travail de synthèse avec sujet au choix.;AROMATHERAPIE, HUILES ESSENTIELLES, AROMA;dev_perso;1;1;;;mixte;
|
|
|
@ -1,66 +0,0 @@
|
||||||
external_code;titre;domaine;description;formateur;objectif;programme;prerequis;cpf;institut_formation;distantiel;presentiel;prix;note;img_url;url;duree;plus_produit;mots_cle;metier;certif;publie;zone_diffusion;pourqui;support;img_banner_detail_class
|
|
||||||
MYSY_0001;TECHNIQUE DE VENTE;vente;"En B to B (business to business), le commercial se positionne plus souvent en tant qu'apporteur de solutions qu'en simple vendeur de produits ou de services. <l>
|
|
||||||
Ce positionnement change profondément la nature de l'acte commercial qui compte alors au moins 3 étapes et peut impliquer plusieurs interlocuteurs dans le processus de décision :<l>
|
|
||||||
|
|
||||||
<g>• Entretien 1 :</g> prise de connaissance mutuelle, recueil d'informations, phase de rédaction de proposition <l>
|
|
||||||
<g>• Entretien 2 : </g>présentation et défense de la proposition<l>
|
|
||||||
|
|
||||||
Chaque entretien de vente a ses propres objectifs et le commercial B to B doit s'y préparer pour éviter de griller les étapes et donc ses chances d'emporter la signature. <l>";MySy Training;"• Utiliser des outils numériques pour augmenter ses ventes en magasin comme à distance <l>
|
|
||||||
• Utiliser des outils d'analyse connectés pour identifier sa cible et analyser son marché<l>
|
|
||||||
• Rendre le client acteur de la vente et de la promotion des produits et des services<l>";"<g>MODULE 1 : LA COMPREHENSION BASIQUE DU PROCESSUS DE VENTE </g> <l>
|
|
||||||
• Vente en B2B ou B2C : modalités applicables par le vendeur et dispositions diverses<l>
|
|
||||||
• Qu’est-ce-que la règle des 4 C dans l’univers de la vente ?<l>
|
|
||||||
• Parlons de l’omnicanalité et de son impact dans l’organisation commerciale<l>
|
|
||||||
|
|
||||||
<g>MODULE 2 : LA PROSPECTION ET LA DECOUVERTE CLIENT</g><l>
|
|
||||||
• Les 4 étapes indispensables de la prospection client <l>
|
|
||||||
• 6 étapes clés pour une prospection commerciale digitale efficace<l>
|
|
||||||
• L’art du Storytelling ou comment raconter une histoire qui fait vendre ! <l>
|
|
||||||
";Aucun prérequis nécessaire pour suivre la formation techniques de vente;1;MySy Training;1;0;1400;5;https://img.mysy-training.com/MYSY-LOGO-BLUE.png;;2;;;vente;1;;;"Toute personne souhaitant entreprendre une carrière commerciale
|
|
||||||
Employés d'un service administratif
|
|
||||||
Vendeurs sédentaires
|
|
||||||
Techniciens";mixte;https://img.mysy-training.com/MYSY-LOGO-BLUE.png
|
|
||||||
MYSY_0002;LES FONDAMENTAUX DU MANAGEMENT;management;"Dans un contexte qui bouge sans cesse, arriver à gérer et maintenir les équipes est devenu un réel défi. <l>
|
|
||||||
Pour vivre pleinement l'expérience du manager, des clés, techniques et méthodes ont été mise en place. <l>
|
|
||||||
Grace à cette formation vous apprendrez et maitriserais les outils nécessaires à votre épanouissement.<l>
|
|
||||||
Grâce à cette formation, soyez prêts à relever vos premiers défis en tant que Manager grâce à un programme complet qui vous permettra de vous approprier votre rôle, et de fédérer vos équipes pour atteindre vos objectifs !<l>";MySy Training;"• Appréhender les enjeux du management <l>
|
|
||||||
• Comprendre et maitriser les rôles et responsabilités du manager<l>
|
|
||||||
• Acquérir les techniques et outils de base du management pour conduire, animer et suivre une équipe<l>";"<g>INTRODUCTION : </g><l>
|
|
||||||
Qu’est-ce que le management ?<l>
|
|
||||||
Les dimensions et axes du management d'aujourd'hui.<l>
|
|
||||||
Le management dans les entreprises<l>
|
|
||||||
|
|
||||||
<g>LEADERSHIP ET MANAGEMENT :</g><l>
|
|
||||||
Un leader doit-il être exemplaire<l>
|
|
||||||
Devenir un maître plutôt qu’un contrôlant<l>
|
|
||||||
Qu'est-ce que le LEADERSHIP<l>
|
|
||||||
|
|
||||||
<g>GESTION DES EQUIPES :</g><l>
|
|
||||||
6 clefs d’une cohésion d’équipe<l>
|
|
||||||
Quel est le style de management le plus efficace<l>
|
|
||||||
Comment fidéliser vos équipes dans le temp<l>
|
|
||||||
|
|
||||||
<g>DEVELOPPER UNE INTELLIGENCE RELATIONNELLE :</g><l>
|
|
||||||
Établir un rapport d'égal à égal pour vous affirmer avec tact<l>
|
|
||||||
Cultiver un regard positif<l>
|
|
||||||
S’affirmer sainement, adopter une attitude constructive<l>
|
|
||||||
";;1;MySy Training;1;0;1300;4;https://img.mysy-training.com/MYSY-LOGO-BLUE.png;;3;"La formation est fondée sur une alternance de présentation de contenu théorique, de mises en pratique (exercices, jeux de rôle) et d’échanges commentés (en binôme et collectifs).<l>
|
|
||||||
La formation est conçue pour favoriser le développement des compétences professionnelles, axée la recherche collective de bonnes pratiques.<l>";;management;1;1;;"Cette formation technique de vente s'adresse à :
|
|
||||||
• Manager en poste,
|
|
||||||
• Toute personne souhaitant aspirant à devenir manager";mixte;https://img.mysy-training.com/MYSY-LOGO-BLUE.png
|
|
||||||
MYSY_0003;AgilePM Foundation;IT;"La formation AgilePM Foundation est conçue pour les personnes qui ont besoin d’un niveau de compréhension général <g>d’Agile Project Management. </g> <l>
|
|
||||||
La formation AgilePM Foundation a pour but de s’assurer qu’un candidat comprend la philosophie, les principes, les processus, les personnes, les produits et les techniques de la gestion de projet Agile. <l>";MySy Training;"A la fin de la formation, le participant doit, entre autre, être capable de :<l>
|
|
||||||
• Comprendre les bases de la philosophie et des principes Agile<l>
|
|
||||||
• Comprendre le cycle de vie d’un projet Agile, incluant les configurations alternatives<l>
|
|
||||||
• Comprendre les produits de projets Agile ainsi que leur utilité<l>
|
|
||||||
• Comprendre les techniques utilisés ainsi que leurs bénéfices et limites<l>
|
|
||||||
• Comprendre les rôles et responsabilités au sein d’un projet Agile<l>";"bases de la philosophie et des principes Agile<l>
|
|
||||||
cycle de vie d’un projet Agile, incluant les configurations alternatives<l>
|
|
||||||
produits de projets Agile ainsi que leur utilité<l>
|
|
||||||
techniques utilisés ainsi que leurs bénéfices et limites<l>
|
|
||||||
les rôles et responsabilités au sein d’un projet Agile<l>";;1;MySy Training;1;1;1150;4;https://img.mysy-training.com/MYSY-LOGO-BLUE.png;;;"1. Nous garantissons une expérience d’apprentissage complète. Notre formation comprend une lecture préparatoire, le manuel (pour les formations en présentiel), des exercices et études de cas et l’examen officiel.<l>
|
|
||||||
2. Nous avons un taux de réussite de 99% à l’examen AgilePM Foundation !<l>
|
|
||||||
3. Profitez de nos 20 années d’expérience dans la formation et le conseil sur les Bonnes Pratiques en Management.<l>
|
|
||||||
4. Nous mettons notre expertise à votre service : les formateurs QRP sont sélectionnés parmi notre réseau de spécialistes. Nos formateurs sont accrédités sur plusieurs bonnes pratiques afin de pouvoir établir des liens entre elles.<l>
|
|
||||||
";"agile;management;agil";IT;1;1;;"• Chef de projet<l>
|
|
||||||
• Membre de l’équipe agile qui cherche à devenir chef de projet Agile<l>";mixte;https://img.mysy-training.com/MYSY-LOGO-BLUE.png
|
|
|
|
@ -1,5 +1,7 @@
|
||||||
formation_code_externe;code_session;date_debut;date_fin;nb_participant;adresse;code_postal;ville;date_debut_inscription;date_fin_inscription;formateur;distanciel;presentiel;prix_session;session_status;lms_class_code;session_etape
|
formation_code_externe;code_session;date_debut;date_fin;nb_participant;adresse;code_postal;ville;date_debut_inscription;date_fin_inscription;formateur;distanciel;presentiel;prix_session;session_status;lms_class_code;session_etape
|
||||||
MYSY_Test_AP;KANA1;11/10/2023;13/10/2023;20;2 passage de la Providence;75020;Paris;01/09/2023;30/09/2023;NBE;1;0;750;1;Apprentissage des Kana;0
|
MYSY_Test_AP;AP_01;11/10/2023;13/10/2023;20;2 passage de la Providence;75020;Paris;01/09/2023;30/09/2023;MySy_Trainer;1;0;750;1;;0
|
||||||
MYSY_Test_AP;KANA2;14/11/2023;16/11/2023;15;2 passage de la Providence;75020;Paris;01/09/2023;30/09/2023;NBE;1;0;750;1;Apprentissage des Kana;0
|
MYSY_Test_AP;AP_02;14/11/2023;16/11/2023;15;2 passage de la Providence;75020;Paris;01/09/2023;30/09/2023;MySy_Trainer;1;0;750;1;;0
|
||||||
MYSY_Test_AP;KANA3;21/11/2023;23/11/2023;10;2 passage de la Providence;75020;Paris;01/09/2023;30/09/2023;NBE;1;0;750;1;Perfectionnement;0
|
MYSY_Test_OP;OP_01;21/11/2023;23/11/2023;10;2 passage de la Providence;75020;Paris;01/09/2023;30/09/2023;MySy_Trainer;1;0;750;1;;0
|
||||||
MYSY_Test_AP;KANA4;28/11/2023;30/11/2023;15;2 passage de la Providence;75020;Paris;01/09/2023;30/09/2023;NBE;1;0;750;1;Perfectionnement;0
|
MYSY_Test_OP;OP_02;28/11/2023;30/11/2023;15;2 passage de la Providence;75020;Paris;01/09/2023;30/09/2023;MySy_Trainer;1;0;750;1;;0
|
||||||
|
MYSY_Test_AR;AR_01;01/03/2024;11/03/2024;5;;;;18/09/2023;29/02/2024;;1;0;;1;;0
|
||||||
|
MYSY_Test_AR;AR_02;02/12/2023;10/12/2023;9;;;;18/09/2023;01/12/2023;;1;0;;1;;0
|
||||||
|
|
|
|
@ -1,3 +0,0 @@
|
||||||
code_session;date_debut;date_fin;nb_participant;adresse;code_postal;ville;session_status;date_debut_inscription;date_fin_inscription;formateur;distanciel;presentiel;prix_session
|
|
||||||
MYSY_1000forma2_s1;01/03/2023;17/03/2023;10;;75000;paris;1;03/01/2023;28/02/2023;MySy Training;1;0;1300
|
|
||||||
MYSY_1000forma2_s2;05/04/2023;07/04/2023;10;;75000;paris;1;03/01/2023;04/04/2023;MySy Training;0;1;1300
|
|
|
|
@ -1,4 +1,7 @@
|
||||||
formation_code_externe;code_session;client_rattachement_email;client_rattachement_nom;prenom;nom;employeur;telephone;email;adresse;code_postal;ville;pays;modefinancement;opco;status;prix
|
formation_code_externe;code_session;client_rattachement_email;client_rattachement_nom;prenom;nom;employeur;telephone;email;adresse;code_postal;ville;pays;modefinancement;opco;status;prix
|
||||||
MYSY_Test_AP;AR01;;;part 2;part nom2;employeur 2;10101;line1@mysy.fr;adresse01;code_postal01;ville01;pays01;modefinancement;opco;0;150
|
MYSY_Test_AP;AP_01;;;part 2;part nom2;employeur 2;10101;AP_01_line1@mysy.fr;adresse01;code_postal01;ville01;pays01;modefinancement;opco;0;150
|
||||||
MYSY_Test_AP;AR01;;;part 3;part nom3;employeur 3;10101;line2@mysy.fr;adresse02;code_postal02;ville02;pays02;modefinancement;;1;180
|
MYSY_Test_AP;AP_01;;;part 3;part nom3;employeur 3;10101;AP_01_line2@mysy.fr;adresse02;code_postal02;ville02;pays02;modefinancement;;1;180
|
||||||
MYSY_Test_AP;AR01;;;part 4;part nom4;employeur 4;10101;line3@mysy.fr;adresse03;code_postal03;ville03;pays03;modefinancement;;0;110
|
MYSY_Test_OP;OP_02;;;part 4;part nom4;employeur 4;10101;OP_02_line3@mysy.fr;adresse03;code_postal03;ville03;pays03;modefinancement;;0;110
|
||||||
|
MYSY_Test_OP;OP_02;;;part 5;part nom5;employeur 5;10102;OP_02_line4@mysy.fr;adresse04;code_postal04;ville04;pays04;modefinancement;;0;1200
|
||||||
|
MYSY_Test_AR;AR_01;;;part 6;part nom6;employeur 6;10103;AR_01_line5@mysy.fr;adresse05;code_postal05;ville05;pays05;modefinancement;;1;800
|
||||||
|
MYSY_Test_AR;AR_02;;;part 7;part nom7;employeur 7;10104;AR_02_line6@mysy.fr;adresse06;code_postal06;ville06;pays06;modefinancement;;0;154
|
||||||
|
|
|
|
@ -1,4 +0,0 @@
|
||||||
formation_code_externe;code_session;client_rattachement_email;client_rattachement_nom;prenom;nom;employeur;telephone;email;adresse;code_postal;ville;pays;modefinancement;opco;status;prix
|
|
||||||
MYSY_Test_AP;AP01;;;part 2;part nom2;employeur 2;10101;line1@mysy.fr;adresse01;code_postal01;ville01;pays01;modefinancement;opco;0;150
|
|
||||||
MYSY_Test_AR;AR02;;;part 3;part nom3;employeur 3;10101;line2@mysy.fr;adresse02;code_postal02;ville02;pays02;modefinancement;;1;180
|
|
||||||
MYSY_Test_AP;AP02;;;part 4;part nom4;employeur 4;10101;line3@mysy.fr;adresse03;code_postal03;ville03;pays03;modefinancement;;0;110
|
|
|
|
@ -1,7 +0,0 @@
|
||||||
prenom;nom;employeur;telephone;email;modefinancement;opco;status;prix
|
|
||||||
part 1;part nom1;employeur 1;10101;billardman1@yahoo.fr;modefinancement;opco;1;120
|
|
||||||
part 2;part nom2;employeur 2;10101;billardman01@hotmail.com;modefinancement;opco;0;120
|
|
||||||
part 3;part nom3;employeur 3;10101;mysy1000formation@gmail.com;modefinancement;;1;120
|
|
||||||
part 4;part nom4;employeur 4;10101;mysytraining@gmail.com;modefinancement;;0;120
|
|
||||||
part 5;part nom5;employeur 5;10101;mysy5discovery@gmail.com;modefinancement;;1;120
|
|
||||||
part 6;part nom6;employeur 6;10101;billardman1@gmail.com;modefinancement;;0;120
|
|
|
|
@ -24,7 +24,8 @@ import parse from 'html-react-parser';
|
||||||
|
|
||||||
import 'react-tooltip/dist/react-tooltip.css'
|
import 'react-tooltip/dist/react-tooltip.css'
|
||||||
import { Tooltip } from 'react-tooltip'
|
import { Tooltip } from 'react-tooltip'
|
||||||
|
import Popup from 'reactjs-popup';
|
||||||
|
import 'reactjs-popup/dist/index.css';
|
||||||
import GestionAdministrative from "./GestionAdministrative";
|
import GestionAdministrative from "./GestionAdministrative";
|
||||||
|
|
||||||
const AddClassManual = (props) => {
|
const AddClassManual = (props) => {
|
||||||
|
@ -209,10 +210,7 @@ const AddClassManual = (props) => {
|
||||||
|
|
||||||
function DeleteClass(event) {
|
function DeleteClass(event) {
|
||||||
|
|
||||||
const confirmBox = window.confirm("Voulez-vous vraiment supprimer cette formation");
|
|
||||||
if (confirmBox === false) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
var code = document.getElementsByName("external_code")[0].value;
|
var code = document.getElementsByName("external_code")[0].value;
|
||||||
|
@ -224,11 +222,11 @@ const AddClassManual = (props) => {
|
||||||
var formData = new FormData();
|
var formData = new FormData();
|
||||||
const stored_cookie = getCookie('tokenmysypart');
|
const stored_cookie = getCookie('tokenmysypart');
|
||||||
formData.append("token", stored_cookie);
|
formData.append("token", stored_cookie);
|
||||||
formData.append("internal_url", props.mytrainingclass['ref']);
|
formData.append("class_internal_url", props.mytrainingclass['ref']);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/disable_class/";
|
var myurl = process.env.REACT_APP_API_URL + "myclass/api/delete_Class_by_internal_url/";
|
||||||
|
|
||||||
fetch(
|
fetch(
|
||||||
myurl,
|
myurl,
|
||||||
|
@ -243,6 +241,8 @@ const AddClassManual = (props) => {
|
||||||
setimportmessage(result['message']);
|
setimportmessage(result['message']);
|
||||||
setmyApiResponse(result['status']);
|
setmyApiResponse(result['status']);
|
||||||
|
|
||||||
|
|
||||||
|
if (String(result['status']) === "true") {
|
||||||
//alert(result['status']+" -- "+myApiResponse+' mess = '+result['message']);
|
//alert(result['status']+" -- "+myApiResponse+' mess = '+result['message']);
|
||||||
document.getElementsByName("external_code")[0].value = "";
|
document.getElementsByName("external_code")[0].value = "";
|
||||||
document.getElementsByName("title")[0].value = "";
|
document.getElementsByName("title")[0].value = "";
|
||||||
|
@ -269,6 +269,21 @@ const AddClassManual = (props) => {
|
||||||
//document.getElementsByName("objectif")[0].value = "";
|
//document.getElementsByName("objectif")[0].value = "";
|
||||||
//document.getElementsByName("programme")[0].value = "";
|
//document.getElementsByName("programme")[0].value = "";
|
||||||
//document.getElementsByName("prerequis")[0].value = "";
|
//document.getElementsByName("prerequis")[0].value = "";
|
||||||
|
alert(" La formation a été correctement supprimée.");
|
||||||
|
history.push({
|
||||||
|
pathname: "/Partner/",
|
||||||
|
state: {
|
||||||
|
current_pack: props.currentpack, local_sub_menu: 'affichage', price: "",
|
||||||
|
period: "", new_pack: ""
|
||||||
|
}
|
||||||
|
});
|
||||||
|
window.location.reload();
|
||||||
|
} else if (String(result['status']) === "false") {
|
||||||
|
alert(result['message']);
|
||||||
|
} else if (String(result['status']) === String("Err_Connexion")) {
|
||||||
|
alert('Erreur: ' + result['message']);
|
||||||
|
history.push("/Connexion");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -734,7 +749,7 @@ const AddClassManual = (props) => {
|
||||||
//alert(result['status'] + " -- " + myApiResponse + ' mess = ' + result['message']);
|
//alert(result['status'] + " -- " + myApiResponse + ' mess = ' + result['message']);
|
||||||
|
|
||||||
if (String(result['status']) === "true") {
|
if (String(result['status']) === "true") {
|
||||||
alert(" La formation a été correctement ajoutée. Vous allez être redirigé vers la liste des formations.");
|
alert(" La formation a été correctement ajoutée / mise à jour. Vous allez être redirigé vers la liste des formations.");
|
||||||
history.push({
|
history.push({
|
||||||
pathname: "/Partner/",
|
pathname: "/Partner/",
|
||||||
state: {
|
state: {
|
||||||
|
@ -1528,7 +1543,53 @@ const AddClassManual = (props) => {
|
||||||
|
|
||||||
|
|
||||||
{String(datamodification) !== String("1") && String(editor_tochange) !== String("1") && <div className="parter_div_filtrer_row_droite" >
|
{String(datamodification) !== String("1") && String(editor_tochange) !== String("1") && <div className="parter_div_filtrer_row_droite" >
|
||||||
<Button variant="contained" onClick={DeleteClass} startIcon={<DeleteIcon />} className="bton_suppr2"> SUPPRIMER LA FORMATION </Button>
|
|
||||||
|
<Popup
|
||||||
|
trigger={
|
||||||
|
<Button variant="contained" startIcon={<DeleteIcon />} className="bton_suppr2"> SUPPRIMER LA FORMATION </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">
|
||||||
|
{' '}
|
||||||
|
|
||||||
|
En confirmant cette opération, la formation sera <i><font color="red"> définitivement supprimée</font></i>. <br />
|
||||||
|
Avant, assurez-vous de n'avoir aucune session rattachée à la formation.
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div className="gest_actions">
|
||||||
|
<div style={{ "width": "45%", "float": "left" }}>
|
||||||
|
<button className="gest_bton_popup" onClick={(event) => {
|
||||||
|
DeleteClass(event);
|
||||||
|
//console.log('modal closed ');
|
||||||
|
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>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
|
|
|
@ -34,6 +34,9 @@ import fileDownload from 'js-file-download'
|
||||||
import { IoAddCircleOutline, IoCloseCircleOutline } from "react-icons/io5";
|
import { IoAddCircleOutline, IoCloseCircleOutline } from "react-icons/io5";
|
||||||
import { AiOutlineUserAdd } from "react-icons/ai";
|
import { AiOutlineUserAdd } from "react-icons/ai";
|
||||||
import PartnerClientActivite from "./PartnerClient_Activite";
|
import PartnerClientActivite from "./PartnerClient_Activite";
|
||||||
|
import Popup from 'reactjs-popup';
|
||||||
|
import 'reactjs-popup/dist/index.css';
|
||||||
|
|
||||||
|
|
||||||
const AddParnerClient = (props) => {
|
const AddParnerClient = (props) => {
|
||||||
const history = useHistory();
|
const history = useHistory();
|
||||||
|
@ -1110,23 +1113,6 @@ const AddParnerClient = (props) => {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function confirm_add_user() {
|
|
||||||
confirmAlert({
|
|
||||||
title: '',
|
|
||||||
message: 'Confirmez la creation du client',
|
|
||||||
buttons: [
|
|
||||||
{
|
|
||||||
label: 'Oui',
|
|
||||||
onClick: () => Add_New_PartnerClient()
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: 'Non',
|
|
||||||
onClick: () => { return }
|
|
||||||
}
|
|
||||||
]
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
const [Add_New_PartnerClient_api, setAdd_New_PartnerClient_api] = useState("");
|
const [Add_New_PartnerClient_api, setAdd_New_PartnerClient_api] = useState("");
|
||||||
|
@ -1226,6 +1212,7 @@ const AddParnerClient = (props) => {
|
||||||
Disable_fields();
|
Disable_fields();
|
||||||
alert(res.data.message);
|
alert(res.data.message);
|
||||||
props.Get_List_Partner_Clients();
|
props.Get_List_Partner_Clients();
|
||||||
|
props.father_scroll_to_top();
|
||||||
props.close_detail_client();
|
props.close_detail_client();
|
||||||
|
|
||||||
|
|
||||||
|
@ -2163,7 +2150,53 @@ const AddParnerClient = (props) => {
|
||||||
|
|
||||||
<div className="div_row">
|
<div className="div_row">
|
||||||
<div className="div_row_gauche">
|
<div className="div_row_gauche">
|
||||||
<Button variant="contained" color="success" className="bton_enreg " onClick={confirm_add_user}>Enregistrer <AiTwotoneSave /> </Button>
|
<Popup
|
||||||
|
trigger={
|
||||||
|
<Button variant="contained" color="success" className="bton_enreg " >Enregistrer <AiTwotoneSave /> </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">
|
||||||
|
{' '}
|
||||||
|
|
||||||
|
Confirmez la création du client. <br />
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div className="gest_actions">
|
||||||
|
<div style={{ "width": "45%", "float": "left" }}>
|
||||||
|
<button className="gest_bton_popup" onClick={(event) => {
|
||||||
|
Add_New_PartnerClient();
|
||||||
|
//console.log('modal closed ');
|
||||||
|
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>
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div className="div_row_droite" style={{ "textAlign": "right" }}>
|
<div className="div_row_droite" style={{ "textAlign": "right" }}>
|
||||||
<Button variant="contained" color="success" className="bton_annule" onClick={close_detail_client}>Fermer</Button>
|
<Button variant="contained" color="success" className="bton_annule" onClick={close_detail_client}>Fermer</Button>
|
||||||
|
|
|
@ -116,13 +116,13 @@ const Config_Documents = (props) => {
|
||||||
<div className="gest_content">
|
<div className="gest_content">
|
||||||
{' '}
|
{' '}
|
||||||
|
|
||||||
En confirmant cette opération, l'employé sera <i><font color="red"> définitivement supprimé</font></i>. <br />
|
En confirmant cette opération, le document sera <i><font color="red"> définitivement supprimé</font></i>. <br />
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div className="gest_actions">
|
<div className="gest_actions">
|
||||||
<div style={{ "width": "45%", "float": "left" }}>
|
<div style={{ "width": "45%", "float": "left" }}>
|
||||||
<button className="gest_bton_popup" onClick={(event) => {
|
<button className="gest_bton_popup" onClick={(event) => {
|
||||||
//handleClick_delete(event, cellValues);
|
handleClick_delete(event, cellValues);
|
||||||
//console.log('modal closed ');
|
//console.log('modal closed ');
|
||||||
close();
|
close();
|
||||||
}}> Valider </button>
|
}}> Valider </button>
|
||||||
|
@ -132,7 +132,7 @@ const Config_Documents = (props) => {
|
||||||
<button
|
<button
|
||||||
className="gest_bton_popup"
|
className="gest_bton_popup"
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
//console.log('modal closed ');
|
console.log('modal closed ');
|
||||||
close();
|
close();
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
|
@ -190,6 +190,68 @@ const Config_Documents = (props) => {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function handleClick_delete(event, cellValues) {
|
||||||
|
// Recuperation du motif du refus :
|
||||||
|
var local_ref_interne = cellValues.row.ref_interne;
|
||||||
|
var local_id = cellValues.row._id;
|
||||||
|
|
||||||
|
|
||||||
|
Delete_Partner_Document_Data(local_id, local_ref_interne);
|
||||||
|
}
|
||||||
|
|
||||||
|
const [Delete_Partner_Document_Data_api, setDelete_Partner_Document_Data_api] = useState();
|
||||||
|
const [Delete_Partner_Document_Data_message, setDelete_Partner_Document_Data_message] = useState();
|
||||||
|
const [Delete_Partner_Document_Data_result, setDelete_Partner_Document_Data_result] = useState();
|
||||||
|
function Delete_Partner_Document_Data(local_id, local_ref_interne) {
|
||||||
|
|
||||||
|
var form = new FormData();
|
||||||
|
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
|
||||||
|
|
||||||
|
|
||||||
|
const stored_cookie = getCookie('tokenmysypart');
|
||||||
|
form.append("token", stored_cookie);
|
||||||
|
form.append("ref_interne", local_ref_interne);
|
||||||
|
form.append("_id", local_id);
|
||||||
|
|
||||||
|
|
||||||
|
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Delete_Partner_Document/";
|
||||||
|
|
||||||
|
axios.post(myurl, form).then(res => {
|
||||||
|
//console.log(" In Delete_Partner_Document_Data res.data.status = " + res.data.status);
|
||||||
|
//console.log(" In Delete_Partner_Document_Data res.data.message r_class = " + res.data.message);
|
||||||
|
|
||||||
|
if (String(res.data.status) === String("true")) {
|
||||||
|
setDelete_Partner_Document_Data_api("true");
|
||||||
|
setDelete_Partner_Document_Data_result(res.data.message);
|
||||||
|
|
||||||
|
Getall_Partner_Document_No_filter();
|
||||||
|
myRef_head.current.scrollIntoView({ behavior: "smooth" });
|
||||||
|
setpartner_document_data_edit_mode();
|
||||||
|
setpartner_document_data_changed();
|
||||||
|
clear_detail_fields();
|
||||||
|
setsubmenu();
|
||||||
|
setdisplay_partner_document();
|
||||||
|
setdisplay_detail_document();
|
||||||
|
setSelectionModel([]);
|
||||||
|
|
||||||
|
alert(" Le document a été correctement supprimé.")
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
setDelete_Partner_Document_Data_api("false");
|
||||||
|
setDelete_Partner_Document_Data_message(res.data.message);
|
||||||
|
alert(res.data.message);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}).catch((error) => {
|
||||||
|
|
||||||
|
console.warn('Delete_Partner_Document_Data : Not good man :( mysearchtext = ' + error);
|
||||||
|
setDelete_Partner_Document_Data_api("false");
|
||||||
|
alert(" Impossible de supprimer le document");
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
const [selected_id, setselected_id] = useState();
|
const [selected_id, setselected_id] = useState();
|
||||||
|
@ -208,7 +270,7 @@ const Config_Documents = (props) => {
|
||||||
|
|
||||||
setselected_template_ref_interne(line.ref_interne);
|
setselected_template_ref_interne(line.ref_interne);
|
||||||
|
|
||||||
console.log(" ### line.ref_interne = ", line.ref_interne);
|
//console.log(" ### line.ref_interne = ", line.ref_interne);
|
||||||
Get_Partner_Document_Data(document_id);
|
Get_Partner_Document_Data(document_id);
|
||||||
|
|
||||||
if (myRef.current) {
|
if (myRef.current) {
|
||||||
|
|
|
@ -147,7 +147,7 @@ const DisplayPartnerSession = (props) => {
|
||||||
return "???";
|
return "???";
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{ field: 'class_external_code', headerName: 'Code Formation', align: "center", hideable: true, flex: 1, hide: true, },
|
{ field: 'class_external_code', headerName: 'Code Formation', align: "center", hideable: true, flex: 1, hide: false, },
|
||||||
{ field: 'date_debut', headerName: 'Debut', hide: false, width: datagrid_columns_size_model2, },
|
{ field: 'date_debut', headerName: 'Debut', hide: false, width: datagrid_columns_size_model2, },
|
||||||
{ field: 'date_fin', headerName: 'Fin', hideable: false, width: datagrid_columns_size_model2, },
|
{ field: 'date_fin', headerName: 'Fin', hideable: false, width: datagrid_columns_size_model2, },
|
||||||
{
|
{
|
||||||
|
@ -5336,7 +5336,7 @@ const DisplayPartnerSession = (props) => {
|
||||||
</Button>}
|
</Button>}
|
||||||
|
|
||||||
{edit_session_form && selected_session_id &&
|
{edit_session_form && selected_session_id &&
|
||||||
<Button variant="contained" className="bton_enreg" onClick={CreateSessionFormation}>Enregistrer les modifications aa
|
<Button variant="contained" className="bton_enreg" onClick={CreateSessionFormation}>Enregistrer les modifications
|
||||||
</Button>}
|
</Button>}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
@ -228,8 +228,6 @@ const DisplayPartnerStagiaires = (props) => {
|
||||||
|
|
||||||
function handleClick_delete(event, cellValues) {
|
function handleClick_delete(event, cellValues) {
|
||||||
// Recuperation du motif du refus :
|
// Recuperation du motif du refus :
|
||||||
|
|
||||||
|
|
||||||
var nom = cellValues.row.nom;
|
var nom = cellValues.row.nom;
|
||||||
var email = cellValues.row.email;
|
var email = cellValues.row.email;
|
||||||
var prenom = cellValues.row.prenom;
|
var prenom = cellValues.row.prenom;
|
||||||
|
@ -1594,22 +1592,23 @@ const DisplayPartnerStagiaires = (props) => {
|
||||||
|
|
||||||
const [addOneParticipant, setaddOneParticipant] = useState();
|
const [addOneParticipant, setaddOneParticipant] = useState();
|
||||||
const status_inscription = [
|
const status_inscription = [
|
||||||
{
|
|
||||||
value: '1',
|
|
||||||
label: 'Inscription',
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
value: '0',
|
value: '0',
|
||||||
label: 'PréInscription',
|
label: 'PréInscription',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
value: '-1',
|
value: '1',
|
||||||
label: 'Annulation',
|
label: 'Inscription',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
value: '2',
|
value: '2',
|
||||||
label: 'En Cours',
|
label: 'En Cours',
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
value: '-1',
|
||||||
|
label: 'Annulation',
|
||||||
|
},
|
||||||
|
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -2776,6 +2775,7 @@ const DisplayPartnerStagiaires = (props) => {
|
||||||
<MenuItem value="nom" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Nom </MenuItem>
|
<MenuItem value="nom" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Nom </MenuItem>
|
||||||
<MenuItem value="code_session" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }}>Code Session </MenuItem>
|
<MenuItem value="code_session" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }}>Code Session </MenuItem>
|
||||||
<MenuItem value="class_title" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Titre Formation </MenuItem>
|
<MenuItem value="class_title" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Titre Formation </MenuItem>
|
||||||
|
<MenuItem value="client_nom" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Lié au Client (nom client) </MenuItem>
|
||||||
|
|
||||||
|
|
||||||
</TextField>
|
</TextField>
|
||||||
|
@ -2856,6 +2856,7 @@ const DisplayPartnerStagiaires = (props) => {
|
||||||
<MenuItem value="nom" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Nom </MenuItem>
|
<MenuItem value="nom" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Nom </MenuItem>
|
||||||
<MenuItem value="code_session" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }}>Code Session </MenuItem>
|
<MenuItem value="code_session" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }}>Code Session </MenuItem>
|
||||||
<MenuItem value="class_title" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Titre Formation </MenuItem>
|
<MenuItem value="class_title" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Titre Formation </MenuItem>
|
||||||
|
<MenuItem value="client_nom" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Lié au Client (nom client) </MenuItem>
|
||||||
|
|
||||||
|
|
||||||
</TextField>
|
</TextField>
|
||||||
|
@ -2936,6 +2937,7 @@ const DisplayPartnerStagiaires = (props) => {
|
||||||
<MenuItem value="nom" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Nom </MenuItem>
|
<MenuItem value="nom" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Nom </MenuItem>
|
||||||
<MenuItem value="code_session" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }}>Code Session </MenuItem>
|
<MenuItem value="code_session" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }}>Code Session </MenuItem>
|
||||||
<MenuItem value="class_title" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Titre Formation </MenuItem>
|
<MenuItem value="class_title" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Titre Formation </MenuItem>
|
||||||
|
<MenuItem value="client_nom" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Lié au Client (nom client) </MenuItem>
|
||||||
|
|
||||||
|
|
||||||
</TextField>
|
</TextField>
|
||||||
|
@ -3012,6 +3014,7 @@ const DisplayPartnerStagiaires = (props) => {
|
||||||
<MenuItem value="nom" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Nom </MenuItem>
|
<MenuItem value="nom" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Nom </MenuItem>
|
||||||
<MenuItem value="code_session" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }}>Code Session </MenuItem>
|
<MenuItem value="code_session" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }}>Code Session </MenuItem>
|
||||||
<MenuItem value="class_title" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Titre Formation </MenuItem>
|
<MenuItem value="class_title" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Titre Formation </MenuItem>
|
||||||
|
<MenuItem value="client_nom" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Lié au Client (nom client) </MenuItem>
|
||||||
|
|
||||||
|
|
||||||
</TextField>
|
</TextField>
|
||||||
|
|
|
@ -1393,10 +1393,10 @@ const DistplayPartnerTraningsPage = (props) => {
|
||||||
value={actionmass_ftion_val}
|
value={actionmass_ftion_val}
|
||||||
onChange={actionmass_ftion}
|
onChange={actionmass_ftion}
|
||||||
>
|
>
|
||||||
<MenuItem value="" style={{ "paddingLeft": "5px", "textAlign": "left" }}>Action </MenuItem>
|
<MenuItem value="" style={{ "paddingLeft": "5px", "textAlign": "left", "width":"100%" }}>Action </MenuItem>
|
||||||
<MenuItem value="publier" style={{ "paddingLeft": "5px", "textAlign": "left" }}>Publier </MenuItem>
|
<MenuItem value="publier" style={{ "paddingLeft": "5px", "textAlign": "left", "width":"100%" }}>Publier </MenuItem>
|
||||||
<MenuItem value="depublier" style={{ "paddingLeft": "5px", "textAlign": "left" }}>Dépublier </MenuItem>
|
<MenuItem value="depublier" style={{ "paddingLeft": "5px", "textAlign": "left", "width":"100%" }}>Dépublier </MenuItem>
|
||||||
<MenuItem value="desactiver" style={{ "paddingLeft": "5px", "textAlign": "left" }}>Désactiver </MenuItem>
|
{/*<MenuItem value="desactiver" style={{ "paddingLeft": "5px", "textAlign": "left", "width":"100%" }}>Désactiver </MenuItem>*/}
|
||||||
|
|
||||||
</TextField>
|
</TextField>
|
||||||
|
|
||||||
|
|
|
@ -312,7 +312,7 @@ const Employes = (props) => {
|
||||||
function handleClick_edit_employee_From_Line(selected_row_id) {
|
function handleClick_edit_employee_From_Line(selected_row_id) {
|
||||||
|
|
||||||
submenu_detail_employe();
|
submenu_detail_employe();
|
||||||
|
setEmployee_data_changed();
|
||||||
var line = JSON.parse(rowss[selected_row_id]);
|
var line = JSON.parse(rowss[selected_row_id]);
|
||||||
|
|
||||||
//console.log("### line = ", line);
|
//console.log("### line = ", line);
|
||||||
|
@ -322,6 +322,7 @@ const Employes = (props) => {
|
||||||
var employe_email = line.email;
|
var employe_email = line.email;
|
||||||
setselected_employe_email(employe_email);
|
setselected_employe_email(employe_email);
|
||||||
|
|
||||||
|
setAffectation_data_changed();
|
||||||
//console.log(" ### employe_id = ", employe_id);
|
//console.log(" ### employe_id = ", employe_id);
|
||||||
Display_Detail_Employe(employe_id);
|
Display_Detail_Employe(employe_id);
|
||||||
|
|
||||||
|
@ -405,8 +406,8 @@ const Employes = (props) => {
|
||||||
const [p_detail_twitter, setp_detail_twitter] = useState();
|
const [p_detail_twitter, setp_detail_twitter] = useState();
|
||||||
const [p_detail_ismanager, setp_detail_ismanager] = useState();
|
const [p_detail_ismanager, setp_detail_ismanager] = useState();
|
||||||
const [p_detail_ismanager_label, setp_detail_ismanager_label] = useState();
|
const [p_detail_ismanager_label, setp_detail_ismanager_label] = useState();
|
||||||
const [p_detail_resp_hierarchie_nom, setp_detail_resp_hierarchie_nom] = useState();
|
const [p_detail_resp_hierarchie_nom, setp_detail_resp_hierarchie_nom] = useState("");
|
||||||
const [p_detail_resp_hierarchie_prenom, setp_detail_resp_hierarchie_prenom] = useState();
|
const [p_detail_resp_hierarchie_prenom, setp_detail_resp_hierarchie_prenom] = useState("");
|
||||||
|
|
||||||
|
|
||||||
const [p_one_detail_nom, setp_one_detail_nom] = useState();
|
const [p_one_detail_nom, setp_one_detail_nom] = useState();
|
||||||
|
@ -465,27 +466,24 @@ const Employes = (props) => {
|
||||||
if (res.data.message.length > 0) {
|
if (res.data.message.length > 0) {
|
||||||
var mylocal_employe = JSON.parse(res.data.message);
|
var mylocal_employe = JSON.parse(res.data.message);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
document.getElementsByName("detail_nom")[0].value = "";
|
|
||||||
if (mylocal_employe.nom)
|
if (mylocal_employe.nom)
|
||||||
setp_detail_nom(mylocal_employe.nom);
|
setp_detail_nom(mylocal_employe.nom);
|
||||||
|
|
||||||
document.getElementsByName("detail_prenom")[0].value = "";
|
|
||||||
if (mylocal_employe.prenom)
|
if (mylocal_employe.prenom)
|
||||||
setp_detail_prenom(mylocal_employe.prenom);
|
setp_detail_prenom(mylocal_employe.prenom);
|
||||||
|
|
||||||
document.getElementsByName("detail_mail")[0].value = "";
|
|
||||||
if (mylocal_employe.email) {
|
if (mylocal_employe.email) {
|
||||||
setp_detail_mail(mylocal_employe.email);
|
setp_detail_mail(mylocal_employe.email);
|
||||||
}
|
}
|
||||||
|
|
||||||
document.getElementsByName("detail_tel_mobile")[0].value = "";
|
|
||||||
if (mylocal_employe.telephone_mobile) {
|
if (mylocal_employe.telephone_mobile) {
|
||||||
setp_detail_tel_mobile(mylocal_employe.telephone_mobile);
|
setp_detail_tel_mobile(mylocal_employe.telephone_mobile);
|
||||||
}
|
}
|
||||||
|
|
||||||
document.getElementsByName("detail_civilite")[0].value = "";
|
|
||||||
if (mylocal_employe.civilite) {
|
if (mylocal_employe.civilite) {
|
||||||
setp_detail_civilite(mylocal_employe.civilite);
|
setp_detail_civilite(mylocal_employe.civilite);
|
||||||
|
|
||||||
|
@ -502,59 +500,53 @@ const Employes = (props) => {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
document.getElementsByName("detail_tel")[0].value = "";
|
|
||||||
if (mylocal_employe.telephone) {
|
if (mylocal_employe.telephone) {
|
||||||
setp_detail_tel(mylocal_employe.telephone);
|
setp_detail_tel(mylocal_employe.telephone);
|
||||||
}
|
}
|
||||||
|
|
||||||
document.getElementsByName("detail_adresse")[0].value = "";
|
|
||||||
if (mylocal_employe.adr_adresse) {
|
if (mylocal_employe.adr_adresse) {
|
||||||
setp_detail_adresse(mylocal_employe.adr_adresse);
|
setp_detail_adresse(mylocal_employe.adr_adresse);
|
||||||
}
|
}
|
||||||
|
|
||||||
document.getElementsByName("detail_code_postal")[0].value = "";
|
|
||||||
if (mylocal_employe.adr_code_postal) {
|
if (mylocal_employe.adr_code_postal) {
|
||||||
setp_detail_code_postal(mylocal_employe.adr_code_postal);
|
setp_detail_code_postal(mylocal_employe.adr_code_postal);
|
||||||
}
|
}
|
||||||
|
|
||||||
document.getElementsByName("detail_ville")[0].value = "";
|
|
||||||
if (mylocal_employe.adr_ville) {
|
if (mylocal_employe.adr_ville) {
|
||||||
setp_detail_ville(mylocal_employe.adr_ville);
|
setp_detail_ville(mylocal_employe.adr_ville);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
document.getElementsByName("detail_pays")[0].value = "";
|
|
||||||
if (mylocal_employe.adr_pays) {
|
if (mylocal_employe.adr_pays) {
|
||||||
setp_detail_pays(mylocal_employe.adr_pays);
|
setp_detail_pays(mylocal_employe.adr_pays);
|
||||||
}
|
}
|
||||||
|
|
||||||
document.getElementsByName("detail_linkedin")[0].value = "";
|
|
||||||
if (mylocal_employe.linkedin) {
|
if (mylocal_employe.linkedin) {
|
||||||
setp_detail_linkedIn(mylocal_employe.linkedin);
|
setp_detail_linkedIn(mylocal_employe.linkedin);
|
||||||
}
|
}
|
||||||
|
|
||||||
document.getElementsByName("detail_facebook")[0].value = "";
|
|
||||||
if (mylocal_employe.facebook) {
|
if (mylocal_employe.facebook) {
|
||||||
setp_detail_facebook(mylocal_employe.facebook);
|
setp_detail_facebook(mylocal_employe.facebook);
|
||||||
}
|
}
|
||||||
|
|
||||||
document.getElementsByName("detail_twitter")[0].value = "";
|
|
||||||
if (mylocal_employe.twitter) {
|
if (mylocal_employe.twitter) {
|
||||||
setp_detail_twitter(mylocal_employe.twitter);
|
setp_detail_twitter(mylocal_employe.twitter);
|
||||||
}
|
}
|
||||||
|
|
||||||
document.getElementsByName("detail_profil")[0].value = "";
|
|
||||||
if (mylocal_employe.ville) {
|
if (mylocal_employe.ville) {
|
||||||
setp_detail_profil(mylocal_employe.profil);
|
setp_detail_profil(mylocal_employe.profil);
|
||||||
}
|
}
|
||||||
|
|
||||||
document.getElementsByName("detail_fonction")[0].value = "";
|
|
||||||
if (mylocal_employe.fonction) {
|
if (mylocal_employe.fonction) {
|
||||||
setp_detail_fonction(mylocal_employe.fonction);
|
setp_detail_fonction(mylocal_employe.fonction);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
document.getElementsByName("detail_ismanager")[0].value = "";
|
|
||||||
if (mylocal_employe.ismanager) {
|
if (mylocal_employe.ismanager) {
|
||||||
setp_detail_ismanager(mylocal_employe.ismanager);
|
setp_detail_ismanager(mylocal_employe.ismanager);
|
||||||
if (String(mylocal_employe.ismanager) === "1")
|
if (String(mylocal_employe.ismanager) === "1")
|
||||||
|
@ -563,11 +555,14 @@ const Employes = (props) => {
|
||||||
setp_detail_ismanager_label("Non");
|
setp_detail_ismanager_label("Non");
|
||||||
}
|
}
|
||||||
|
|
||||||
document.getElementsByName("detail_resp_hierarchie_id")[0].value = "";
|
|
||||||
if (mylocal_employe.superieur_hierarchie_id) {
|
if (mylocal_employe.superieur_hierarchie_id && String(mylocal_employe.superieur_hierarchie_id).length > 2 ) {
|
||||||
setp_detail_resp_hierarchie_id(mylocal_employe.superieur_hierarchie_id);
|
setp_detail_resp_hierarchie_id(mylocal_employe.superieur_hierarchie_id);
|
||||||
setp_detail_resp_hierarchie_nom(mylocal_employe.superieur_hierarchie_nom);
|
setp_detail_resp_hierarchie_nom(mylocal_employe.superieur_hierarchie_nom);
|
||||||
setp_detail_resp_hierarchie_prenom(mylocal_employe.superieur_hierarchie_prenom);
|
setp_detail_resp_hierarchie_prenom(mylocal_employe.superieur_hierarchie_prenom);
|
||||||
|
}else{
|
||||||
|
setp_detail_resp_hierarchie_nom("");
|
||||||
|
setp_detail_resp_hierarchie_prenom("");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1224,8 +1219,8 @@ const Employes = (props) => {
|
||||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Update_Ressource_Humaine/";
|
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Update_Ressource_Humaine/";
|
||||||
|
|
||||||
axios.post(myurl, form).then(res => {
|
axios.post(myurl, form).then(res => {
|
||||||
console.log(" In Update_One_Employee_Data res.data.status = " + res.data.status);
|
//console.log(" In Update_One_Employee_Data res.data.status = " + res.data.status);
|
||||||
console.log(" In Update_One_Employee_Data res.data.message r_class = " + res.data.message);
|
//console.log(" In Update_One_Employee_Data res.data.message r_class = " + res.data.message);
|
||||||
|
|
||||||
if (String(res.data.status) === String("true")) {
|
if (String(res.data.status) === String("true")) {
|
||||||
setUpdate_One_Employee_Data_api("true");
|
setUpdate_One_Employee_Data_api("true");
|
||||||
|
@ -1239,6 +1234,7 @@ const Employes = (props) => {
|
||||||
Get_Employee_Data(selected_id);
|
Get_Employee_Data(selected_id);
|
||||||
alert(" La mise à jour été correctement faite.");
|
alert(" La mise à jour été correctement faite.");
|
||||||
|
|
||||||
|
if (myRef_head.current)
|
||||||
myRef_head.current.scrollIntoView({ behavior: "smooth" });
|
myRef_head.current.scrollIntoView({ behavior: "smooth" });
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1781,7 +1777,7 @@ const Employes = (props) => {
|
||||||
setemployee_data_edit_mode("");
|
setemployee_data_edit_mode("");
|
||||||
|
|
||||||
alert(res.data.message);
|
alert(res.data.message);
|
||||||
|
if (myRef_head.current)
|
||||||
myRef_head.current.scrollIntoView({ behavior: "smooth" });
|
myRef_head.current.scrollIntoView({ behavior: "smooth" });
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -2837,11 +2833,11 @@ const Employes = (props) => {
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div className="div_row" ref={myRef}> </div>
|
||||||
|
|
||||||
{String(submenu) === "detail_employe" && String(add_One_Employee) !== "1" && <div className="div_row">
|
{String(submenu) === "detail_employe" && String(add_One_Employee) !== "1" && <div className="div_row">
|
||||||
<div className="div_row">
|
<div className="div_row">
|
||||||
<Button variant="outlined" ref={myRef} onClick={submenu_detail_employe} className="detail_class_submenu" id='detail_employe' name='detail_employe'>Détail employé</Button>
|
<Button variant="outlined" onClick={submenu_detail_employe} className="detail_class_submenu" id='detail_employe' name='detail_employe'>Détail employé</Button>
|
||||||
<Button variant="outlined" onClick={submenu_droit_acces} className="detail_class_submenu" id='droit_acces' name='droit_acces'>Droits d'acces </Button>
|
<Button variant="outlined" onClick={submenu_droit_acces} className="detail_class_submenu" id='droit_acces' name='droit_acces'>Droits d'acces </Button>
|
||||||
<Button variant="outlined" onClick={submenu_affectation} className="detail_class_submenu" id='affectation' name='affectation'>Affectation </Button>
|
<Button variant="outlined" onClick={submenu_affectation} className="detail_class_submenu" id='affectation' name='affectation'>Affectation </Button>
|
||||||
</div>
|
</div>
|
||||||
|
@ -3383,7 +3379,7 @@ const Employes = (props) => {
|
||||||
|
|
||||||
{String(submenu) === "detail_employe" && String(add_One_Employee) === "1" && <div className="div_row">
|
{String(submenu) === "detail_employe" && String(add_One_Employee) === "1" && <div className="div_row">
|
||||||
<div className="div_row">
|
<div className="div_row">
|
||||||
<Button variant="outlined" ref={myRef} onClick={submenu_detail_employe} className="detail_class_submenu" id='detail_employe' name='detail_employe'>Détail employé</Button>
|
<Button variant="outlined" onClick={submenu_detail_employe} className="detail_class_submenu" id='detail_employe' name='detail_employe'>Détail employé</Button>
|
||||||
<Button variant="outlined" onClick={submenu_droit_acces} className="detail_class_submenu" id='droit_acces' name='droit_acces'>Droits d'acces </Button>
|
<Button variant="outlined" onClick={submenu_droit_acces} className="detail_class_submenu" id='droit_acces' name='droit_acces'>Droits d'acces </Button>
|
||||||
<Button variant="outlined" onClick={submenu_affectation} className="detail_class_submenu" id='affectation' name='affectation'>Affectation </Button>
|
<Button variant="outlined" onClick={submenu_affectation} className="detail_class_submenu" id='affectation' name='affectation'>Affectation </Button>
|
||||||
</div>
|
</div>
|
||||||
|
@ -3795,7 +3791,7 @@ const Employes = (props) => {
|
||||||
|
|
||||||
{String(submenu) === "affectation" && <div className="div_row">
|
{String(submenu) === "affectation" && <div className="div_row">
|
||||||
<div className="div_row">
|
<div className="div_row">
|
||||||
<Button variant="outlined" ref={myRef} onClick={submenu_detail_employe} className="detail_class_submenu" id='detail_employe' name='detail_employe'>Détail employé</Button>
|
<Button variant="outlined" onClick={submenu_detail_employe} className="detail_class_submenu" id='detail_employe' name='detail_employe'>Détail employé</Button>
|
||||||
<Button variant="outlined" onClick={submenu_droit_acces} className="detail_class_submenu" id='droit_acces' name='droit_acces'>Droits d'acces </Button>
|
<Button variant="outlined" onClick={submenu_droit_acces} className="detail_class_submenu" id='droit_acces' name='droit_acces'>Droits d'acces </Button>
|
||||||
<Button variant="outlined" onClick={submenu_affectation} className="detail_class_submenu" id='affectation' name='affectation'>Affectation </Button>
|
<Button variant="outlined" onClick={submenu_affectation} className="detail_class_submenu" id='affectation' name='affectation'>Affectation </Button>
|
||||||
</div>
|
</div>
|
||||||
|
@ -4136,7 +4132,7 @@ const Employes = (props) => {
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
{String(Affectation_data_changed) === "1" && String(edite_affectation_form) === "1" && <div className="div_row" style={{ "border": "None", "color": "orange", "textAlign": "center" }}>
|
{String(Affectation_data_changed) === "1" && String(edite_affectation_form) === "1" && <div className="div_row" style={{ "border": "None", "color": "orange", "textAlign": "center" }}>
|
||||||
/!\ Pensez à enregistrer les modifications
|
/!\ Pensez à enregistrer les modifications bb
|
||||||
</div>}
|
</div>}
|
||||||
|
|
||||||
|
|
||||||
|
@ -4351,7 +4347,7 @@ const Employes = (props) => {
|
||||||
{String(submenu) === "droit_acces" && <div className="div_row">
|
{String(submenu) === "droit_acces" && <div className="div_row">
|
||||||
<nav style={{ "border": "None", "fontSize": "22px", "fontWeight": "600" }}> Droit Acces </nav>
|
<nav style={{ "border": "None", "fontSize": "22px", "fontWeight": "600" }}> Droit Acces </nav>
|
||||||
<div className="div_row">
|
<div className="div_row">
|
||||||
<Button variant="outlined" ref={myRef} onClick={submenu_detail_employe} className="detail_class_submenu" id='detail_employe' name='detail_employe'>Détail employé</Button>
|
<Button variant="outlined" onClick={submenu_detail_employe} className="detail_class_submenu" id='detail_employe' name='detail_employe'>Détail employé</Button>
|
||||||
<Button variant="outlined" onClick={submenu_droit_acces} className="detail_class_submenu" id='droit_acces' name='droit_acces'>Droits d'acces </Button>
|
<Button variant="outlined" onClick={submenu_droit_acces} className="detail_class_submenu" id='droit_acces' name='droit_acces'>Droits d'acces </Button>
|
||||||
<Button variant="outlined" onClick={submenu_affectation} className="detail_class_submenu" id='affectation' name='affectation'>Affectation </Button>
|
<Button variant="outlined" onClick={submenu_affectation} className="detail_class_submenu" id='affectation' name='affectation'>Affectation </Button>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1791,6 +1791,26 @@ function GestionAdministrative(props) {
|
||||||
setp_detail_session_ondemande_label("Non");
|
setp_detail_session_ondemande_label("Non");
|
||||||
|
|
||||||
|
|
||||||
|
var session_etape = "0"
|
||||||
|
|
||||||
|
if (p_session_etape) {
|
||||||
|
session_etape = p_session_etape;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (String(session_etape) === "0")
|
||||||
|
setp_session_etape_label("Projet");
|
||||||
|
else if (String(session_etape) === "1")
|
||||||
|
setp_session_etape_label("Planification");
|
||||||
|
else if (String(session_etape) === "2")
|
||||||
|
setp_session_etape_label("Planifiée");
|
||||||
|
else if (String(session_etape) === "3")
|
||||||
|
setp_session_etape_label("Terminée");
|
||||||
|
else if (String(session_etape) === "4")
|
||||||
|
setp_session_etape_label("Facturée");
|
||||||
|
else if (String(session_etape) === "-1")
|
||||||
|
setp_session_etape_label("Annulée");
|
||||||
|
|
||||||
|
|
||||||
var presentiel = "0"
|
var presentiel = "0"
|
||||||
if (p_detail_presentiel) {
|
if (p_detail_presentiel) {
|
||||||
presentiel = p_detail_presentiel;
|
presentiel = p_detail_presentiel;
|
||||||
|
@ -1865,6 +1885,7 @@ function GestionAdministrative(props) {
|
||||||
const stored_cookie = getCookie('tokenmysypart');
|
const stored_cookie = getCookie('tokenmysypart');
|
||||||
form.append("token", stored_cookie);
|
form.append("token", stored_cookie);
|
||||||
form.append("session_id", selected_session_id);
|
form.append("session_id", selected_session_id);
|
||||||
|
form.append("session_etape", p_session_etape);
|
||||||
form.append("class_internal_url", internal_url);
|
form.append("class_internal_url", internal_url);
|
||||||
form.append("date_debut", format(SessionstartDate, 'dd/MM/yyyy kk:mm:ss'));
|
form.append("date_debut", format(SessionstartDate, 'dd/MM/yyyy kk:mm:ss'));
|
||||||
form.append("date_fin", format(SessionendDate, 'dd/MM/yyyy kk:mm:ss'));
|
form.append("date_fin", format(SessionendDate, 'dd/MM/yyyy kk:mm:ss'));
|
||||||
|
@ -1946,6 +1967,8 @@ function GestionAdministrative(props) {
|
||||||
const [p_detail_session_ondemande, setp_detail_session_ondemande] = useState();
|
const [p_detail_session_ondemande, setp_detail_session_ondemande] = useState();
|
||||||
const [p_detail_session_ondemande_label, setp_detail_session_ondemande_label] = useState();
|
const [p_detail_session_ondemande_label, setp_detail_session_ondemande_label] = useState();
|
||||||
|
|
||||||
|
const [p_session_etape, setp_session_etape] = useState();
|
||||||
|
const [p_session_etape_label, setp_session_etape_label] = useState();
|
||||||
|
|
||||||
const [p_detail_one_presentiel, setp_detail_one_presentiel] = useState();
|
const [p_detail_one_presentiel, setp_detail_one_presentiel] = useState();
|
||||||
const [p_detail_presentiel, setp_detail_presentiel] = useState();
|
const [p_detail_presentiel, setp_detail_presentiel] = useState();
|
||||||
|
@ -2286,6 +2309,25 @@ function GestionAdministrative(props) {
|
||||||
setp_detail_session_ondemande_label("Non");
|
setp_detail_session_ondemande_label("Non");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (mylocaltraining.session_etape) {
|
||||||
|
setp_session_etape(mylocaltraining.session_etape);
|
||||||
|
if (String(mylocaltraining.session_etape) === "0")
|
||||||
|
setp_session_etape_label("Projet");
|
||||||
|
else if (String(mylocaltraining.session_etape) === "1")
|
||||||
|
setp_session_etape_label("Planification");
|
||||||
|
else if (String(mylocaltraining.session_etape) === "2")
|
||||||
|
setp_session_etape_label("Planifiée");
|
||||||
|
else if (String(mylocaltraining.session_etape) === "3")
|
||||||
|
setp_session_etape_label("Terminée");
|
||||||
|
else if (String(mylocaltraining.session_etape) === "4")
|
||||||
|
setp_session_etape_label("Facturée");
|
||||||
|
else if (String(mylocaltraining.session_etape) === "-1")
|
||||||
|
setp_session_etape_label("Annulée");
|
||||||
|
|
||||||
|
} else {
|
||||||
|
setp_session_etape_label("Projet");
|
||||||
|
setp_session_etape("0");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -2478,9 +2520,13 @@ function GestionAdministrative(props) {
|
||||||
document.getElementsByName("code_session")[0].disabled = true;
|
document.getElementsByName("code_session")[0].disabled = true;
|
||||||
document.getElementsByName("code_session")[0].style.backgroundColor = "#ECEFF1";
|
document.getElementsByName("code_session")[0].style.backgroundColor = "#ECEFF1";
|
||||||
|
|
||||||
|
document.getElementsByName("session_etape")[0].disabled = true;
|
||||||
|
document.getElementsByName("session_etape")[0].style.backgroundColor = "#ECEFF1";
|
||||||
|
|
||||||
document.getElementsByName("sessiondatedebut")[0].disabled = true;
|
document.getElementsByName("sessiondatedebut")[0].disabled = true;
|
||||||
document.getElementsByName("sessiondatedebut")[0].style.backgroundColor = "#ECEFF1";
|
document.getElementsByName("sessiondatedebut")[0].style.backgroundColor = "#ECEFF1";
|
||||||
|
|
||||||
|
|
||||||
document.getElementsByName("sessiondatefin")[0].disabled = true;
|
document.getElementsByName("sessiondatefin")[0].disabled = true;
|
||||||
document.getElementsByName("sessiondatefin")[0].style.backgroundColor = "#ECEFF1";
|
document.getElementsByName("sessiondatefin")[0].style.backgroundColor = "#ECEFF1";
|
||||||
|
|
||||||
|
@ -2537,6 +2583,9 @@ function GestionAdministrative(props) {
|
||||||
document.getElementsByName("sessiondatefin")[0].disabled = false;
|
document.getElementsByName("sessiondatefin")[0].disabled = false;
|
||||||
document.getElementsByName("sessiondatefin")[0].style.backgroundColor = "#FFFFFF";
|
document.getElementsByName("sessiondatefin")[0].style.backgroundColor = "#FFFFFF";
|
||||||
|
|
||||||
|
document.getElementsByName("session_etape")[0].disabled = false;
|
||||||
|
document.getElementsByName("session_etape")[0].style.backgroundColor = "#FFFFFF";
|
||||||
|
|
||||||
document.getElementsByName("adresse")[0].disabled = false;
|
document.getElementsByName("adresse")[0].disabled = false;
|
||||||
document.getElementsByName("adresse")[0].style.backgroundColor = "#FFFFFF";
|
document.getElementsByName("adresse")[0].style.backgroundColor = "#FFFFFF";
|
||||||
|
|
||||||
|
@ -2578,6 +2627,7 @@ function GestionAdministrative(props) {
|
||||||
|
|
||||||
function clearSessionFields() {
|
function clearSessionFields() {
|
||||||
document.getElementsByName("code_session")[0].value = "";
|
document.getElementsByName("code_session")[0].value = "";
|
||||||
|
document.getElementsByName("session_etape")[0].value = "";
|
||||||
document.getElementsByName("sessiondatedebut")[0].value = "";
|
document.getElementsByName("sessiondatedebut")[0].value = "";
|
||||||
document.getElementsByName("sessiondatefin")[0].value = "";
|
document.getElementsByName("sessiondatefin")[0].value = "";
|
||||||
if (document.getElementsByName("adresse")[0])
|
if (document.getElementsByName("adresse")[0])
|
||||||
|
@ -2616,6 +2666,8 @@ function GestionAdministrative(props) {
|
||||||
setSessionstartDate();
|
setSessionstartDate();
|
||||||
seturlpreview_certif();
|
seturlpreview_certif();
|
||||||
setfield_contenu_ftion();
|
setfield_contenu_ftion();
|
||||||
|
setp_session_etape();
|
||||||
|
setp_session_etape_label();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -4403,18 +4455,6 @@ function GestionAdministrative(props) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
const status_inscription = [
|
|
||||||
{
|
|
||||||
value: '1',
|
|
||||||
label: 'Inscription',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: '0',
|
|
||||||
label: 'PréInscription',
|
|
||||||
},
|
|
||||||
|
|
||||||
];
|
|
||||||
|
|
||||||
const [myinscript_status, setmyinscript_status] = useState("");
|
const [myinscript_status, setmyinscript_status] = useState("");
|
||||||
|
|
||||||
|
|
||||||
|
@ -4908,6 +4948,28 @@ function GestionAdministrative(props) {
|
||||||
|
|
||||||
const [isLoading, setLoading] = useState();
|
const [isLoading, setLoading] = useState();
|
||||||
|
|
||||||
|
const status_inscription = [
|
||||||
|
|
||||||
|
{
|
||||||
|
value: '0',
|
||||||
|
label: 'PréInscription',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: '1',
|
||||||
|
label: 'Inscription',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: '2',
|
||||||
|
label: 'En Cours',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: '-1',
|
||||||
|
label: 'Annulation',
|
||||||
|
},
|
||||||
|
|
||||||
|
];
|
||||||
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className='gestionadministrative'>
|
<div className='gestionadministrative'>
|
||||||
|
|
||||||
|
@ -5538,6 +5600,50 @@ function GestionAdministrative(props) {
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
{!fields1desabled && <div className="session_caract">Etape <br />
|
||||||
|
<TextField
|
||||||
|
name="session_etape"
|
||||||
|
id="session_etape"
|
||||||
|
select
|
||||||
|
InputLabelProps={{
|
||||||
|
shrink: true,
|
||||||
|
}}
|
||||||
|
inputProps={{ min: "0", max: "1", step: "1" }}
|
||||||
|
disabled={false}
|
||||||
|
className="disabled_style enable_style"
|
||||||
|
value={p_session_etape}
|
||||||
|
onChange={(e) => {
|
||||||
|
setp_session_etape(e.target.value);
|
||||||
|
IssessionChanged();
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
<MenuItem value="0" style={{ "paddingLeft": "5px", "textAlign": "left" }}>Projet </MenuItem>
|
||||||
|
<MenuItem value="1" style={{ "paddingLeft": "5px", "textAlign": "left" }}>Planification </MenuItem>
|
||||||
|
<MenuItem value="2" style={{ "paddingLeft": "5px", "textAlign": "left" }}>Planifiée </MenuItem>
|
||||||
|
<MenuItem value="3" style={{ "paddingLeft": "5px", "textAlign": "left" }}>Terminée </MenuItem>
|
||||||
|
<MenuItem value="4" style={{ "paddingLeft": "5px", "textAlign": "left" }}>Facturée </MenuItem>
|
||||||
|
<MenuItem value="-1" style={{ "paddingLeft": "5px", "textAlign": "left" }}>Annulée </MenuItem>
|
||||||
|
</TextField>
|
||||||
|
</div>}
|
||||||
|
|
||||||
|
{fields1desabled && <div className="session_caract">Etape *<br />
|
||||||
|
|
||||||
|
<TextField
|
||||||
|
name="session_etape"
|
||||||
|
id="session_etape"
|
||||||
|
text
|
||||||
|
InputLabelProps={{
|
||||||
|
shrink: true,
|
||||||
|
}}
|
||||||
|
inputProps={{ min: "0", max: "1", step: "1" }}
|
||||||
|
disabled={false}
|
||||||
|
className="disabled_style enable_style"
|
||||||
|
value={p_session_etape_label}
|
||||||
|
|
||||||
|
/>
|
||||||
|
|
||||||
|
</div>}
|
||||||
|
|
||||||
|
|
||||||
<div className="session_caract">
|
<div className="session_caract">
|
||||||
Date Debut
|
Date Debut
|
||||||
|
|
|
@ -867,44 +867,43 @@ const Materiels = (props) => {
|
||||||
if (res.data.message.length > 0) {
|
if (res.data.message.length > 0) {
|
||||||
var mylocal_materiel = JSON.parse(res.data.message);
|
var mylocal_materiel = JSON.parse(res.data.message);
|
||||||
|
|
||||||
document.getElementsByName("detail_ref_interne")[0].value = "";
|
|
||||||
if (mylocal_materiel.ref_interne)
|
if (mylocal_materiel.ref_interne)
|
||||||
setp_detail_ref_interne(mylocal_materiel.ref_interne);
|
setp_detail_ref_interne(mylocal_materiel.ref_interne);
|
||||||
|
|
||||||
document.getElementsByName("detail_nom")[0].value = "";
|
|
||||||
if (mylocal_materiel.nom)
|
if (mylocal_materiel.nom)
|
||||||
setp_detail_nom(mylocal_materiel.nom);
|
setp_detail_nom(mylocal_materiel.nom);
|
||||||
|
|
||||||
document.getElementsByName("detail_description")[0].value = "";
|
|
||||||
if (mylocal_materiel.description)
|
if (mylocal_materiel.description)
|
||||||
setp_detail_description(mylocal_materiel.description);
|
setp_detail_description(mylocal_materiel.description);
|
||||||
|
|
||||||
document.getElementsByName("detail_detail")[0].value = "";
|
|
||||||
if (mylocal_materiel.detail)
|
if (mylocal_materiel.detail)
|
||||||
setp_detail_detail(mylocal_materiel.detail);
|
setp_detail_detail(mylocal_materiel.detail);
|
||||||
|
|
||||||
document.getElementsByName("detail_famille")[0].value = "";
|
|
||||||
if (mylocal_materiel.famille)
|
if (mylocal_materiel.famille)
|
||||||
setp_detail_famille(mylocal_materiel.famille);
|
setp_detail_famille(mylocal_materiel.famille);
|
||||||
|
|
||||||
document.getElementsByName("detail_marque")[0].value = "";
|
|
||||||
if (mylocal_materiel.marque)
|
if (mylocal_materiel.marque)
|
||||||
setp_detail_marque(mylocal_materiel.marque);
|
setp_detail_marque(mylocal_materiel.marque);
|
||||||
|
|
||||||
document.getElementsByName("detail_type")[0].value = "";
|
|
||||||
if (mylocal_materiel.type)
|
if (mylocal_materiel.type)
|
||||||
setp_detail_type(mylocal_materiel.type);
|
setp_detail_type(mylocal_materiel.type);
|
||||||
|
|
||||||
document.getElementsByName("detail_prix_achat")[0].value = "";
|
|
||||||
if (mylocal_materiel.prix_achat)
|
if (mylocal_materiel.prix_achat)
|
||||||
setp_detail_prix_achat(mylocal_materiel.prix_achat);
|
setp_detail_prix_achat(mylocal_materiel.prix_achat);
|
||||||
|
|
||||||
|
|
||||||
document.getElementsByName("detail_fournisseur")[0].value = "";
|
|
||||||
if (mylocal_materiel.fournisseur)
|
if (mylocal_materiel.fournisseur)
|
||||||
setp_detail_fournisseur(mylocal_materiel.fournisseur);
|
setp_detail_fournisseur(mylocal_materiel.fournisseur);
|
||||||
|
|
||||||
document.getElementsByName("detail_qty_stock")[0].value = "";
|
|
||||||
if (mylocal_materiel.qty_stock)
|
if (mylocal_materiel.qty_stock)
|
||||||
setp_detail_qty_stock(mylocal_materiel.qty_stock);
|
setp_detail_qty_stock(mylocal_materiel.qty_stock);
|
||||||
|
|
||||||
|
@ -949,11 +948,13 @@ const Materiels = (props) => {
|
||||||
//console.log(" ### employe_id = ", employe_id);
|
//console.log(" ### employe_id = ", employe_id);
|
||||||
Display_Detail_Material_Data(materiel_id);
|
Display_Detail_Material_Data(materiel_id);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Getall_Materiel_Affectation(materiel_id);
|
||||||
if (myRef.current) {
|
if (myRef.current) {
|
||||||
myRef.current.scrollIntoView({ behavior: "smooth" });
|
myRef.current.scrollIntoView({ behavior: "smooth" });
|
||||||
}
|
}
|
||||||
|
|
||||||
Getall_Materiel_Affectation(materiel_id);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1256,9 +1257,9 @@ const Materiels = (props) => {
|
||||||
setmateriel_data_changed("");
|
setmateriel_data_changed("");
|
||||||
setmateriel_data_edit_mode("");
|
setmateriel_data_edit_mode("");
|
||||||
Getall_Training_Materiel(selected_id);
|
Getall_Training_Materiel(selected_id);
|
||||||
alert(" La mise à jour été correctement faite.");
|
|
||||||
|
|
||||||
setsubmenu("detail_materiel");
|
|
||||||
|
setsubmenu("");
|
||||||
setadd_One_Materiel("");
|
setadd_One_Materiel("");
|
||||||
//Get_Materiel_Data(selected_id);
|
//Get_Materiel_Data(selected_id);
|
||||||
Display_Detail_Material_Data(selected_id);
|
Display_Detail_Material_Data(selected_id);
|
||||||
|
@ -1266,6 +1267,8 @@ const Materiels = (props) => {
|
||||||
if (myRef_head)
|
if (myRef_head)
|
||||||
myRef_head.current.scrollIntoView({ behavior: "smooth" });
|
myRef_head.current.scrollIntoView({ behavior: "smooth" });
|
||||||
|
|
||||||
|
alert(" La mise à jour été correctement faite.");
|
||||||
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
setUpdate_One_Materiel_Data_api("false");
|
setUpdate_One_Materiel_Data_api("false");
|
||||||
|
@ -2435,6 +2438,7 @@ const Materiels = (props) => {
|
||||||
{String(liste_sessions_file_change_api) === String("true") && <nav className="okUpdateData"> Le materiel ont été correctement importé</nav>}
|
{String(liste_sessions_file_change_api) === String("true") && <nav className="okUpdateData"> Le materiel ont été correctement importé</nav>}
|
||||||
{String(liste_sessions_file_change_api) === String("false") && <nav className="koUpdateData"> {liste_sessions_file_change_message} </nav>}
|
{String(liste_sessions_file_change_api) === String("false") && <nav className="koUpdateData"> {liste_sessions_file_change_message} </nav>}
|
||||||
|
|
||||||
|
{/*
|
||||||
<input type="file"
|
<input type="file"
|
||||||
accept=".csv"
|
accept=".csv"
|
||||||
ref={hiddenFileInput_session}
|
ref={hiddenFileInput_session}
|
||||||
|
@ -2444,16 +2448,21 @@ const Materiels = (props) => {
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<a href='/sample/template_import_employes.csv' download>Télécharger un fichier modèle</a>
|
<a href='/sample/template_import_employes.csv' download>Télécharger un fichier modèle</a>
|
||||||
|
*/}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div className="div_row"> </div>
|
<div className="div_row"> </div>
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
{String(submenu) === "detail_materiel" && String(add_One_Materiel) !== "1" && <div className="div_row">
|
{String(submenu) === "detail_materiel" && String(add_One_Materiel) !== "1" && <div className="div_row">
|
||||||
<div className="div_row">
|
<div className="div_row">
|
||||||
<Button variant="outlined" ref={myRef} onClick={submenu_detail_materiel} className="detail_class_submenu" id='detail_materiel' name='detail_materiel'>Détail Materiel</Button>
|
<Button variant="outlined" onClick={submenu_detail_materiel} className="detail_class_submenu" id='detail_materiel' name='detail_materiel'>Détail Materiel</Button>
|
||||||
<Button variant="outlined" onClick={submenu_affectation} className="detail_class_submenu" id='affectation' name='affectation'>Affectation </Button>
|
<Button variant="outlined" onClick={submenu_affectation} className="detail_class_submenu" id='affectation' name='affectation'>Affectation </Button>
|
||||||
</div>
|
</div>
|
||||||
<nav style={{ "border": "None", "fontSize": "22px", "fontWeight": "600" }}> Détail Materiel </nav>
|
<nav style={{ "border": "None", "fontSize": "22px", "fontWeight": "600" }}> Détail Materiel </nav>
|
||||||
|
@ -2773,7 +2782,7 @@ const Materiels = (props) => {
|
||||||
|
|
||||||
{String(submenu) === "detail_materiel" && String(add_One_Materiel) === "1" && <div className="div_row">
|
{String(submenu) === "detail_materiel" && String(add_One_Materiel) === "1" && <div className="div_row">
|
||||||
<div className="div_row">
|
<div className="div_row">
|
||||||
<Button variant="outlined" ref={myRef} onClick={submenu_detail_materiel} className="detail_class_submenu" id='detail_materiel' name='detail_materiel'>Détail Materiel</Button>
|
<Button variant="outlined" onClick={submenu_detail_materiel} className="detail_class_submenu" id='detail_materiel' name='detail_materiel'>Détail Materiel</Button>
|
||||||
<Button variant="outlined" onClick={submenu_affectation} className="detail_class_submenu" id='affectation' name='affectation'>Affectation </Button>
|
<Button variant="outlined" onClick={submenu_affectation} className="detail_class_submenu" id='affectation' name='affectation'>Affectation </Button>
|
||||||
</div>
|
</div>
|
||||||
<nav style={{ "border": "None", "fontSize": "22px", "fontWeight": "600" }}> Ajouter un nouveau materiel </nav>
|
<nav style={{ "border": "None", "fontSize": "22px", "fontWeight": "600" }}> Ajouter un nouveau materiel </nav>
|
||||||
|
@ -3027,7 +3036,7 @@ const Materiels = (props) => {
|
||||||
|
|
||||||
{String(submenu) === "affectation" && <div className="div_row">
|
{String(submenu) === "affectation" && <div className="div_row">
|
||||||
<div className="div_row">
|
<div className="div_row">
|
||||||
<Button variant="outlined" ref={myRef} onClick={submenu_detail_materiel} className="detail_class_submenu" id='detail_materiel' name='detail_materiel'>Détail Materiel</Button>
|
<Button variant="outlined" onClick={submenu_detail_materiel} className="detail_class_submenu" id='detail_materiel' name='detail_materiel'>Détail Materiel</Button>
|
||||||
<Button variant="outlined" onClick={submenu_affectation} className="detail_class_submenu" id='affectation' name='affectation'>Affectation </Button>
|
<Button variant="outlined" onClick={submenu_affectation} className="detail_class_submenu" id='affectation' name='affectation'>Affectation </Button>
|
||||||
</div>
|
</div>
|
||||||
<nav style={{ "border": "None", "fontSize": "22px", "fontWeight": "600" }}> Affectation </nav>
|
<nav style={{ "border": "None", "fontSize": "22px", "fontWeight": "600" }}> Affectation </nav>
|
||||||
|
@ -3579,7 +3588,7 @@ const Materiels = (props) => {
|
||||||
</div>}
|
</div>}
|
||||||
|
|
||||||
</div>}
|
</div>}
|
||||||
|
<div ref={myRef}> </div>
|
||||||
|
|
||||||
</div >
|
</div >
|
||||||
);
|
);
|
||||||
|
|
|
@ -936,7 +936,7 @@ const Partner = (props) => {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<a href='/sample/template_import.csv' download>Télécharger un fichier modèle</a>
|
<a href='/sample/template_import_formations.csv' download>Télécharger un fichier modèle</a>
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
|
|
||||||
|
@ -974,7 +974,7 @@ const Partner = (props) => {
|
||||||
{String(partnerstatus) !== String("0") && <div className="parter_div_filtrer_row_gauche">
|
{String(partnerstatus) !== String("0") && <div className="parter_div_filtrer_row_gauche">
|
||||||
|
|
||||||
|
|
||||||
Import excel d'une formation <a href='/sample/template_import.csv' download>Télécharger un fichier modèle</a>
|
Import excel d'une formation <a href='/sample/template_import_formations.csv' download>Télécharger un fichier modèle</a>
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
|
|
||||||
|
|
|
@ -55,6 +55,9 @@ import InputAdornment from '@mui/material/InputAdornment';
|
||||||
import { AiFillCloseCircle } from "react-icons/ai";
|
import { AiFillCloseCircle } from "react-icons/ai";
|
||||||
import { CiTrash } from "react-icons/ci";
|
import { CiTrash } from "react-icons/ci";
|
||||||
import { MdAddCircleOutline, MdRemoveCircleOutline } from "react-icons/md";
|
import { MdAddCircleOutline, MdRemoveCircleOutline } from "react-icons/md";
|
||||||
|
import Popup from 'reactjs-popup';
|
||||||
|
import 'reactjs-popup/dist/index.css';
|
||||||
|
|
||||||
|
|
||||||
const Partner_Client = (props) => {
|
const Partner_Client = (props) => {
|
||||||
|
|
||||||
|
@ -64,6 +67,7 @@ const Partner_Client = (props) => {
|
||||||
const [selectionModel, setSelectionModel] = React.useState([]);
|
const [selectionModel, setSelectionModel] = React.useState([]);
|
||||||
const columns_clients = [
|
const columns_clients = [
|
||||||
{ field: 'id', headerName: 'id', hide: true },
|
{ field: 'id', headerName: 'id', hide: true },
|
||||||
|
{ field: '_id', headerName: '_id', hide: true },
|
||||||
{ field: 'email', headerName: 'email', width: 100, hideable: false, flex: 1 },
|
{ field: 'email', headerName: 'email', width: 100, hideable: false, flex: 1 },
|
||||||
{ field: 'nom', headerName: 'nom', width: 100, hide: false, editable: true, flex: 1 },
|
{ field: 'nom', headerName: 'nom', width: 100, hide: false, editable: true, flex: 1 },
|
||||||
|
|
||||||
|
@ -87,11 +91,59 @@ const Partner_Client = (props) => {
|
||||||
renderCell: (cellValues) => {
|
renderCell: (cellValues) => {
|
||||||
return (
|
return (
|
||||||
|
|
||||||
<div style={{ "marginLeft": "auto", "marginRight": "auto", "cursor": "pointer" }} onClick={(event) => {
|
<Popup
|
||||||
handleClick_supprimer(event, cellValues);
|
trigger={<Button
|
||||||
}}>
|
|
||||||
<FcDeleteDatabase style={{ "fontSize": "x-large" }} />
|
onClick={(event) => {
|
||||||
|
// handleClick_delete(event, cellValues);
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
<CiTrash />
|
||||||
|
|
||||||
|
</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">
|
||||||
|
{' '}
|
||||||
|
|
||||||
|
En confirmant cette opération, le client sera <i><font color="red"> définitivement supprimé</font></i>. <br />
|
||||||
|
Avant, assurez-vous de n'avoir aucun stagiaire, un devis ou commande rattaché au client.
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
<div className="gest_actions">
|
||||||
|
<div style={{ "width": "45%", "float": "left" }}>
|
||||||
|
<button className="gest_bton_popup" onClick={(event) => {
|
||||||
|
handleClick_supprimer(event, cellValues);
|
||||||
|
//console.log('modal closed ');
|
||||||
|
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>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -102,6 +154,8 @@ const Partner_Client = (props) => {
|
||||||
|
|
||||||
const [rowSelectionModel, setRowSelectionModel] = React.useState([]);
|
const [rowSelectionModel, setRowSelectionModel] = React.useState([]);
|
||||||
|
|
||||||
|
const myRef_add_client = useRef(null)
|
||||||
|
const myRef_head = useRef(null)
|
||||||
|
|
||||||
const [Edite_Client, setEdite_Client] = useState("");
|
const [Edite_Client, setEdite_Client] = useState("");
|
||||||
const [Client_email, setClient_email] = useState("");
|
const [Client_email, setClient_email] = useState("");
|
||||||
|
@ -109,19 +163,74 @@ const Partner_Client = (props) => {
|
||||||
var clientmail = String(cellValues.row.email);
|
var clientmail = String(cellValues.row.email);
|
||||||
setClient_email(clientmail);
|
setClient_email(clientmail);
|
||||||
setEdite_Client("1");
|
setEdite_Client("1");
|
||||||
|
window.scrollTo({
|
||||||
|
top: 600,
|
||||||
|
left: 0,
|
||||||
|
behavior: "smooth",
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function handleClick_add_new_client(event, cellValues) {
|
function handleClick_add_new_client(event, cellValues) {
|
||||||
setEdite_Client("2");
|
setEdite_Client("2");
|
||||||
|
window.scrollTo({
|
||||||
|
top: 600,
|
||||||
|
left: 0,
|
||||||
|
behavior: "smooth",
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function handleClick_supprimer(event, cellValues) {
|
function handleClick_supprimer(event, cellValues) {
|
||||||
var clientmail = String(cellValues.row.email);
|
var clientmail = String(cellValues.row.email);
|
||||||
alert(" en cours de dev");
|
var client_id = String(cellValues.row._id);
|
||||||
|
Delete_Client_Data(client_id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
const [Delete_Client_Data_api, setDelete_Client_Data_api] = useState();
|
||||||
|
const [Delete_Client_Data_message, setDelete_Client_Data_message] = useState();
|
||||||
|
const [Delete_Client_Data_result, setDelete_Client_Data_result] = useState();
|
||||||
|
function Delete_Client_Data(local_client_id) {
|
||||||
|
|
||||||
|
var form = new FormData();
|
||||||
|
const stored_cookie = getCookie('tokenmysypart');
|
||||||
|
|
||||||
|
form.append("token", stored_cookie);
|
||||||
|
form.append("_id", local_client_id);
|
||||||
|
|
||||||
|
|
||||||
|
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Delete_Given_Partner_Client/";
|
||||||
|
|
||||||
|
axios.post(myurl, form).then(res => {
|
||||||
|
//console.log(" In Delete_Client_Data res.data.status = " + res.data.status);
|
||||||
|
//console.log(" In Delete_Client_Data res.data.message r_class = " + res.data.message);
|
||||||
|
|
||||||
|
if (String(res.data.status) === String("true")) {
|
||||||
|
setDelete_Client_Data_api("true");
|
||||||
|
setDelete_Client_Data_result(res.data.message);
|
||||||
|
Get_List_Partner_Clients();
|
||||||
|
setSelectionModel([]);
|
||||||
|
setEdite_Client();
|
||||||
|
alert(res.data.message);
|
||||||
|
}
|
||||||
|
else if (String(res.data.status) === String("Err_Connexion")) {
|
||||||
|
alert(res.data.message);
|
||||||
|
history.push("/Connexion");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
setDelete_Client_Data_api("false");
|
||||||
|
setDelete_Client_Data_message(res.data.message);
|
||||||
|
alert(res.data.message);
|
||||||
|
}
|
||||||
|
|
||||||
|
}).catch((error) => {
|
||||||
|
console.warn('Not good man :( Delete_Client_Data = ', error);
|
||||||
|
setDelete_Client_Data_api("false");
|
||||||
|
alert(" Impossible de supprimer le client");
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
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();
|
||||||
const [Get_List_Partner_Clients_result, setGet_List_Partner_Clients_result] = useState();
|
const [Get_List_Partner_Clients_result, setGet_List_Partner_Clients_result] = useState();
|
||||||
|
@ -172,6 +281,11 @@ const Partner_Client = (props) => {
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
//menu_info();
|
//menu_info();
|
||||||
Get_List_Partner_Clients();
|
Get_List_Partner_Clients();
|
||||||
|
window.scrollTo({
|
||||||
|
top: 0,
|
||||||
|
left: 0,
|
||||||
|
behavior: "smooth",
|
||||||
|
});
|
||||||
|
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
|
@ -309,6 +423,14 @@ const Partner_Client = (props) => {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function father_scroll_to_top() {
|
||||||
|
window.scrollTo({
|
||||||
|
top: 0,
|
||||||
|
left: 0,
|
||||||
|
behavior: "smooth",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
const myRef_detail_client = useRef(null)
|
const myRef_detail_client = useRef(null)
|
||||||
return (
|
return (
|
||||||
|
|
||||||
|
@ -463,7 +585,7 @@ const Partner_Client = (props) => {
|
||||||
{<div className="div_row" style={{ "border": "None", "color": "orange", "textAlign": "center" }}>
|
{<div className="div_row" style={{ "border": "None", "color": "orange", "textAlign": "center" }}>
|
||||||
|
|
||||||
<div className="div_row_gauche" style={{ "textAlign": 'left', 'marginLeft': '15px' }}>
|
<div className="div_row_gauche" style={{ "textAlign": 'left', 'marginLeft': '15px' }}>
|
||||||
<Button variant="contained" className="bton_enreg" onClick={Get_List_Partner_Clients}>Rechercher
|
<Button variant="contained" className="bton_enreg" onClick={Get_List_Partner_Clients} ref={myRef_head}>Rechercher
|
||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -505,6 +627,7 @@ const Partner_Client = (props) => {
|
||||||
id: index,
|
id: index,
|
||||||
email: JSON.parse(item).email,
|
email: JSON.parse(item).email,
|
||||||
nom: JSON.parse(item).nom,
|
nom: JSON.parse(item).nom,
|
||||||
|
_id: JSON.parse(item)._id,
|
||||||
|
|
||||||
}
|
}
|
||||||
))}
|
))}
|
||||||
|
@ -525,6 +648,9 @@ const Partner_Client = (props) => {
|
||||||
setSelectionModel(newSelectionModel);
|
setSelectionModel(newSelectionModel);
|
||||||
if (newSelectionModel.length === 1)
|
if (newSelectionModel.length === 1)
|
||||||
handleClick_edit_session_From_Line(newSelectionModel);
|
handleClick_edit_session_From_Line(newSelectionModel);
|
||||||
|
else{
|
||||||
|
setEdite_Client();
|
||||||
|
}
|
||||||
}}
|
}}
|
||||||
selectionModel={selectionModel}
|
selectionModel={selectionModel}
|
||||||
|
|
||||||
|
@ -574,20 +700,21 @@ const Partner_Client = (props) => {
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
{String(Edite_Client) === "1" && <div className="div_row">
|
{String(Edite_Client) === "1" && <div className="div_row">
|
||||||
|
|
||||||
<div className="titre1"> Detail client : {Client_email}</div>
|
<div className="titre1"> Detail client : {Client_email}</div>
|
||||||
|
|
||||||
<AddParnerClient client_mail={Client_email} close_detail_client={close_detail_client} />
|
<AddParnerClient client_mail={Client_email} close_detail_client={close_detail_client} father_scroll_to_top={father_scroll_to_top} />
|
||||||
|
|
||||||
</div>}
|
</div>}
|
||||||
|
|
||||||
{String(Edite_Client) === "2" && <div className="div_row">
|
{String(Edite_Client) === "2" && <div className="div_row">
|
||||||
|
|
||||||
<div className="titre1"> Detail client : {Client_email}</div>
|
<div className="titre1"> Detail client : {Client_email}</div>
|
||||||
|
<div ref={myRef_add_client}> &nbs;</div>
|
||||||
<AddParnerClient client_mail={Client_email} close_detail_client={close_detail_client} new_customer="1"
|
<AddParnerClient client_mail={Client_email} close_detail_client={close_detail_client} new_customer="1"
|
||||||
Get_List_Partner_Clients={Get_List_Partner_Clients} />
|
Get_List_Partner_Clients={Get_List_Partner_Clients} father_scroll_to_top={father_scroll_to_top} />
|
||||||
|
|
||||||
</div>}
|
</div>}
|
||||||
|
|
||||||
|
|
|
@ -68,10 +68,10 @@ const Partner_Commande = (props) => {
|
||||||
const columns = [
|
const columns = [
|
||||||
{ 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: 'order_header_ref_interne', headerName: 'Reference', width: 100, hide: false, editable: true },
|
{ field: 'order_header_ref_interne', headerName: 'Reference', width: 100, hide: false, editable: false },
|
||||||
{ field: 'order_header_type', headerName: 'Type', width: 100, hide: false, editable: true },
|
{ field: 'order_header_type', headerName: 'Type', width: 100, hide: false, editable: false },
|
||||||
{
|
{
|
||||||
field: 'order_header_status', headerName: 'Statut', width: 100, hide: false, editable: true,
|
field: 'order_header_status', headerName: 'Statut', width: 100, hide: false, editable: false,
|
||||||
valueFormatter: (params) => {
|
valueFormatter: (params) => {
|
||||||
if (String(params.value) === "-1")
|
if (String(params.value) === "-1")
|
||||||
return "Annulé";
|
return "Annulé";
|
||||||
|
@ -88,12 +88,12 @@ const Partner_Commande = (props) => {
|
||||||
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{ field: 'order_header_client_id', headerName: 'Client_Id', width: 150, hide: true },
|
{ field: 'order_header_client_id', headerName: 'Client_Id', width: 150, hide: true, editable: false },
|
||||||
{ field: 'order_header_client_nom', headerName: 'Nom Client', width: 150, hideable: false, flex: 1 },
|
{ field: 'order_header_client_nom', headerName: 'Nom Client', width: 150, hideable: false, flex: 1 },
|
||||||
{ field: 'order_header_vendeur_id', headerName: 'Vendeur Id', width: 150, hide: true },
|
{ field: 'order_header_vendeur_id', headerName: 'Vendeur Id', width: 150, hide: true, editable: false },
|
||||||
{ field: 'order_header_vendeur_nom_prenom', headerName: 'Vendeur', width: 150, hideable: false, flex: 1 },
|
{ field: 'order_header_vendeur_nom_prenom', headerName: 'Vendeur', width: 150, hideable: false, flex: 1, editable: false },
|
||||||
{ field: 'order_header_date_cmd', headerName: 'Date', width: 150, hide: false, editable: true },
|
{ field: 'order_header_date_cmd', headerName: 'Date', width: 150, hide: false, editable: false },
|
||||||
{ field: 'order_header_date_expiration', headerName: 'Date Expiration', width: 150, hide: false, editable: true },
|
{ field: 'order_header_date_expiration', headerName: 'Date Expiration', width: 150, hide: false, editable: false },
|
||||||
|
|
||||||
|
|
||||||
/* {
|
/* {
|
||||||
|
@ -188,11 +188,11 @@ const Partner_Commande = (props) => {
|
||||||
|
|
||||||
{ field: 'order_line_qty', headerName: 'Qte', width: 100, hide: false, editable: false },
|
{ field: 'order_line_qty', headerName: 'Qte', width: 100, hide: false, editable: false },
|
||||||
{ field: 'order_line_prix_unitaire', headerName: 'Prix Unit.', width: 100, hide: false, editable: false },
|
{ field: 'order_line_prix_unitaire', headerName: 'Prix Unit.', width: 100, hide: false, editable: false },
|
||||||
{ field: 'order_header_id', headerName: 'Id_Entete', hide: true },
|
{ field: 'order_header_id', headerName: 'Id_Entete', hide: true, editable: false },
|
||||||
{ field: 'order_header_ref_interne', headerName: 'Ref_Interne', hide: true },
|
{ field: 'order_header_ref_interne', headerName: 'Ref_Interne', hide: true, editable: false },
|
||||||
{ field: 'order_line_type', headerName: 'Type', width: 100, hide: false, editable: false },
|
{ field: 'order_line_type', headerName: 'Type', width: 100, hide: false, editable: false },
|
||||||
{
|
{
|
||||||
field: 'order_line_status', headerName: 'Statut', width: 150, hide: false, editable: true,
|
field: 'order_line_status', headerName: 'Statut', width: 150, hide: false, editable: false,
|
||||||
valueFormatter: (params) => {
|
valueFormatter: (params) => {
|
||||||
if (String(params.value) === "-1")
|
if (String(params.value) === "-1")
|
||||||
return "Annulé";
|
return "Annulé";
|
||||||
|
@ -2513,13 +2513,13 @@ const Partner_Commande = (props) => {
|
||||||
Edition d'un ligne de commande / devis
|
Edition d'un ligne de commande / devis
|
||||||
</DialogContentText>
|
</DialogContentText>
|
||||||
|
|
||||||
|
<div className="session_caract_Dialog" > Article
|
||||||
|
|
||||||
<TextField
|
<TextField
|
||||||
autoFocus
|
autoFocus
|
||||||
margin="dense"
|
margin="dense"
|
||||||
id="ref_article"
|
id="ref_article"
|
||||||
label="Article"
|
//label="Article"
|
||||||
select
|
select
|
||||||
fullWidth
|
fullWidth
|
||||||
//variant="standard"
|
//variant="standard"
|
||||||
|
@ -2536,7 +2536,7 @@ const Partner_Commande = (props) => {
|
||||||
>
|
>
|
||||||
{GetCurrentPartnerClass_result &&
|
{GetCurrentPartnerClass_result &&
|
||||||
GetCurrentPartnerClass_result.map((myclass) => (
|
GetCurrentPartnerClass_result.map((myclass) => (
|
||||||
<MenuItem key={JSON.parse(myclass).internal_url} value={JSON.parse(myclass).internal_url} style={{ "paddingLeft": "5px", "textAlign": "left", }}
|
<MenuItem key={JSON.parse(myclass).internal_url} value={JSON.parse(myclass).internal_url} style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }}
|
||||||
id="mysy_item_class"
|
id="mysy_item_class"
|
||||||
mysy_item_class_title={JSON.parse(myclass).title}>
|
mysy_item_class_title={JSON.parse(myclass).title}>
|
||||||
{JSON.parse(myclass).title}
|
{JSON.parse(myclass).title}
|
||||||
|
@ -2545,13 +2545,14 @@ const Partner_Commande = (props) => {
|
||||||
))}
|
))}
|
||||||
</TextField>
|
</TextField>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div className="session_caract_Dialog" > Quantité
|
||||||
|
|
||||||
<TextField
|
<TextField
|
||||||
autoFocus
|
autoFocus
|
||||||
margin="dense"
|
margin="dense"
|
||||||
id="ref_article_qty"
|
id="ref_article_qty"
|
||||||
label="Quantité"
|
//label="Quantité"
|
||||||
type="number"
|
type="number"
|
||||||
fullWidth
|
fullWidth
|
||||||
//variant="standard"
|
//variant="standard"
|
||||||
|
@ -2562,11 +2563,15 @@ const Partner_Commande = (props) => {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className="session_caract_Dialog" > Prix Unitaire
|
||||||
<TextField
|
<TextField
|
||||||
autoFocus
|
autoFocus
|
||||||
margin="dense"
|
margin="dense"
|
||||||
id="ref_article_unit_price"
|
id="ref_article_unit_price"
|
||||||
label="Prix Unitaire"
|
//label="Prix Unitaire"
|
||||||
type="number"
|
type="number"
|
||||||
fullWidth
|
fullWidth
|
||||||
//variant="standard"
|
//variant="standard"
|
||||||
|
@ -2577,19 +2582,21 @@ const Partner_Commande = (props) => {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/>
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className="session_caract_Dialog" > Type reduction
|
||||||
<TextField
|
<TextField
|
||||||
autoFocus
|
autoFocus
|
||||||
margin="dense"
|
margin="dense"
|
||||||
id="ref_article_type_reduction"
|
id="ref_article_type_reduction"
|
||||||
label="Type reduction"
|
//label="Type reduction"
|
||||||
select
|
select
|
||||||
fullWidth
|
fullWidth
|
||||||
//variant="standard"
|
//variant="standard"
|
||||||
value={p_add_line_item_type_reduction}
|
value={p_add_line_item_type_reduction}
|
||||||
onChange={(e) => {
|
onChange={(e) => {
|
||||||
setp_add_line_item_type_reduction(e.target.value);
|
setp_add_line_item_type_reduction(e.target.value);
|
||||||
console.log(" ## e.target.value = ", e.target.value);
|
//console.log(" ## e.target.value = ", e.target.value);
|
||||||
setp_add_line_item_reduction_value("0");
|
setp_add_line_item_reduction_value("0");
|
||||||
setp_add_line_item_reduction_total_amount('0');
|
setp_add_line_item_reduction_total_amount('0');
|
||||||
setp_add_line_item_reduction_value('0');
|
setp_add_line_item_reduction_value('0');
|
||||||
|
@ -2603,12 +2610,14 @@ const Partner_Commande = (props) => {
|
||||||
<MenuItem value="percent" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Pourcentage </MenuItem>
|
<MenuItem value="percent" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }} >Pourcentage </MenuItem>
|
||||||
|
|
||||||
</TextField>
|
</TextField>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className="session_caract_Dialog" > Reduction
|
||||||
<TextField
|
<TextField
|
||||||
autoFocus
|
autoFocus
|
||||||
margin="dense"
|
margin="dense"
|
||||||
id="ref_article_reduction_value"
|
id="ref_article_reduction_value"
|
||||||
label="Reduction"
|
//label="Reduction"
|
||||||
type="number"
|
type="number"
|
||||||
fullWidth
|
fullWidth
|
||||||
//variant="standard"
|
//variant="standard"
|
||||||
|
@ -2621,12 +2630,14 @@ const Partner_Commande = (props) => {
|
||||||
}
|
}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className="session_caract_Dialog" > Total Reduction
|
||||||
<TextField
|
<TextField
|
||||||
autoFocus
|
autoFocus
|
||||||
margin="dense"
|
margin="dense"
|
||||||
id="ref_article_reduction_total_amount"
|
id="ref_article_reduction_total_amount"
|
||||||
label="Total Reduction"
|
//label="Total Reduction"
|
||||||
type="text"
|
type="text"
|
||||||
fullWidth
|
fullWidth
|
||||||
//variant="standard"
|
//variant="standard"
|
||||||
|
@ -2636,7 +2647,9 @@ const Partner_Commande = (props) => {
|
||||||
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className="session_caract_Dialog_comment_2_lines" > Commentaire
|
||||||
<TextField
|
<TextField
|
||||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
||||||
|
|
||||||
|
@ -2651,7 +2664,7 @@ const Partner_Commande = (props) => {
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
label="Commentaire"
|
//label="Commentaire"
|
||||||
//variant="standard"
|
//variant="standard"
|
||||||
multiline
|
multiline
|
||||||
minRows={2}
|
minRows={2}
|
||||||
|
@ -2660,14 +2673,18 @@ const Partner_Commande = (props) => {
|
||||||
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className="session_caract_Dialog" > Total HT
|
||||||
<TextField
|
<TextField
|
||||||
autoFocus
|
autoFocus
|
||||||
margin="dense"
|
margin="dense"
|
||||||
id="ref_article_total_amount_ht"
|
id="ref_article_total_amount_ht"
|
||||||
label="Total HT"
|
//label="Total HT"
|
||||||
type="text"
|
type="text"
|
||||||
fullWidth
|
fullWidth
|
||||||
//variant="standard"
|
//variant="standard"
|
||||||
|
disabled={true}
|
||||||
value={p_add_line_item_total_amount_ht}
|
value={p_add_line_item_total_amount_ht}
|
||||||
onChange={(e) => {
|
onChange={(e) => {
|
||||||
setp_add_line_item_total_amount_ht(e.target.value);
|
setp_add_line_item_total_amount_ht(e.target.value);
|
||||||
|
@ -2676,8 +2693,10 @@ const Partner_Commande = (props) => {
|
||||||
}
|
}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{/* <div className="session_caract" style={{ "width": "100%", "height": "5rem" }}> Total HT
|
||||||
|
|
||||||
<div className="session_caract"> Total HT<br />
|
|
||||||
<TextField
|
<TextField
|
||||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
||||||
required
|
required
|
||||||
|
@ -2692,7 +2711,7 @@ const Partner_Commande = (props) => {
|
||||||
className="disabled_style_Dialog"
|
className="disabled_style_Dialog"
|
||||||
value={p_add_line_item_total_amount_ht}
|
value={p_add_line_item_total_amount_ht}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>*/}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -2724,7 +2743,7 @@ const Partner_Commande = (props) => {
|
||||||
<DialogTitle>Nouvelle Commande</DialogTitle>
|
<DialogTitle>Nouvelle Commande</DialogTitle>
|
||||||
<DialogContent>
|
<DialogContent>
|
||||||
|
|
||||||
<div className="session_caract" style={{ "width": "100%", "height": "5rem" }}> Client
|
<div className="session_caract_Dialog" > Client
|
||||||
<TextField
|
<TextField
|
||||||
autoFocus
|
autoFocus
|
||||||
margin="dense"
|
margin="dense"
|
||||||
|
@ -2802,7 +2821,7 @@ const Partner_Commande = (props) => {
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="session_caract" style={{ "width": "100%", "height": "5rem" }}> Description <br />
|
<div className="session_caract_Dialog" > Description <br />
|
||||||
<TextField
|
<TextField
|
||||||
autoFocus
|
autoFocus
|
||||||
margin="dense"
|
margin="dense"
|
||||||
|
@ -2820,7 +2839,7 @@ const Partner_Commande = (props) => {
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="session_caract" style={{ "width": "100%", "height": "5rem" }}> Ref. externe <br />
|
<div className="session_caract_Dialog" > Ref. externe <br />
|
||||||
<TextField
|
<TextField
|
||||||
autoFocus
|
autoFocus
|
||||||
margin="dense"
|
margin="dense"
|
||||||
|
@ -2838,7 +2857,7 @@ const Partner_Commande = (props) => {
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="session_caract" style={{ "width": "100%", "height": "5rem" }}> Vendeur <br />
|
<div className="session_caract_Dialog" > Vendeur <br />
|
||||||
|
|
||||||
<TextField
|
<TextField
|
||||||
autoFocus
|
autoFocus
|
||||||
|
@ -2866,7 +2885,7 @@ const Partner_Commande = (props) => {
|
||||||
</TextField>
|
</TextField>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="session_caract" style={{ "width": "100%", "height": "5rem" }}> Conditions Paiement <br />
|
<div className="session_caract_Dialog" > Conditions Paiement <br />
|
||||||
|
|
||||||
<TextField
|
<TextField
|
||||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
||||||
|
@ -2886,7 +2905,7 @@ const Partner_Commande = (props) => {
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="session_caract" style={{ "width": "100%", "height": "5rem" }}> Type <br />
|
<div className="session_caract_Dialog" > Type <br />
|
||||||
|
|
||||||
<TextField
|
<TextField
|
||||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
||||||
|
@ -2901,7 +2920,7 @@ const Partner_Commande = (props) => {
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div className="session_caract" style={{ "width": "100%", "height": "5rem" }}> Emplacement <br />
|
<div className="session_caract_Dialog" > Emplacement <br />
|
||||||
<TextField
|
<TextField
|
||||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
||||||
name="order_header_location_type"
|
name="order_header_location_type"
|
||||||
|
@ -2925,7 +2944,7 @@ const Partner_Commande = (props) => {
|
||||||
</TextField>
|
</TextField>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div className="session_caract" style={{ "width": "100%", "height": "5rem" }}> Commentaire <br />
|
<div className="session_caract_Dialog_comment_2_lines" > Commentaire <br />
|
||||||
<TextField
|
<TextField
|
||||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
||||||
name="order_commentaire"
|
name="order_commentaire"
|
||||||
|
@ -3402,7 +3421,6 @@ const Partner_Commande = (props) => {
|
||||||
<Button variant="outlined" onClick={order_header_submenu_detail} className="detail_class_submenu" id='order_header_detail' name='order_header_detail'>Menu Total </Button>
|
<Button variant="outlined" onClick={order_header_submenu_detail} className="detail_class_submenu" id='order_header_detail' name='order_header_detail'>Menu Total </Button>
|
||||||
<Button variant="outlined" onClick={order_header_submenu_facturation} className="detail_class_submenu" id='order_header_facturation' name='order_header_facturation'>Menu Facturation </Button>
|
<Button variant="outlined" onClick={order_header_submenu_facturation} className="detail_class_submenu" id='order_header_facturation' name='order_header_facturation'>Menu Facturation </Button>
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div style={{ "width": "100%", "float": "left" }}>
|
<div style={{ "width": "100%", "float": "left" }}>
|
||||||
<div style={{ "width": "75%", "float": "left" }}>
|
<div style={{ "width": "75%", "float": "left" }}>
|
||||||
|
@ -3746,7 +3764,7 @@ const Partner_Commande = (props) => {
|
||||||
/>
|
/>
|
||||||
</div>}
|
</div>}
|
||||||
|
|
||||||
{String(order_data_edit_mode) === "1" && <div className="session_caract"> Vendeur<br />
|
{String(order_data_edit_mode) === "1" && <div className="session_caract"> Vendeur t<br />
|
||||||
<TextField
|
<TextField
|
||||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
||||||
required
|
required
|
||||||
|
@ -3769,7 +3787,7 @@ const Partner_Commande = (props) => {
|
||||||
{Getall_Training_Employee_No_Filter_result &&
|
{Getall_Training_Employee_No_Filter_result &&
|
||||||
Getall_Training_Employee_No_Filter_result.map((myclient) => (
|
Getall_Training_Employee_No_Filter_result.map((myclient) => (
|
||||||
<MenuItem key={JSON.parse(myclient)._id} value={JSON.parse(myclient)._id}
|
<MenuItem key={JSON.parse(myclient)._id} value={JSON.parse(myclient)._id}
|
||||||
style={{ "paddingLeft": "5px", "textAlign": "left", }}>
|
style={{ "paddingLeft": "5px", "textAlign": "left","height":"2rem" }}>
|
||||||
{JSON.parse(myclient).nom} {JSON.parse(myclient).prenom}
|
{JSON.parse(myclient).nom} {JSON.parse(myclient).prenom}
|
||||||
|
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
|
@ -4186,13 +4204,13 @@ const Partner_Commande = (props) => {
|
||||||
</div>
|
</div>
|
||||||
<div style={{ "width": "23%", "float": "left", "textAlign": "right", "paddingTop": "2rem" }}>
|
<div style={{ "width": "23%", "float": "left", "textAlign": "right", "paddingTop": "2rem" }}>
|
||||||
|
|
||||||
<Button variant="outlined" onClick={Confirm_Order_Data} className="detail_class_submenu bton_add_session"> Confirmer </Button>
|
<Button variant="outlined" onClick={Confirm_Order_Data} className="detail_class_submenu bton_add_sous_menu"> Confirmer </Button>
|
||||||
{String(selected_order_header_type) === "devis" && <Button variant="outlined" onClick={Convert_Quotation_To_Order_Data} className="detail_class_submenu bton_add_session"> Convertir en Cmd </Button>}
|
{String(selected_order_header_type) === "devis" && <Button variant="outlined" onClick={Convert_Quotation_To_Order_Data} className="detail_class_submenu bton_add_sous_menu"> Convertir en Cmd </Button>}
|
||||||
<Button variant="outlined" onClick={Cancel_Order_Data} className="detail_class_submenu bton_add_session"> Annuler </Button>
|
<Button variant="outlined" onClick={Cancel_Order_Data} className="detail_class_submenu bton_add_sous_menu"> Annuler </Button>
|
||||||
|
|
||||||
|
|
||||||
<Popup
|
<Popup
|
||||||
trigger={<Button variant="outlined" className="detail_class_submenu bton_add_session"> Supprimer </Button>}
|
trigger={<Button variant="outlined" className="detail_class_submenu bton_add_sous_menu"> Supprimer </Button>}
|
||||||
|
|
||||||
modal
|
modal
|
||||||
nested
|
nested
|
||||||
|
@ -4283,7 +4301,9 @@ const Partner_Commande = (props) => {
|
||||||
<div className="session_data" >
|
<div className="session_data" >
|
||||||
|
|
||||||
<div style={{ "border": "None" }}>
|
<div style={{ "border": "None" }}>
|
||||||
<nav onClick={Ajouter_une_ligne_article} style={{ "fontSize": "18px", "fontWeight": '600', "marginLeft": "10px", "marginTop": "10px" }}> <Button> Ajouter une ligne </Button> </nav>
|
<nav onClick={Ajouter_une_ligne_article} style={{ "fontSize": "18px", "fontWeight": '600', "marginLeft": "10px", "marginTop": "10px" }}> <Button> Ajouter une ligne
|
||||||
|
|
||||||
|
</Button> <img src={add_plus} alt="ajout commande" className="icon_plus_line" /> </nav>
|
||||||
<div style={{ height: 550, width: '100%', paddingRight: '1px' }}>
|
<div style={{ height: 550, width: '100%', paddingRight: '1px' }}>
|
||||||
|
|
||||||
<Box
|
<Box
|
||||||
|
|
|
@ -1356,7 +1356,7 @@
|
||||||
.bton_add_session {
|
.bton_add_session {
|
||||||
background: #c8cfd5;
|
background: #c8cfd5;
|
||||||
color: black;
|
color: black;
|
||||||
width: 40%;
|
width: 50%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.bton_import_excel {
|
.bton_import_excel {
|
||||||
|
@ -1830,7 +1830,7 @@
|
||||||
.bton_add_session {
|
.bton_add_session {
|
||||||
background: #c8cfd5;
|
background: #c8cfd5;
|
||||||
color: black;
|
color: black;
|
||||||
width: 20% !important;
|
width: 30% !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.bton_import_excel {
|
.bton_import_excel {
|
||||||
|
@ -2123,7 +2123,7 @@
|
||||||
// end media
|
// end media
|
||||||
|
|
||||||
.css-1v4ccyo {
|
.css-1v4ccyo {
|
||||||
height: 3.5rem !important;
|
height: 4rem !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
option {
|
option {
|
||||||
|
@ -2171,6 +2171,7 @@
|
||||||
|
|
||||||
.css-1x5jdmq {
|
.css-1x5jdmq {
|
||||||
height: 3rem !important;
|
height: 3rem !important;
|
||||||
|
font-size: small;
|
||||||
}
|
}
|
||||||
|
|
||||||
.select_option_css {
|
.select_option_css {
|
||||||
|
|
|
@ -2185,6 +2185,7 @@
|
||||||
|
|
||||||
.css-1x5jdmq {
|
.css-1x5jdmq {
|
||||||
height: 3rem !important;
|
height: 3rem !important;
|
||||||
|
font-size: small;
|
||||||
}
|
}
|
||||||
|
|
||||||
.select_option_css {
|
.select_option_css {
|
||||||
|
|
|
@ -2249,6 +2249,7 @@
|
||||||
|
|
||||||
.css-1x5jdmq {
|
.css-1x5jdmq {
|
||||||
height: 3rem !important;
|
height: 3rem !important;
|
||||||
|
font-size: small;
|
||||||
}
|
}
|
||||||
|
|
||||||
.select_option_css {
|
.select_option_css {
|
||||||
|
|
|
@ -2216,6 +2216,7 @@
|
||||||
|
|
||||||
.css-1x5jdmq {
|
.css-1x5jdmq {
|
||||||
height: 3rem !important;
|
height: 3rem !important;
|
||||||
|
font-size: small;
|
||||||
}
|
}
|
||||||
|
|
||||||
.select_option_css {
|
.select_option_css {
|
||||||
|
|
|
@ -1204,8 +1204,8 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
.preview_certif:hover {
|
.preview_certif:hover {
|
||||||
transform: scale(1.8);
|
transform: scale(1.5);
|
||||||
margin-left: 0.5rem;
|
margin-left: 0.2rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.hr_break {
|
.hr_break {
|
||||||
|
@ -1535,8 +1535,8 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
.preview_certif:hover {
|
.preview_certif:hover {
|
||||||
transform: scale(1.5);
|
transform: scale(1.2);
|
||||||
margin-left: 1rem;
|
margin-left: 0.2rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1912,6 +1912,7 @@
|
||||||
|
|
||||||
.css-1x5jdmq {
|
.css-1x5jdmq {
|
||||||
height: 3rem !important;
|
height: 3rem !important;
|
||||||
|
font-size: small;
|
||||||
}
|
}
|
||||||
|
|
||||||
.select_option_css {
|
.select_option_css {
|
||||||
|
|
|
@ -2216,6 +2216,7 @@
|
||||||
|
|
||||||
.css-1x5jdmq {
|
.css-1x5jdmq {
|
||||||
height: 3rem !important;
|
height: 3rem !important;
|
||||||
|
font-size: small;
|
||||||
}
|
}
|
||||||
|
|
||||||
.select_option_css {
|
.select_option_css {
|
||||||
|
|
|
@ -1089,7 +1089,7 @@
|
||||||
|
|
||||||
.css-1x5jdmq {
|
.css-1x5jdmq {
|
||||||
height: 3rem !important;
|
height: 3rem !important;
|
||||||
font-size: medium !important;
|
font-size: small !important;
|
||||||
padding: 0px !important;
|
padding: 0px !important;
|
||||||
padding-left: 5px !important;
|
padding-left: 5px !important;
|
||||||
padding-right: 5px !important;
|
padding-right: 5px !important;
|
||||||
|
|
|
@ -195,6 +195,16 @@
|
||||||
float: left;
|
float: left;
|
||||||
text-align: left;
|
text-align: left;
|
||||||
font-size: small;
|
font-size: small;
|
||||||
|
margin-bottom: 1rem !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.session_caract_comment_2_lines {
|
||||||
|
width: 100%;
|
||||||
|
padding: 5px;
|
||||||
|
float: left;
|
||||||
|
text-align: left;
|
||||||
|
font-size: small;
|
||||||
|
margin-bottom: 1rem !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.session_style {
|
.session_style {
|
||||||
|
@ -234,12 +244,23 @@
|
||||||
width: 6%;
|
width: 6%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.icon_plus_line {
|
||||||
|
width: 3%;
|
||||||
|
}
|
||||||
|
|
||||||
.bton_add_session {
|
.bton_add_session {
|
||||||
background: #c8cfd5;
|
background: #c8cfd5;
|
||||||
color: black;
|
color: black;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.bton_add_sous_menu {
|
||||||
|
background: #c8cfd5;
|
||||||
|
color: black;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
.bton_import_excel {
|
.bton_import_excel {
|
||||||
background: #c8cfd5;
|
background: #c8cfd5;
|
||||||
color: black;
|
color: black;
|
||||||
|
@ -737,6 +758,16 @@
|
||||||
float: left;
|
float: left;
|
||||||
text-align: left;
|
text-align: left;
|
||||||
font-size: small;
|
font-size: small;
|
||||||
|
margin-bottom: 1rem !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.session_caract_comment_2_lines {
|
||||||
|
width: 50%;
|
||||||
|
padding: 5px;
|
||||||
|
float: left;
|
||||||
|
text-align: left;
|
||||||
|
font-size: small;
|
||||||
|
margin-bottom: 1rem !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.session_style {
|
.session_style {
|
||||||
|
@ -782,12 +813,23 @@
|
||||||
width: 6%;
|
width: 6%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.icon_plus_line {
|
||||||
|
width: 4%;
|
||||||
|
}
|
||||||
|
|
||||||
.bton_add_session {
|
.bton_add_session {
|
||||||
background: #c8cfd5;
|
background: #c8cfd5;
|
||||||
color: black;
|
color: black;
|
||||||
width: 50%;
|
width: 50%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.bton_add_sous_menu {
|
||||||
|
background: #c8cfd5;
|
||||||
|
color: black;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
.bton_import_excel {
|
.bton_import_excel {
|
||||||
background: #c8cfd5;
|
background: #c8cfd5;
|
||||||
color: black;
|
color: black;
|
||||||
|
@ -1309,8 +1351,20 @@
|
||||||
float: left;
|
float: left;
|
||||||
text-align: left;
|
text-align: left;
|
||||||
font-size: small;
|
font-size: small;
|
||||||
|
margin-bottom: 1rem !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.session_caract_comment_2_lines {
|
||||||
|
width: 33%;
|
||||||
|
padding: 5px;
|
||||||
|
float: left;
|
||||||
|
text-align: left;
|
||||||
|
font-size: small;
|
||||||
|
margin-bottom: 1rem !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.session_style {
|
.session_style {
|
||||||
//background-color: #ECEFF1;
|
//background-color: #ECEFF1;
|
||||||
font-size: small !important;
|
font-size: small !important;
|
||||||
|
@ -1353,12 +1407,23 @@
|
||||||
width: 8%;
|
width: 8%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.icon_plus_line {
|
||||||
|
width: 3%;
|
||||||
|
}
|
||||||
|
|
||||||
.bton_add_session {
|
.bton_add_session {
|
||||||
background: #c8cfd5;
|
background: #c8cfd5;
|
||||||
color: black;
|
color: black;
|
||||||
width: 40%;
|
width: 40%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.bton_add_sous_menu {
|
||||||
|
background: #c8cfd5;
|
||||||
|
color: black;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
.bton_import_excel {
|
.bton_import_excel {
|
||||||
background: #c8cfd5;
|
background: #c8cfd5;
|
||||||
color: black;
|
color: black;
|
||||||
|
@ -1718,6 +1783,17 @@
|
||||||
float: left;
|
float: left;
|
||||||
text-align: left;
|
text-align: left;
|
||||||
font-size: small;
|
font-size: small;
|
||||||
|
margin-bottom: 1rem !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.session_caract_Dialog_comment_2_lines {
|
||||||
|
|
||||||
|
width: 100%;
|
||||||
|
padding: 5px;
|
||||||
|
float: left;
|
||||||
|
text-align: left;
|
||||||
|
font-size: small;
|
||||||
|
margin-bottom: 1rem !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1772,12 +1848,24 @@
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.session_caract {
|
.session_caract {
|
||||||
width: 33%;
|
width: 33%;
|
||||||
padding: 5px;
|
padding: 5px;
|
||||||
float: left;
|
float: left;
|
||||||
text-align: left;
|
text-align: left;
|
||||||
font-size: small;
|
font-size: small;
|
||||||
|
margin-bottom: 1rem !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.session_caract_comment_2_lines {
|
||||||
|
width: 33%;
|
||||||
|
padding: 5px;
|
||||||
|
float: left;
|
||||||
|
text-align: left;
|
||||||
|
font-size: small;
|
||||||
|
margin-bottom: 1rem !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.session_style {
|
.session_style {
|
||||||
|
@ -1835,10 +1923,20 @@
|
||||||
width: 8%;
|
width: 8%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.icon_plus_line {
|
||||||
|
width: 2%;
|
||||||
|
}
|
||||||
|
|
||||||
.bton_add_session {
|
.bton_add_session {
|
||||||
background: #c8cfd5;
|
background: #c8cfd5;
|
||||||
color: black;
|
color: black;
|
||||||
width: 20% !important;
|
width: 25% !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.bton_add_sous_menu {
|
||||||
|
background: #c8cfd5;
|
||||||
|
color: black;
|
||||||
|
width: 25% !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.bton_import_excel {
|
.bton_import_excel {
|
||||||
|
@ -2156,8 +2254,28 @@
|
||||||
|
|
||||||
// end media
|
// end media
|
||||||
|
|
||||||
|
.session_caract_Dialog {
|
||||||
|
width: 100%;
|
||||||
|
padding: 5px;
|
||||||
|
float: left;
|
||||||
|
text-align: left;
|
||||||
|
font-size: small;
|
||||||
|
margin-bottom: 1rem !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.session_caract_Dialog_comment_2_lines {
|
||||||
|
|
||||||
|
width: 100%;
|
||||||
|
padding: 5px;
|
||||||
|
float: left;
|
||||||
|
text-align: left;
|
||||||
|
font-size: small;
|
||||||
|
margin-bottom: 1rem !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
.css-1v4ccyo {
|
.css-1v4ccyo {
|
||||||
height: 3.5rem !important;
|
height: 4rem !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
option {
|
option {
|
||||||
|
@ -2212,7 +2330,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
.MuiSelect-select{
|
.MuiSelect-select{
|
||||||
height: 3rem !important;
|
//height: 3rem !important;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2232,6 +2350,7 @@
|
||||||
|
|
||||||
.css-1x5jdmq {
|
.css-1x5jdmq {
|
||||||
height: 3rem !important;
|
height: 3rem !important;
|
||||||
|
font-size: small;
|
||||||
}
|
}
|
||||||
|
|
||||||
.select_option_css {
|
.select_option_css {
|
||||||
|
|
|
@ -247,6 +247,7 @@
|
||||||
|
|
||||||
.css-qiwgdb {
|
.css-qiwgdb {
|
||||||
padding: 6px !important;
|
padding: 6px !important;
|
||||||
|
font-size: small;
|
||||||
}
|
}
|
||||||
|
|
||||||
.preview_certif {
|
.preview_certif {
|
||||||
|
@ -790,6 +791,7 @@
|
||||||
|
|
||||||
.css-qiwgdb {
|
.css-qiwgdb {
|
||||||
padding: 6px !important;
|
padding: 6px !important;
|
||||||
|
font-size: small;
|
||||||
}
|
}
|
||||||
|
|
||||||
.preview_certif {
|
.preview_certif {
|
||||||
|
@ -1361,6 +1363,7 @@
|
||||||
|
|
||||||
.css-qiwgdb {
|
.css-qiwgdb {
|
||||||
padding: 6px !important;
|
padding: 6px !important;
|
||||||
|
font-size: small;
|
||||||
}
|
}
|
||||||
|
|
||||||
.preview_certif {
|
.preview_certif {
|
||||||
|
@ -1933,6 +1936,7 @@
|
||||||
|
|
||||||
.css-qiwgdb {
|
.css-qiwgdb {
|
||||||
padding: 6px !important;
|
padding: 6px !important;
|
||||||
|
font-size: small;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -2185,6 +2189,7 @@
|
||||||
|
|
||||||
.css-1x5jdmq {
|
.css-1x5jdmq {
|
||||||
height: 3rem !important;
|
height: 3rem !important;
|
||||||
|
font-size: small;
|
||||||
}
|
}
|
||||||
|
|
||||||
.select_option_css {
|
.select_option_css {
|
||||||
|
|
|
@ -2216,6 +2216,7 @@
|
||||||
|
|
||||||
.css-1x5jdmq {
|
.css-1x5jdmq {
|
||||||
height: 3rem !important;
|
height: 3rem !important;
|
||||||
|
font-size: small;
|
||||||
}
|
}
|
||||||
|
|
||||||
.select_option_css {
|
.select_option_css {
|
||||||
|
|
Loading…
Reference in New Issue