diff --git a/projet/Controller/PageConnexionController.cs b/projet/Controller/PageConnexionController.cs index 9be3a38..a64892a 100644 --- a/projet/Controller/PageConnexionController.cs +++ b/projet/Controller/PageConnexionController.cs @@ -8,6 +8,9 @@ using System.Threading.Tasks; namespace projet.Controller { + /// + /// Gestionnaire de la page de connexion pour les responsables. + /// public class PageConnexionController { private readonly ResponsableAccess responsableAccess; diff --git a/projet/Form1.Designer.cs b/projet/Form1.Designer.cs deleted file mode 100644 index f80f4f7..0000000 --- a/projet/Form1.Designer.cs +++ /dev/null @@ -1,39 +0,0 @@ -namespace projet -{ - partial class Form1 - { - /// - /// Required designer variable. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Clean up any resources being used. - /// - /// true if managed resources should be disposed; otherwise, false. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Windows Form Designer generated code - - /// - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// - private void InitializeComponent() - { - this.components = new System.ComponentModel.Container(); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(800, 450); - this.Text = "Form1"; - } - - #endregion - } -} diff --git a/projet/Form1.cs b/projet/Form1.cs deleted file mode 100644 index 9c438a2..0000000 --- a/projet/Form1.cs +++ /dev/null @@ -1,10 +0,0 @@ -namespace projet -{ - public partial class Form1 : Form - { - public Form1() - { - InitializeComponent(); - } - } -} diff --git a/projet/Form1.resx b/projet/Form1.resx deleted file mode 100644 index 1af7de1..0000000 --- a/projet/Form1.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/projet/HELP.html b/projet/HELP.html new file mode 100644 index 0000000..d8ac7d8 --- /dev/null +++ b/projet/HELP.html @@ -0,0 +1,201 @@ + + + + + Documentation Technique - Gestion du Personnel et des Absences + + + +
+

Documentation Technique

+

Application de Gestion du Personnel et des Absences

+
+ + +
+

Namespace: projet.dal

+ +
+

Class: Access

+

Singleton pour l'accès à la base de données.

+
+

GetInstance()

+

Renvoie l'instance unique de la classe Access.

+
Retourne: Singleton de la connexion
+
+
+ +
+

Class: AbsenceAccess

+

Méthodes d'accès aux données pour les absences du personnel.

+ +
+

GetAbsences(Personnel personnel)

+

Donne la liste des absences d'un personnel.

+
Paramètre: personnel - Personne concernée
+
Retourne: Liste des absences
+
+ +
+

AddAbsence(Absence absence, Personnel personne)

+

Méthode d'ajout d'une absence pour un personnel.

+
+ Paramètres: +
    +
  • absence - Absence à rajouter
  • +
  • personne - Personne à laquelle rajouter l'absence
  • +
+
+
+ +
+

DeleteAbsence(Absence absence)

+

Méthode de suppression d'une absence pour un personnel.

+
Paramètre: absence - Absence concernée
+
+
+ +
+

Class: MotifAccess

+

Méthodes d'accès aux données pour les motifs d'absence.

+ +
+

GetAllMotifs()

+

Méthode pour récupérer tous les motifs d'absence.

+
Retourne: Liste de motifs
+
+ +
+

GetMotifIdByLibelle(string libelle)

+

Méthode pour récupérer l'ID d'un motif par son libellé.

+
Paramètre: libelle - libelle du motif souhaité
+
Retourne: Id du motif
+
+
+ +
+

Class: PersonnelAccess

+

Méthodes d'accès aux données pour le personnel.

+ +
+

GetAllPersonnel()

+

Méthode pour récupérer tous les personnels de la base de données.

+
Retourne: Liste du personnel
+
+ +
+

addPersonnel(Personnel personne)

+

Méthode pour ajouter un personnel à la base de données.

+
Paramètre: personne - Personne à rajouter
+
+ +
+

ModifierPersonnel(Personnel personnel)

+

Méthode pour modifier les informations d'un personnel dans la base de données.

+
Paramètre: personnel - Personne à modifier
+
+
+
+ + +
+

Namespace: projet.modele

+ +
+

Class: Absence

+

Représente une absence d'un personnel.

+
+

Propriétés

+
    +
  • IdPersonnel - Identifiant du personnel
  • +
  • DateDebut - Date de début de l'absence
  • +
  • DateFin - Date de fin de l'absence
  • +
  • IdMotif - Identifiant du motif d'absence
  • +
+
+
+ +
+

Class: Motif

+

Représente un motif d'absence

+
+

Propriétés

+
    +
  • IdMotif - Identifiant du motif
  • +
  • Libelle - Libellé du motif
  • +
+
+
+ +
+

Class: Personnel

+

Représente un membre du personnel

+
+

Propriétés

+
    +
  • IdPersonnel - Identifiant du personnel
  • +
  • Nom - Nom du personnel
  • +
  • Prenom - Prénom du personnel
  • +
  • Tel - Numéro de téléphone
  • +
  • Mail - Adresse e-mail
  • +
  • IdService - Identifiant du service
  • +
+
+
+
+ + +
+

Namespace: projet.Controller

+ +
+

Class: PageConnexionController

+

Gestionnaire de la page de connexion pour les responsables.

+
+

ConnecterResponsable(Responsable responsable)

+

Connecte un responsable à l'application.

+
Paramètre: responsable - Responsable à connecter
+
Retourne: true si la connexion est réussie, false sinon
+
+
+
+ + \ No newline at end of file diff --git a/projet/Help.zip b/projet/Help.zip deleted file mode 100644 index 1feae9c..0000000 Binary files a/projet/Help.zip and /dev/null differ diff --git a/projet/View/Admin.Designer.cs b/projet/View/Admin.Designer.cs index b2e9a07..22a1c2a 100644 --- a/projet/View/Admin.Designer.cs +++ b/projet/View/Admin.Designer.cs @@ -1,5 +1,8 @@ namespace projet.View { + /// + /// Interface pour la gestion du personnel par l'administrateur. + /// partial class Admin { private System.ComponentModel.IContainer components = null; @@ -14,11 +17,6 @@ private System.Windows.Forms.Button buttonEdit; private System.Windows.Forms.Button buttonAbsence; - /// - /// Required designer variable. - /// - //private System.ComponentModel.IContainer components = null; - /// /// Clean up any resources being used. /// diff --git a/projet/View/Admin.cs b/projet/View/Admin.cs index ac7d3bf..49bc2cb 100644 --- a/projet/View/Admin.cs +++ b/projet/View/Admin.cs @@ -15,6 +15,9 @@ namespace projet.View public partial class Admin : Form { private AdminController controller; + /// + /// Méthode d'initialisation du formulaire Admin. + /// public Admin() { Init(); @@ -22,6 +25,9 @@ namespace projet.View RemplirComboBoxPersonnel(); } + /// + /// Méthode d'initialisation du contrôleur AdminController. + /// public void Init() { controller = new AdminController(); diff --git a/projet/View/ConfirmeModifierAbsence.cs b/projet/View/ConfirmeModifierAbsence.cs index 2db4aa8..a42b419 100644 --- a/projet/View/ConfirmeModifierAbsence.cs +++ b/projet/View/ConfirmeModifierAbsence.cs @@ -12,6 +12,9 @@ namespace projet.View { public partial class ConfirmeModifierAbsence : Form { + /// + /// Méthode d'initialisation du formulaire ConfirmeModifierAbsence. + /// public ConfirmeModifierAbsence() { InitializeComponent(); diff --git a/projet/View/ConfirmeModifierPersonnel.cs b/projet/View/ConfirmeModifierPersonnel.cs index 60ab4c1..e22b667 100644 --- a/projet/View/ConfirmeModifierPersonnel.cs +++ b/projet/View/ConfirmeModifierPersonnel.cs @@ -10,8 +10,14 @@ using System.Windows.Forms; namespace projet.View { + /// + /// Méthode d'initialisation du formulaire de confirmation de modification du personnel. + /// public partial class ConfirmeModifierPersonnel : Form { + /// + /// Méthode d'initialisation du formulaire ConfirmeModifierPersonnel. + /// public ConfirmeModifierPersonnel() { InitializeComponent(); diff --git a/projet/View/ConfirmeSupprimerAbsence.cs b/projet/View/ConfirmeSupprimerAbsence.cs index a66361b..7457633 100644 --- a/projet/View/ConfirmeSupprimerAbsence.cs +++ b/projet/View/ConfirmeSupprimerAbsence.cs @@ -10,8 +10,14 @@ using System.Windows.Forms; namespace projet.View { + /// + /// Méthode d'initialisation du formulaire de confirmation de modification du personnel. + /// public partial class ConfirmeSupprimerAbsence : Form { + /// + /// Méthode d'initialisation du formulaire ConfirmeSupprimerAbsence. + /// public ConfirmeSupprimerAbsence() { InitializeComponent(); diff --git a/projet/View/ConfirmeSupressionPersonnel.cs b/projet/View/ConfirmeSupressionPersonnel.cs index 7efd5fa..70ad056 100644 --- a/projet/View/ConfirmeSupressionPersonnel.cs +++ b/projet/View/ConfirmeSupressionPersonnel.cs @@ -12,10 +12,17 @@ using System.Windows.Forms; namespace projet.View { + /// + /// Méthode d'initialisation du formulaire de confirmation de suppression du personnel. + /// public partial class ConfirmeSupressionPersonnel : Form { private ConfirmeSupressionPersonnelController controller; private Personnel personne; + /// + /// Méthode d'initialisation du formulaire ConfirmerSuppressionPersonnel. + /// + /// public ConfirmeSupressionPersonnel(Personnel personne) { Init(); @@ -24,6 +31,9 @@ namespace projet.View labelTitle.Text = $"Voulez vous vraiment supprimer : {personne} ?"; } + /// + /// Méthode d'initialisation du contrôleur ConfirmeSupressionPersonnelController. + /// public void Init() { controller = new ConfirmeSupressionPersonnelController(); diff --git a/projet/View/GestionAbsence.cs b/projet/View/GestionAbsence.cs index 4342671..90dfa06 100644 --- a/projet/View/GestionAbsence.cs +++ b/projet/View/GestionAbsence.cs @@ -16,6 +16,10 @@ namespace projet.View { private Personnel personne; private GestionAbsenceController controller; + /// + /// Méthode d'initialisation du formulaire de gestion des absences pour un personnel spécifique. + /// + /// Personne concernée public GestionAbsence(Personnel personne) { InitializeComponent(); diff --git a/projet/View/ModifierAbsence.cs b/projet/View/ModifierAbsence.cs index 2c03f6d..0b3bade 100644 --- a/projet/View/ModifierAbsence.cs +++ b/projet/View/ModifierAbsence.cs @@ -12,6 +12,9 @@ namespace projet.View { public partial class ModifierAbsence : Form { + /// + /// Méthode d'initialisation du formulaire de modification d'absence. + /// public ModifierAbsence() { InitializeComponent(); diff --git a/projet/View/ModifierPersonne.cs b/projet/View/ModifierPersonne.cs index 2ee3922..3ffa165 100644 --- a/projet/View/ModifierPersonne.cs +++ b/projet/View/ModifierPersonne.cs @@ -16,6 +16,11 @@ namespace projet.View { private ModifierPersonneController controller; private Personnel personne; + + /// + /// Méthode d'initialisation du formulaire de modification d'un personnel. + /// + /// Personne concernée public ModifierPersonne(Personnel personne) { Init(); diff --git a/projet/View/PageConnexion.cs b/projet/View/PageConnexion.cs index 6b840d2..f8030cb 100644 --- a/projet/View/PageConnexion.cs +++ b/projet/View/PageConnexion.cs @@ -15,6 +15,10 @@ namespace projet.View public partial class PageConnexion : Form { private PageConnexionController controller; + + /// + /// Méthode d'initialisation du formulaire de connexion. + /// public PageConnexion() { Init(); diff --git a/projet/dal/AbsenceAccess.cs b/projet/dal/AbsenceAccess.cs index b26275b..1e28f54 100644 --- a/projet/dal/AbsenceAccess.cs +++ b/projet/dal/AbsenceAccess.cs @@ -2,40 +2,48 @@ namespace projet.dal { + /// + /// Méthodes d'accès aux données pour les absences du personnel. + /// public class AbsenceAccess { private readonly Access access; + /// + /// Récupère l'instance de la classe Access pour accéder à la base de données. + /// public AbsenceAccess() { access = Access.GetInstance(); } + /// + /// Donne la liste des absences d'un personnel. + /// + /// Personne concernée + /// public List GetAbsences(Personnel personnel) { List absences = new List(); if (access.Manager != null) { - // Sélecte toutes les absence + join libelle du motif d'absence string req2 = "SELECT a.idPersonnel, a.dateDebut, a.dateFin, m.libelle FROM absence a JOIN motif m ON a.idMotif = m.idMotif WHERE a.idPersonnel = @idPersonnel ORDER BY a.dateDebut;"; - //string req = "SELECT * FROM absence WHERE idPersonnel = @idPersonnel ORDER BY dateDebut;"; var parameters = new Dictionary { { "@idPersonnel", personnel.IdPersonnel } }; try { - // Exécute la requête de sélection List resultats = access.Manager.ReqSelect(req2, parameters); if (resultats != null) { - // Parcourt les résultats et crée des objets Absence foreach (Object[] resultat in resultats) { + string idMotif = Convert.ToString(resultat[3]) ?? string.Empty; Absence absence = new Absence( Convert.ToInt32(resultat[0]), // IdPersonnel Convert.ToDateTime(resultat[1]), // DateDebut Convert.ToDateTime(resultat[2]), // DateFin - Convert.ToString(resultat[3])// Motif + idMotif // Motif ); absences.Add(absence); } @@ -51,6 +59,11 @@ namespace projet.dal return absences; } + /// + /// Méthode d'ajout d'une absence pour un personnel. + /// + /// Absence à rajouter + /// Personne à laquelle rajouter l'absence public void AddAbsence(Absence absence, Personnel personne) { if (access.Manager != null) @@ -75,6 +88,10 @@ namespace projet.dal } } + /// + /// Méthode de suppression d'une absence pour un personnel. + /// + /// Absence concernée public void DeleteAbsence(Absence absence) { if (access.Manager != null) diff --git a/projet/dal/Access.cs b/projet/dal/Access.cs index a273af0..1beae1e 100644 --- a/projet/dal/Access.cs +++ b/projet/dal/Access.cs @@ -7,11 +7,17 @@ using System.Threading.Tasks; namespace projet.dal { + /// + /// Singleton pour l'accès à la base de données. + /// public class Access { private static readonly string connectionString = "server=localhost;user id=root;password=;database=mediatek;"; private static Access instance = null; + /// + /// Gère l'accès à la base de données via BddManager. + /// public BddManager Manager { get; } private Access() @@ -25,6 +31,10 @@ namespace projet.dal Environment.Exit(0); } } + /// + /// Renvoie l'instance unique de la classe Access. + /// + /// Singleton de la connexion public static Access GetInstance() { if (instance == null) diff --git a/projet/dal/MotifAccess.cs b/projet/dal/MotifAccess.cs index 9ab3de9..8646f7c 100644 --- a/projet/dal/MotifAccess.cs +++ b/projet/dal/MotifAccess.cs @@ -2,15 +2,25 @@ namespace projet.dal { + /// + /// Méthodes d'accès aux données pour les absences du personnel. + /// public class MotifAccess { private readonly Access access; + /// + /// Récupère l'instance de la classe Access pour accéder à la base de données. + /// public MotifAccess() { access = Access.GetInstance(); } + /// + /// Méthode pour récupérer tous les motifs d'absence. + /// + /// Liste de motifs public List GetAllMotifs() { List motifList = new List(); @@ -41,6 +51,11 @@ namespace projet.dal return motifList; } + /// + /// Méthode pour récupérer l'ID d'un motif par son libellé. + /// + /// libelle du motif souhaité + /// Id du motif public int GetMotifIdByLibelle(string libelle) { int idMotif = -1; diff --git a/projet/dal/PersonnelAccess.cs b/projet/dal/PersonnelAccess.cs index bdfeca2..722dd4d 100644 --- a/projet/dal/PersonnelAccess.cs +++ b/projet/dal/PersonnelAccess.cs @@ -2,15 +2,25 @@ namespace projet.dal { + /// + /// Méthodes d'accès aux données pour le personnel. + /// public class PersonnelAccess { private readonly Access access; + /// + /// Récupère l'instance de la classe Access pour accéder à la base de données. + /// public PersonnelAccess() { access = Access.GetInstance(); } + /// + /// Méthode pour récupérer tous les personnels de la base de données. + /// + /// public List GetAllPersonnel() { List personnelList = new List(); @@ -44,6 +54,11 @@ namespace projet.dal } return personnelList; } + + /// + /// Méthode pour ajouter un personnel à la base de données. + /// + /// Personne à rajouter public void addPersonnel(Personnel personne) { if (access.Manager != null) @@ -69,6 +84,10 @@ namespace projet.dal } } + /// + /// Méthode pour supprimer un personnel de la base de données. + /// + /// Personne à supprimer public void deletePersonnel(Personnel personnel) { if (access.Manager != null) @@ -89,6 +108,11 @@ namespace projet.dal } } } + + /// + /// Méthode pour modifier les informations d'un personnel dans la base de données. + /// + /// Personne à modifier public void ModifierPersonnel(Personnel personnel) { if(access.Manager != null) diff --git a/projet/dal/ResponsableAccess.cs b/projet/dal/ResponsableAccess.cs index ad0a6c9..d479d9e 100644 --- a/projet/dal/ResponsableAccess.cs +++ b/projet/dal/ResponsableAccess.cs @@ -2,15 +2,26 @@ namespace projet.dal { + /// + /// Méthodes d'accès aux données pour les motifs d'absence. + /// public class ResponsableAccess { private readonly Access access; + /// + /// Récupère l'instance de la classe Access pour accéder à la base de données. + /// public ResponsableAccess() { access = Access.GetInstance(); } + /// + /// Méthode pour connecter un responsable à la base de données. + /// + /// Responsable à connecter + /// public bool ConnecterResponsable(Responsable responsable) { if(access.Manager != null) diff --git a/projet/dal/ServiceAccess.cs b/projet/dal/ServiceAccess.cs index 1cf5d6b..ee39031 100644 --- a/projet/dal/ServiceAccess.cs +++ b/projet/dal/ServiceAccess.cs @@ -1,15 +1,25 @@ using projet.modele; namespace projet.dal { + /// + /// Méthodes d'accès aux données pour les services du personnel. + /// public class ServiceAccess { private readonly Access access; + /// + /// Récupère l'instance de la classe Access pour accéder à la base de données. + /// public ServiceAccess() { access = Access.GetInstance(); } + /// + /// Méthode pour récupérer tous les services du personnel. + /// + /// public List GetAllServices() { List serviceList = new List(); diff --git a/projet/modele/Absence.cs b/projet/modele/Absence.cs index fed6183..d912d26 100644 --- a/projet/modele/Absence.cs +++ b/projet/modele/Absence.cs @@ -30,6 +30,10 @@ namespace projet.modele IdMotif = idMotif; } + /// + /// Méthode pour obtenir une représentation en chaîne de l'absence. + /// + /// public override string ToString() { string dateDebut = Convert.ToString(DateDebut); diff --git a/projet/modele/Motif.cs b/projet/modele/Motif.cs index f19a52d..89bfb8a 100644 --- a/projet/modele/Motif.cs +++ b/projet/modele/Motif.cs @@ -20,6 +20,10 @@ Libelle = libelle; } + /// + /// Méthode pour obtenir une représentation en chaîne du motif. + /// + /// public override string ToString() { return this.Libelle; diff --git a/projet/modele/Personnel.cs b/projet/modele/Personnel.cs index 4b4c869..4a898d6 100644 --- a/projet/modele/Personnel.cs +++ b/projet/modele/Personnel.cs @@ -36,6 +36,10 @@ IdService = idService; } + /// + /// Méthode pour obtenir une représentation en chaîne du personnel. + /// + /// public override string ToString() { return $"{this.Nom} {this.Prenom}";