Ajout des commentaires XML, création d'une doc technique (pas complète)
This commit is contained in:
parent
e7f5498737
commit
e1eac61b95
25 changed files with 358 additions and 179 deletions
|
|
@ -8,6 +8,9 @@ using System.Threading.Tasks;
|
|||
|
||||
namespace projet.Controller
|
||||
{
|
||||
/// <summary>
|
||||
/// Gestionnaire de la page de connexion pour les responsables.
|
||||
/// </summary>
|
||||
public class PageConnexionController
|
||||
{
|
||||
private readonly ResponsableAccess responsableAccess;
|
||||
|
|
|
|||
39
projet/Form1.Designer.cs
generated
39
projet/Form1.Designer.cs
generated
|
|
@ -1,39 +0,0 @@
|
|||
namespace projet
|
||||
{
|
||||
partial class Form1
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
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
|
||||
}
|
||||
}
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
namespace projet
|
||||
{
|
||||
public partial class Form1 : Form
|
||||
{
|
||||
public Form1()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,120 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
||||
201
projet/HELP.html
Normal file
201
projet/HELP.html
Normal file
|
|
@ -0,0 +1,201 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="fr">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>Documentation Technique - Gestion du Personnel et des Absences</title>
|
||||
<style>
|
||||
body {
|
||||
font-family: Arial, sans-serif;
|
||||
line-height: 1.6;
|
||||
max-width: 1200px;
|
||||
margin: 0 auto;
|
||||
padding: 20px;
|
||||
}
|
||||
.namespace {
|
||||
background-color: #f8f9fa;
|
||||
padding: 20px;
|
||||
margin: 20px 0;
|
||||
border-radius: 5px;
|
||||
}
|
||||
.class {
|
||||
border-left: 4px solid #007bff;
|
||||
padding: 10px;
|
||||
margin: 15px 0;
|
||||
}
|
||||
.method {
|
||||
background-color: #ffffff;
|
||||
padding: 10px;
|
||||
margin: 10px 0;
|
||||
border: 1px solid #dee2e6;
|
||||
border-radius: 4px;
|
||||
}
|
||||
h1 { color: #343a40; }
|
||||
h2 { color: #007bff; }
|
||||
h3 { color: #495057; }
|
||||
.returns { color: #28a745; }
|
||||
.params { color: #6c757d; }
|
||||
.header {
|
||||
background-color: #007bff;
|
||||
color: white;
|
||||
padding: 20px;
|
||||
margin-bottom: 30px;
|
||||
border-radius: 5px;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="header">
|
||||
<h1>Documentation Technique</h1>
|
||||
<p>Application de Gestion du Personnel et des Absences</p>
|
||||
</div>
|
||||
|
||||
<!-- Namespace DAL -->
|
||||
<div class="namespace">
|
||||
<h2>Namespace: projet.dal</h2>
|
||||
|
||||
<div class="class">
|
||||
<h3>Class: Access</h3>
|
||||
<p>Singleton pour l'accès à la base de données.</p>
|
||||
<div class="method">
|
||||
<h4>GetInstance()</h4>
|
||||
<p>Renvoie l'instance unique de la classe Access.</p>
|
||||
<div class="returns">Retourne: Singleton de la connexion</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="class">
|
||||
<h3>Class: AbsenceAccess</h3>
|
||||
<p>Méthodes d'accès aux données pour les absences du personnel.</p>
|
||||
|
||||
<div class="method">
|
||||
<h4>GetAbsences(Personnel personnel)</h4>
|
||||
<p>Donne la liste des absences d'un personnel.</p>
|
||||
<div class="params">Paramètre: personnel - Personne concernée</div>
|
||||
<div class="returns">Retourne: Liste des absences</div>
|
||||
</div>
|
||||
|
||||
<div class="method">
|
||||
<h4>AddAbsence(Absence absence, Personnel personne)</h4>
|
||||
<p>Méthode d'ajout d'une absence pour un personnel.</p>
|
||||
<div class="params">
|
||||
Paramètres:
|
||||
<ul>
|
||||
<li>absence - Absence à rajouter</li>
|
||||
<li>personne - Personne à laquelle rajouter l'absence</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="method">
|
||||
<h4>DeleteAbsence(Absence absence)</h4>
|
||||
<p>Méthode de suppression d'une absence pour un personnel.</p>
|
||||
<div class="params">Paramètre: absence - Absence concernée</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="class">
|
||||
<h3>Class: MotifAccess</h3>
|
||||
<p>Méthodes d'accès aux données pour les motifs d'absence.</p>
|
||||
|
||||
<div class="method">
|
||||
<h4>GetAllMotifs()</h4>
|
||||
<p>Méthode pour récupérer tous les motifs d'absence.</p>
|
||||
<div class="returns">Retourne: Liste de motifs</div>
|
||||
</div>
|
||||
|
||||
<div class="method">
|
||||
<h4>GetMotifIdByLibelle(string libelle)</h4>
|
||||
<p>Méthode pour récupérer l'ID d'un motif par son libellé.</p>
|
||||
<div class="params">Paramètre: libelle - libelle du motif souhaité</div>
|
||||
<div class="returns">Retourne: Id du motif</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="class">
|
||||
<h3>Class: PersonnelAccess</h3>
|
||||
<p>Méthodes d'accès aux données pour le personnel.</p>
|
||||
|
||||
<div class="method">
|
||||
<h4>GetAllPersonnel()</h4>
|
||||
<p>Méthode pour récupérer tous les personnels de la base de données.</p>
|
||||
<div class="returns">Retourne: Liste du personnel</div>
|
||||
</div>
|
||||
|
||||
<div class="method">
|
||||
<h4>addPersonnel(Personnel personne)</h4>
|
||||
<p>Méthode pour ajouter un personnel à la base de données.</p>
|
||||
<div class="params">Paramètre: personne - Personne à rajouter</div>
|
||||
</div>
|
||||
|
||||
<div class="method">
|
||||
<h4>ModifierPersonnel(Personnel personnel)</h4>
|
||||
<p>Méthode pour modifier les informations d'un personnel dans la base de données.</p>
|
||||
<div class="params">Paramètre: personnel - Personne à modifier</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Namespace Modele -->
|
||||
<div class="namespace">
|
||||
<h2>Namespace: projet.modele</h2>
|
||||
|
||||
<div class="class">
|
||||
<h3>Class: Absence</h3>
|
||||
<p>Représente une absence d'un personnel.</p>
|
||||
<div class="method">
|
||||
<h4>Propriétés</h4>
|
||||
<ul>
|
||||
<li>IdPersonnel - Identifiant du personnel</li>
|
||||
<li>DateDebut - Date de début de l'absence</li>
|
||||
<li>DateFin - Date de fin de l'absence</li>
|
||||
<li>IdMotif - Identifiant du motif d'absence</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="class">
|
||||
<h3>Class: Motif</h3>
|
||||
<p>Représente un motif d'absence</p>
|
||||
<div class="method">
|
||||
<h4>Propriétés</h4>
|
||||
<ul>
|
||||
<li>IdMotif - Identifiant du motif</li>
|
||||
<li>Libelle - Libellé du motif</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="class">
|
||||
<h3>Class: Personnel</h3>
|
||||
<p>Représente un membre du personnel</p>
|
||||
<div class="method">
|
||||
<h4>Propriétés</h4>
|
||||
<ul>
|
||||
<li>IdPersonnel - Identifiant du personnel</li>
|
||||
<li>Nom - Nom du personnel</li>
|
||||
<li>Prenom - Prénom du personnel</li>
|
||||
<li>Tel - Numéro de téléphone</li>
|
||||
<li>Mail - Adresse e-mail</li>
|
||||
<li>IdService - Identifiant du service</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Namespace Controller -->
|
||||
<div class="namespace">
|
||||
<h2>Namespace: projet.Controller</h2>
|
||||
|
||||
<div class="class">
|
||||
<h3>Class: PageConnexionController</h3>
|
||||
<p>Gestionnaire de la page de connexion pour les responsables.</p>
|
||||
<div class="method">
|
||||
<h4>ConnecterResponsable(Responsable responsable)</h4>
|
||||
<p>Connecte un responsable à l'application.</p>
|
||||
<div class="params">Paramètre: responsable - Responsable à connecter</div>
|
||||
<div class="returns">Retourne: true si la connexion est réussie, false sinon</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
BIN
projet/Help.zip
BIN
projet/Help.zip
Binary file not shown.
8
projet/View/Admin.Designer.cs
generated
8
projet/View/Admin.Designer.cs
generated
|
|
@ -1,5 +1,8 @@
|
|||
namespace projet.View
|
||||
{
|
||||
/// <summary>
|
||||
/// Interface pour la gestion du personnel par l'administrateur.
|
||||
/// </summary>
|
||||
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;
|
||||
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
//private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
|
|
|
|||
|
|
@ -15,6 +15,9 @@ namespace projet.View
|
|||
public partial class Admin : Form
|
||||
{
|
||||
private AdminController controller;
|
||||
/// <summary>
|
||||
/// Méthode d'initialisation du formulaire Admin.
|
||||
/// </summary>
|
||||
public Admin()
|
||||
{
|
||||
Init();
|
||||
|
|
@ -22,6 +25,9 @@ namespace projet.View
|
|||
RemplirComboBoxPersonnel();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Méthode d'initialisation du contrôleur AdminController.
|
||||
/// </summary>
|
||||
public void Init()
|
||||
{
|
||||
controller = new AdminController();
|
||||
|
|
|
|||
|
|
@ -12,6 +12,9 @@ namespace projet.View
|
|||
{
|
||||
public partial class ConfirmeModifierAbsence : Form
|
||||
{
|
||||
/// <summary>
|
||||
/// Méthode d'initialisation du formulaire ConfirmeModifierAbsence.
|
||||
/// </summary>
|
||||
public ConfirmeModifierAbsence()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
|
|
|||
|
|
@ -10,8 +10,14 @@ using System.Windows.Forms;
|
|||
|
||||
namespace projet.View
|
||||
{
|
||||
/// <summary>
|
||||
/// Méthode d'initialisation du formulaire de confirmation de modification du personnel.
|
||||
/// </summary>
|
||||
public partial class ConfirmeModifierPersonnel : Form
|
||||
{
|
||||
/// <summary>
|
||||
/// Méthode d'initialisation du formulaire ConfirmeModifierPersonnel.
|
||||
/// </summary>
|
||||
public ConfirmeModifierPersonnel()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
|
|
|||
|
|
@ -10,8 +10,14 @@ using System.Windows.Forms;
|
|||
|
||||
namespace projet.View
|
||||
{
|
||||
/// <summary>
|
||||
/// Méthode d'initialisation du formulaire de confirmation de modification du personnel.
|
||||
/// </summary>
|
||||
public partial class ConfirmeSupprimerAbsence : Form
|
||||
{
|
||||
/// <summary>
|
||||
/// Méthode d'initialisation du formulaire ConfirmeSupprimerAbsence.
|
||||
/// </summary>
|
||||
public ConfirmeSupprimerAbsence()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
|
|
|||
|
|
@ -12,10 +12,17 @@ using System.Windows.Forms;
|
|||
|
||||
namespace projet.View
|
||||
{
|
||||
/// <summary>
|
||||
/// Méthode d'initialisation du formulaire de confirmation de suppression du personnel.
|
||||
/// </summary>
|
||||
public partial class ConfirmeSupressionPersonnel : Form
|
||||
{
|
||||
private ConfirmeSupressionPersonnelController controller;
|
||||
private Personnel personne;
|
||||
/// <summary>
|
||||
/// Méthode d'initialisation du formulaire ConfirmerSuppressionPersonnel.
|
||||
/// </summary>
|
||||
/// <param name="personne"></param>
|
||||
public ConfirmeSupressionPersonnel(Personnel personne)
|
||||
{
|
||||
Init();
|
||||
|
|
@ -24,6 +31,9 @@ namespace projet.View
|
|||
labelTitle.Text = $"Voulez vous vraiment supprimer : {personne} ?";
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Méthode d'initialisation du contrôleur ConfirmeSupressionPersonnelController.
|
||||
/// </summary>
|
||||
public void Init()
|
||||
{
|
||||
controller = new ConfirmeSupressionPersonnelController();
|
||||
|
|
|
|||
|
|
@ -16,6 +16,10 @@ namespace projet.View
|
|||
{
|
||||
private Personnel personne;
|
||||
private GestionAbsenceController controller;
|
||||
/// <summary>
|
||||
/// Méthode d'initialisation du formulaire de gestion des absences pour un personnel spécifique.
|
||||
/// </summary>
|
||||
/// <param name="personne">Personne concernée</param>
|
||||
public GestionAbsence(Personnel personne)
|
||||
{
|
||||
InitializeComponent();
|
||||
|
|
|
|||
|
|
@ -12,6 +12,9 @@ namespace projet.View
|
|||
{
|
||||
public partial class ModifierAbsence : Form
|
||||
{
|
||||
/// <summary>
|
||||
/// Méthode d'initialisation du formulaire de modification d'absence.
|
||||
/// </summary>
|
||||
public ModifierAbsence()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
|
|
|||
|
|
@ -16,6 +16,11 @@ namespace projet.View
|
|||
{
|
||||
private ModifierPersonneController controller;
|
||||
private Personnel personne;
|
||||
|
||||
/// <summary>
|
||||
/// Méthode d'initialisation du formulaire de modification d'un personnel.
|
||||
/// </summary>
|
||||
/// <param name="personne">Personne concernée</param>
|
||||
public ModifierPersonne(Personnel personne)
|
||||
{
|
||||
Init();
|
||||
|
|
|
|||
|
|
@ -15,6 +15,10 @@ namespace projet.View
|
|||
public partial class PageConnexion : Form
|
||||
{
|
||||
private PageConnexionController controller;
|
||||
|
||||
/// <summary>
|
||||
/// Méthode d'initialisation du formulaire de connexion.
|
||||
/// </summary>
|
||||
public PageConnexion()
|
||||
{
|
||||
Init();
|
||||
|
|
|
|||
|
|
@ -2,40 +2,48 @@
|
|||
|
||||
namespace projet.dal
|
||||
{
|
||||
/// <summary>
|
||||
/// Méthodes d'accès aux données pour les absences du personnel.
|
||||
/// </summary>
|
||||
public class AbsenceAccess
|
||||
{
|
||||
private readonly Access access;
|
||||
/// <summary>
|
||||
/// Récupère l'instance de la classe Access pour accéder à la base de données.
|
||||
/// </summary>
|
||||
public AbsenceAccess()
|
||||
{
|
||||
access = Access.GetInstance();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Donne la liste des absences d'un personnel.
|
||||
/// </summary>
|
||||
/// <param name="personnel">Personne concernée</param>
|
||||
/// <returns></returns>
|
||||
public List<Absence> GetAbsences(Personnel personnel)
|
||||
{
|
||||
List<Absence> absences = new List<Absence>();
|
||||
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<string, object>
|
||||
{
|
||||
{ "@idPersonnel", personnel.IdPersonnel }
|
||||
};
|
||||
try
|
||||
{
|
||||
// Exécute la requête de sélection
|
||||
List<Object[]> 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;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Méthode d'ajout d'une absence pour un personnel.
|
||||
/// </summary>
|
||||
/// <param name="absence">Absence à rajouter</param>
|
||||
/// <param name="personne">Personne à laquelle rajouter l'absence</param>
|
||||
public void AddAbsence(Absence absence, Personnel personne)
|
||||
{
|
||||
if (access.Manager != null)
|
||||
|
|
@ -75,6 +88,10 @@ namespace projet.dal
|
|||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Méthode de suppression d'une absence pour un personnel.
|
||||
/// </summary>
|
||||
/// <param name="absence">Absence concernée</param>
|
||||
public void DeleteAbsence(Absence absence)
|
||||
{
|
||||
if (access.Manager != null)
|
||||
|
|
|
|||
|
|
@ -7,11 +7,17 @@ using System.Threading.Tasks;
|
|||
|
||||
namespace projet.dal
|
||||
{
|
||||
/// <summary>
|
||||
/// Singleton pour l'accès à la base de données.
|
||||
/// </summary>
|
||||
public class Access
|
||||
{
|
||||
private static readonly string connectionString = "server=localhost;user id=root;password=;database=mediatek;";
|
||||
private static Access instance = null;
|
||||
|
||||
/// <summary>
|
||||
/// Gère l'accès à la base de données via BddManager.
|
||||
/// </summary>
|
||||
public BddManager Manager { get; }
|
||||
|
||||
private Access()
|
||||
|
|
@ -25,6 +31,10 @@ namespace projet.dal
|
|||
Environment.Exit(0);
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// Renvoie l'instance unique de la classe Access.
|
||||
/// </summary>
|
||||
/// <returns>Singleton de la connexion</returns>
|
||||
public static Access GetInstance()
|
||||
{
|
||||
if (instance == null)
|
||||
|
|
|
|||
|
|
@ -2,15 +2,25 @@
|
|||
|
||||
namespace projet.dal
|
||||
{
|
||||
/// <summary>
|
||||
/// Méthodes d'accès aux données pour les absences du personnel.
|
||||
/// </summary>
|
||||
public class MotifAccess
|
||||
{
|
||||
private readonly Access access;
|
||||
|
||||
/// <summary>
|
||||
/// Récupère l'instance de la classe Access pour accéder à la base de données.
|
||||
/// </summary>
|
||||
public MotifAccess()
|
||||
{
|
||||
access = Access.GetInstance();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Méthode pour récupérer tous les motifs d'absence.
|
||||
/// </summary>
|
||||
/// <returns>Liste de motifs</returns>
|
||||
public List<Motif> GetAllMotifs()
|
||||
{
|
||||
List<Motif> motifList = new List<Motif>();
|
||||
|
|
@ -41,6 +51,11 @@ namespace projet.dal
|
|||
return motifList;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Méthode pour récupérer l'ID d'un motif par son libellé.
|
||||
/// </summary>
|
||||
/// <param name="libelle">libelle du motif souhaité</param>
|
||||
/// <returns>Id du motif</returns>
|
||||
public int GetMotifIdByLibelle(string libelle)
|
||||
{
|
||||
int idMotif = -1;
|
||||
|
|
|
|||
|
|
@ -2,15 +2,25 @@
|
|||
|
||||
namespace projet.dal
|
||||
{
|
||||
/// <summary>
|
||||
/// Méthodes d'accès aux données pour le personnel.
|
||||
/// </summary>
|
||||
public class PersonnelAccess
|
||||
{
|
||||
private readonly Access access;
|
||||
|
||||
/// <summary>
|
||||
/// Récupère l'instance de la classe Access pour accéder à la base de données.
|
||||
/// </summary>
|
||||
public PersonnelAccess()
|
||||
{
|
||||
access = Access.GetInstance();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Méthode pour récupérer tous les personnels de la base de données.
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public List<Personnel> GetAllPersonnel()
|
||||
{
|
||||
List<Personnel> personnelList = new List<Personnel>();
|
||||
|
|
@ -44,6 +54,11 @@ namespace projet.dal
|
|||
}
|
||||
return personnelList;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Méthode pour ajouter un personnel à la base de données.
|
||||
/// </summary>
|
||||
/// <param name="personne">Personne à rajouter</param>
|
||||
public void addPersonnel(Personnel personne)
|
||||
{
|
||||
if (access.Manager != null)
|
||||
|
|
@ -69,6 +84,10 @@ namespace projet.dal
|
|||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Méthode pour supprimer un personnel de la base de données.
|
||||
/// </summary>
|
||||
/// <param name="personnel">Personne à supprimer</param>
|
||||
public void deletePersonnel(Personnel personnel)
|
||||
{
|
||||
if (access.Manager != null)
|
||||
|
|
@ -89,6 +108,11 @@ namespace projet.dal
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Méthode pour modifier les informations d'un personnel dans la base de données.
|
||||
/// </summary>
|
||||
/// <param name="personnel">Personne à modifier</param>
|
||||
public void ModifierPersonnel(Personnel personnel)
|
||||
{
|
||||
if(access.Manager != null)
|
||||
|
|
|
|||
|
|
@ -2,15 +2,26 @@
|
|||
|
||||
namespace projet.dal
|
||||
{
|
||||
/// <summary>
|
||||
/// Méthodes d'accès aux données pour les motifs d'absence.
|
||||
/// </summary>
|
||||
public class ResponsableAccess
|
||||
{
|
||||
private readonly Access access;
|
||||
|
||||
/// <summary>
|
||||
/// Récupère l'instance de la classe Access pour accéder à la base de données.
|
||||
/// </summary>
|
||||
public ResponsableAccess()
|
||||
{
|
||||
access = Access.GetInstance();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Méthode pour connecter un responsable à la base de données.
|
||||
/// </summary>
|
||||
/// <param name="responsable">Responsable à connecter</param>
|
||||
/// <returns></returns>
|
||||
public bool ConnecterResponsable(Responsable responsable)
|
||||
{
|
||||
if(access.Manager != null)
|
||||
|
|
|
|||
|
|
@ -1,15 +1,25 @@
|
|||
using projet.modele;
|
||||
namespace projet.dal
|
||||
{
|
||||
/// <summary>
|
||||
/// Méthodes d'accès aux données pour les services du personnel.
|
||||
/// </summary>
|
||||
public class ServiceAccess
|
||||
{
|
||||
private readonly Access access;
|
||||
|
||||
/// <summary>
|
||||
/// Récupère l'instance de la classe Access pour accéder à la base de données.
|
||||
/// </summary>
|
||||
public ServiceAccess()
|
||||
{
|
||||
access = Access.GetInstance();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Méthode pour récupérer tous les services du personnel.
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public List<Service> GetAllServices()
|
||||
{
|
||||
List<Service> serviceList = new List<Service>();
|
||||
|
|
|
|||
|
|
@ -30,6 +30,10 @@ namespace projet.modele
|
|||
IdMotif = idMotif;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Méthode pour obtenir une représentation en chaîne de l'absence.
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public override string ToString()
|
||||
{
|
||||
string dateDebut = Convert.ToString(DateDebut);
|
||||
|
|
|
|||
|
|
@ -20,6 +20,10 @@
|
|||
Libelle = libelle;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Méthode pour obtenir une représentation en chaîne du motif.
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public override string ToString()
|
||||
{
|
||||
return this.Libelle;
|
||||
|
|
|
|||
|
|
@ -36,6 +36,10 @@
|
|||
IdService = idService;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Méthode pour obtenir une représentation en chaîne du personnel.
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public override string ToString()
|
||||
{
|
||||
return $"{this.Nom} {this.Prenom}";
|
||||
|
|
|
|||
Loading…
Reference in a new issue