Ajout de la documentation Doxyfile

doc
Rémi LAVERGNE 1 year ago
parent b30a561107
commit 74ac403e4e
No known key found for this signature in database
GPG Key ID: 8861D8A4AD21A032

@ -1,5 +1,19 @@
/**
* @file display.c
* @brief Fonctions d'affichage des articles et des clients
*/
#include "main.h" #include "main.h"
/**
* @brief Affichage d'un seul article
* @param tabReference: tableau des références des articles
* @param weight: tableau des poids des articles
* @param volume: tableau des volumes des articles
* @param unitPrice: tableau des prix à l'unité des articles
* @param tlog: taille logique des tableaux des articles
* @return void
*/
void displayItem(int tabReference[], float weight[], float volume[], float unitPrice[], int tlog) void displayItem(int tabReference[], float weight[], float volume[], float unitPrice[], int tlog)
{ {
int reference, index, found; int reference, index, found;
@ -20,21 +34,17 @@ void displayItem(int tabReference[], float weight[], float volume[], float unitP
printf("%d\t%f\t%f\t%f", tabReference[index], weight[index], volume[index], unitPrice[index]); printf("%d\t%f\t%f\t%f", tabReference[index], weight[index], volume[index], unitPrice[index]);
} }
/**
* @brief Affichage de la liste des articles
* @param tabReference: tableau des références des articles
* @param weight: tableau des poids des articles
* @param volume: tableau des volumes des articles
* @param unitPrice: tableau des prix à l'unité des articles
* @param tlog: taille logique des tableaux des articles
* @return void
*/
void displayItemList(int reference[], float weight[], float volume[], float unitPrice[], int tlog) void displayItemList(int reference[], float weight[], float volume[], float unitPrice[], int tlog)
{ {
/*
Affichage de la liste des articles, un article par ligne, sous forme:
référence poids volume prix
Avec la référence unique du produit, le poids du produit, le volume du produit et son prix à l'unité.
+param reference: tableau des références des articles
+param weight: tableau des poids des articles
+param volume: tableau des volumes des articles
+param unitPrice: tableau des prix à l'unité des articles
+param tlog: taille logique des tableaux des articles
+var i: compteur servant à parcourir les données des tableaux jusqu'à leur taille logique
*/
int i; int i;
printf("reference\tpoids\tvolume\tprix à l'unité"); printf("reference\tpoids\tvolume\tprix à l'unité");
for (i=0; i<tlog; i++) for (i=0; i<tlog; i++)
@ -43,21 +53,17 @@ void displayItemList(int reference[], float weight[], float volume[], float unit
} }
} }
/**
* @brief Affichage d'un seul client
* @param clientID: tableau des identifiants des clients
* @param cagnotte: tableau des cagnottes des clients
* @param suspended: tableau de l'état du compte des clients
* @param isAdmin: tableau de l'état d'administrateur des clients
* @param tlog: taille logique des tableaux des clients
* @return void
*/
void displayClient(int clientID[], float cagnotte[], int suspended[], int isAdmin[], int tlog) void displayClient(int clientID[], float cagnotte[], int suspended[], int isAdmin[], int tlog)
{ {
/*
Affichage des données d'un client choisi par son identifiant sous forme:
identifiant cagnotte suspended
avec l'identifiant du client cherché, le montant de sa cagnotte et l'état de son compte
+param clientID: tableau des identifiants des clients
+param cagnotte: tableau des cagnottes des clients
+param suspended: tableau de l'état du compte des clients
+param tlog: taille logique des tableaux des clients
+var id: identifiant du client recherché
+var index: index de l'article recherché dans le tableau
*/
int id, index, found; int id, index, found;
printf("Entrez le numéro du client cherché: "); printf("Entrez le numéro du client cherché: ");
scanf("%d", &id); scanf("%d", &id);
@ -76,20 +82,17 @@ void displayClient(int clientID[], float cagnotte[], int suspended[], int isAdmi
printf("%d\t%f\t%d\t%d", clientID[index], cagnotte[index], suspended[index], isAdmin[index]); printf("%d\t%f\t%d\t%d", clientID[index], cagnotte[index], suspended[index], isAdmin[index]);
} }
/**
* @brief Affichage de la liste des clients
* @param clientID: tableau des identifiants des clients
* @param cagnotte: tableau des cagnottes des clients
* @param suspended: tableau de l'état du compte des clients
* @param isAdmin: tableau de l'état d'administrateur des clients
* @param tlog: taille logique des tableaux des clients
* @return void
*/
void displayClientList(int clientID[], float cagnotte[], int suspended[], int isAdmin[], int tlog) void displayClientList(int clientID[], float cagnotte[], int suspended[], int isAdmin[], int tlog)
{ {
/*
Affichage de la liste des clients, un client par ligne, sous forme:
identifiant cagnotte suspended
avec l'identifiant du client cherché, le montant de sa cagnotte et l'état de son compte
+param clientID: tableau des identifiants des clients
+param cagnotte: tableau des cagnottes des clients
+param suspended: tableau de l'état du compte des clients
+param tlog: taille logique des tableaux des clients
+var i: compteur servant à parcourir les données des tableaux jusqu'à leur taille logique
*/
int i; int i;
printf("num Client\tcagnotte\tsuspended\tisAdmin"); printf("num Client\tcagnotte\tsuspended\tisAdmin");
for (i=0; i<tlog; i++) for (i=0; i<tlog; i++)

@ -1,3 +1,8 @@
/**
* @file login.c
* @brief Fonctions de connexion et d'inscription
*/
#include "main.h" #include "main.h"
/** /**
@ -63,6 +68,16 @@ int login(int clientID[], int clientPassword[], int isAdmin[], int tlog)
} }
} }
/**
* @brief Fonction d'inscription
* @param clientID: Tableau des identifiants client
* @param clientPassword: Tableau des mots de passe client
* @param cagnotte: Tableau des cagnottes client
* @param suspended: Tableau des états de compte client
* @param isAdmin: Tableau des statuts Administrateur des clients
* @param tlog: Taille logique des Tableaux
* @return 0 > Tout s'est bien passé, -1 > L'utilisateur a quitté, -2 > La taille physique du tableau est dépassée
*/
int signup(int clientID[], int clientPassword[], float cagnotte[], int suspended[], int isAdmin[], int *tlog) int signup(int clientID[], int clientPassword[], float cagnotte[], int suspended[], int isAdmin[], int *tlog)
{ {
int id, password, index, found, status; int id, password, index, found, status;
@ -94,18 +109,5 @@ int signup(int clientID[], int clientPassword[], float cagnotte[], int suspended
scanf("%d%*c", &password); scanf("%d%*c", &password);
} }
decalageADroite(clientID, index, *tlog); return inputClient(id, password, index, clientID, clientPassword, cagnotte, suspended, isAdmin, tlog);
decalageADroite(clientPassword, index, *tlog);
decalageADroite(cagnotte, index, *tlog);
decalageADroite(suspended, index, *tlog);
decalageADroite(isAdmin, index, *tlog);
clientPassword[index] = encrypt(password);
clientID[index] = id;
cagnotte[index] = 0;
suspended[index] = 0;
isAdmin[index] = 0;
*tlog++;
return 0;
} }

@ -1,13 +1,22 @@
/**
* @file modif.c
* @brief Fonctions de modification des données (ajout, suppression, modification)
*/
#include "main.h" #include "main.h"
/** /**
* @brief Fonction d'inserion d'un client * @brief Ajout d'un client dans les tableaux
* @param clientID: Tableau des identifiants client * @param id: Tableau des identifiants des clients
* @param cagnotte: Tableau des cagnottes client * @param passwd: Tableau des mots de passe des clients
* @param suspended: Tableau des états de compte client * @param index: Index du client à ajouter
* @param isAdmin: Tableau des statuts Administrateur des clients * @param clientID: Tableau des identifiants des clients
* @param tlog: Taille logique de ces tableaux * @param clientPassword: Tableau des mots de passe des clients
* @return 0 > Tout s'est bien passé, -1 > L'utilisateur a quitté, -2 > La taille physique du tableau est dépassée * @param cagnotte: Tableau des cagnottes des clients
* @param suspended: Tableau de l'état du compte des clients
* @param isAdmin: Tableau de l'état d'administrateur des clients
* @param tlog: Taille logique des tableaux
* @return 0 si tout s'est bien passé, -2 si la taille physique du tableau est dépassée
*/ */
int inputClient(int id, int passwd, int index, int clientID[], int clientPassword[], float cagnotte[], int suspended[], int isAdmin[], int *tlog) int inputClient(int id, int passwd, int index, int clientID[], int clientPassword[], float cagnotte[], int suspended[], int isAdmin[], int *tlog)
{ {
@ -34,21 +43,17 @@ int inputClient(int id, int passwd, int index, int clientID[], int clientPasswor
return 0; // Tout s'est bien passé return 0; // Tout s'est bien passé
} }
/**
* @brief Modification des données d'un client
* @param clientID: Tableau des identifiants des clients
* @param cagnotte: Tableau des cagnottes des clients
* @param suspended: Tableau de l'état du compte des clients
* @param isAdmin: Tableau de l'état d'administrateur des clients
* @param tlog: Taille logique des tableaux
* @return void
*/
void modifyClient(int clientID[], float cagnotte[], int suspended[], int isAdmin[], int tlog) void modifyClient(int clientID[], float cagnotte[], int suspended[], int isAdmin[], int tlog)
{ {
/*
Modification des données d'un client dans les tableaux
+param clientID: tableau des identifiants des clients
+param cagnotte: tableau des cagnottes des clients
+param suspended: tableau de l'état du compte des clients
+param tlog: taille logique des tableaux des clients
+var numClient: identifiant du client à modifier
+var index: index de l'article recherché dans le tableau pour le modifier
+var montant: montant à ajouter à la cagnotte
+var modif: modification à exécuter sur le client
*/
int index, numClient, found; int index, numClient, found;
float montant; float montant;
char modif; char modif;
@ -91,22 +96,18 @@ void modifyClient(int clientID[], float cagnotte[], int suspended[], int isAdmin
isAdmin[index] = 0; isAdmin[index] = 0;
} }
/**
* @brief Ajout d'un ou plusieurs articles dans les tableaux d'articles (reference, poids, volume et prix)
* @param tabReference: tableau des références des articles
* @param weight: tableau des poids des articles
* @param volume: tableau des volumes des articles
* @param unitPrice: tableau des prix à l'unité des articles
* @param tlog: taille logique des tableaux des articles
* @return void
* @warning La saisie s'arrête lorsque l'utilisateur entre 0
*/
void inputItem(int tabReference[], float tabWeight[], float tabVolume[], float unitPrice[], int *tlog) void inputItem(int tabReference[], float tabWeight[], float tabVolume[], float unitPrice[], int *tlog)
{ {
/*
Ajout d'un ou plusieurs articles dans les tableaux d'articles (reference, poids, volume et prix)
+param tabReference: tableau des références des articles
+param weight: tableau des poids des articles
+param volume: tableau des volumes des articles
+param unitPrice: tableau des prix à l'unité des articles
+param tlog: taille logique des tableaux des articles
+var reference: reference de l'article à ajouter
+var weight: poids de l'article à ajouter
+var volume: volume de l'article à ajoueter
+var price: prix de l'article à ajouter
*/
int reference = -1; int reference = -1;
float weight, volume, price; float weight, volume, price;
while (reference != 0) while (reference != 0)
@ -151,6 +152,16 @@ void inputItem(int tabReference[], float tabWeight[], float tabVolume[], float u
} }
} }
/**
* @brief Suppression d'un ou plusieurs articles dans les tableaux d'articles (reference, poids, volume et prix)
* @param tabReference: tableau des références des articles
* @param weight: tableau des poids des articles
* @param volume: tableau des volumes des articles
* @param unitPrice: tableau des prix à l'unité des articles
* @param tlog: taille logique des tableaux des articles
* @return void
* @warning La saisie s'arrête lorsque l'utilisateur entre 0
*/
void deleteItem(int tabReference[], float tabWeight[], float tabVolume[], float unitPrice[], int *tlog) void deleteItem(int tabReference[], float tabWeight[], float tabVolume[], float unitPrice[], int *tlog)
{ {
int reference = -1, index, i, found; int reference = -1, index, i, found;
@ -181,6 +192,18 @@ void deleteItem(int tabReference[], float tabWeight[], float tabVolume[], float
} }
} }
/**
* @brief Suppression d'un ou plusieurs clients dans les tableaux des clients (clientID, clientPassword, cagnotte, suspended et isAdmin)
* @param clientID: tableau des identifiants des clients
* @param cagnotte: tableau des cagnottes des clients
* @param suspended: tableau de l'état du compte des clients
* @param isAdmin: tableau de l'état d'administrateur des clients
* @param tlog: taille logique des tableaux des clients
* @return void
* @warning La saisie s'arrête lorsque l'utilisateur entre 0
*/
//! Ajouter la suppression de la colonne mot de passe.
//! Utiliser la fonction décalaageAGauche
void deleteClient(int clientID[], float cagnotte[], int suspended[], int isAdmin[], int *tlog) void deleteClient(int clientID[], float cagnotte[], int suspended[], int isAdmin[], int *tlog)
{ {
int numClient = -1, index, i, found; int numClient = -1, index, i, found;

@ -1,10 +1,13 @@
/**
* @file panier.c
* @brief Fonctions de gestion du panier client et des contraintes
*/
#include "main.h" #include "main.h"
void clientConstraint(float *weight, float *volume, float *price) void clientConstraint(float *weight, float *volume, float *price)
{ {
/* // Saisie des contraintes du client.
Saisie des contraintes du client.
*/
printf("Entrez la charge maximale de votre véhicule en kilogrammes: "); printf("Entrez la charge maximale de votre véhicule en kilogrammes: ");
scanf("%f", weight); scanf("%f", weight);
while (*weight < 0) while (*weight < 0)
@ -30,29 +33,6 @@ void clientConstraint(float *weight, float *volume, float *price)
} }
} }
// TODO réécrire cette documentation
/**
* The function checks if the weight, volume, and price constraints are exceeded based on the items in
* the basket and the given constraints.
*
* @param weightConstraint The maximum weight constraint for the vehicle.
* @param volumeConstraint The volume constraint is the maximum volume that the vehicle can hold.
* @param priceConstraint A pointer to a float variable representing the maximum budget constraint.
* @param cagnotte A pointer to a float variable representing the amount of money in the user's
* account.
* @param tabWeight An array containing the weights of each item in the log.
* @param tabVolume tabVolume is an array that stores the volume of each item in the shopping basket.
* @param tabPrice tabPrice is an array that stores the prices of items in a shopping basket.
* @param tabItemRef An array containing the reference numbers of the items in the inventory.
* @param tabBasketRef tabBasketRef is an array that contains the references of the items in the
* basket.
* @param tabBasketQuantity An array that stores the quantity of each item in the basket.
* @param tlogItem The parameter "tlogItem" represents the number of items in the log.
* @param tlogBasket The parameter "tlogBasket" represents the number of items in the shopping basket.
* @return an integer value. If the constraints for weight, volume, or price are exceeded, the function
* returns -1. Otherwise, it returns 0.
*/
int constraintExceeded(float weightConstraint, float volumeConstraint, float *priceConstraint, float *cagnotte, float tabWeight[], float tabVolume[], float tabPrice[], int tabItemRef[], int tabBasketRef[], int tabBasketQuantity[], int tlogItem, int tlogBasket) int constraintExceeded(float weightConstraint, float volumeConstraint, float *priceConstraint, float *cagnotte, float tabWeight[], float tabVolume[], float tabPrice[], int tabItemRef[], int tabBasketRef[], int tabBasketQuantity[], int tlogItem, int tlogBasket)
{ {
int index, found, i; int index, found, i;

@ -5,44 +5,37 @@
#include "main.h" #include "main.h"
/**
* @brief Chargement des données depuis les 2 fichiers vers les tableaux
* @param tLogArticle: Taille logique du tableau des articles
* @param tLogClient: Taille logique du tableau des clients
* @param reference: Tableau des références des articles
* @param weight: Tableau des poids des articles
* @param volume: Tableau des volumes des articles
* @param unitPrice: Tableau des prix à l'unité des articles
* @param clientID: Tableau des identifiants des clients
* @param clientPassword: Tableau des mots de passe des clients
* @param cagnotte: Tableau des cagnottes des clients
* @param suspended: Tableau de l'état du compte des clients
* @param isAdmin: Tableau de l'état d'administrateur des clients
* @return void
*/
void chargeDonnees(int *tLogArticle, int *tLogClient,int reference[], float weight[], float volume[], float unitPrice[], int clientID[], int clientPassword[], float cagnotte[], int suspended[], int isAdmin[]) void chargeDonnees(int *tLogArticle, int *tLogClient,int reference[], float weight[], float volume[], float unitPrice[], int clientID[], int clientPassword[], float cagnotte[], int suspended[], int isAdmin[])
{ {
/*
Chargement des données des articles et clients de fichiers vers des tableaux
+param tLogArticle: taille logique des tableaux des articles
+param tLogClient: taille logique des tableaux des clients
+param reference: tableau des références des articles
+param weight: tableau des poids des articles
+param volume: tableau des volumes des articles
+param unitPrice: tableau des prix à l'unité des articles
+param clientID: tableau des identifiants des clients
+param cagnotte: tableau des cagnottes des clients
+param suspended: tableau de l'état du compte des clients
*/
*tLogArticle = chargeArticles(reference, weight, volume, unitPrice); *tLogArticle = chargeArticles(reference, weight, volume, unitPrice);
*tLogClient = chargeClients(clientID, clientPassword, cagnotte, suspended, isAdmin); *tLogClient = chargeClients(clientID, clientPassword, cagnotte, suspended, isAdmin);
} }
/**
* @brief Chargement des données du fichier des articles vers les tableaux
* @param reference: Tableau des références des articles
* @param weight: Tableau des poids des articles
* @param volume: Tableau des volumes des articles
* @param unitPrice: Tableau des prix à l'unité des articles
* @return Taille logique des tableaux d'articles
*/
int chargeArticles(int reference[], float weight[], float volume[], float unitPrice[]) int chargeArticles(int reference[], float weight[], float volume[], float unitPrice[])
{ {
/*
Chargement des données des articles d'un fichier vers des tableaux
+param reference: tableau des références des articles
+param weight: tableau des poids des articles
+param volume: tableau des volumes des articles
+param unitPrice: tableau des prix à l'unité des articles
+return: taille logique des tableaux
+var article: fichier 'articles.txt' ouvert en lecture
+var ref: reference de l'article
+var tL: taille logique des tableaux
+var w: poids de l'article
+var v: volume de l'article
+var up: prix de l'article à l'unité
*/
FILE *article; FILE *article;
article = fopen("articles.txt","r"); article = fopen("articles.txt","r");
if(article==NULL) if(article==NULL)
@ -76,23 +69,17 @@ int chargeArticles(int reference[], float weight[], float volume[], float unitPr
return tL; return tL;
} }
/**
* @brief Chargement des données du fichier des clients vers les tableaux
* @param clientID: Tableau des identifiants des clients
* @param clientPassword: Tableau des mots de passe des clients
* @param cagnotte: Tableau des cagnottes des clients
* @param suspended: Tableau de l'état du compte des clients
* @param isAdmin: Tableau de l'état d'administrateur des clients
* @return Taille logique des tableaux des clients
*/
int chargeClients(int clientID[], int clientPassword[], float cagnotte[], int suspended[], int isAdmin[]) int chargeClients(int clientID[], int clientPassword[], float cagnotte[], int suspended[], int isAdmin[])
{ {
/*
Chargement des données des clients d'un fichier vers des tableaux
+param clientID: tableau des identifiants des clients
+param cagnotte: tableau des cagnottes des clients
+param suspended: tableau de l'état du compte des clients
+return: taille logique des tableaux
+var client: fichier 'clients.txt' ouvert en lecture
+var id: identifiant du client
+var sus: état du compte du client
+var tL: taille logique des tableaux
+var cag: montant de la cagnotte du client
*/
FILE *client; FILE *client;
client = fopen("clients.txt","r"); client = fopen("clients.txt","r");
if(client==NULL) if(client==NULL)
@ -127,39 +114,38 @@ int chargeClients(int clientID[], int clientPassword[], float cagnotte[], int su
return tL; return tL;
} }
/**
* @brief Sauvegarde des données des tableaux vers les 2 fichiers correspondants
* @param tLogArticle: Taille logique du tableau des articles
* @param tLogClient: Taille logique du tableau des clients
* @param reference: Tableau des références des articles
* @param weight: Tableau des poids des articles
* @param volume: Tableau des volumes des articles
* @param unitPrice: Tableau des prix à l'unité des articles
* @param clientID: Tableau des identifiants des clients
* @param clientPassword: Tableau des mots de passe des clients
* @param cagnotte: Tableau des cagnottes des clients
* @param suspended: Tableau de l'état du compte des clients
* @param isAdmin: Tableau de l'état d'administrateur des clients
* @return void
*/
void sauvegardeDonnees(int tLogArticle, int tLogClient, int reference[], float weight[], float volume[], float unitPrice[], int clientID[], int clientPassword[], float cagnotte[], int suspended[], int isAdmin[]) void sauvegardeDonnees(int tLogArticle, int tLogClient, int reference[], float weight[], float volume[], float unitPrice[], int clientID[], int clientPassword[], float cagnotte[], int suspended[], int isAdmin[])
{ {
/*
Sauvegarde des données des articles et clients de tableaux vers des fichiers
+param tLogArticle: taille logique des tableaux des articles
+param tLogClient: taille logique des tableaux des clients
+param reference: tableau des références des articles
+param weight: tableau des poids des articles
+param volume: tableau des volumes des articles
+param unitPrice: tableau des prix à l'unité des articles
+param clientID: tableau des identifiants des clients
+param cagnotte: tableau des cagnottes des clients
+param suspended: tableau de l'état du compte des clients
*/
sauvegardeArticles(reference, weight, volume, unitPrice, tLogArticle); sauvegardeArticles(reference, weight, volume, unitPrice, tLogArticle);
sauvegardeClients(clientID, clientPassword, cagnotte, suspended, isAdmin, tLogClient); sauvegardeClients(clientID, clientPassword, cagnotte, suspended, isAdmin, tLogClient);
} }
/**
* @brief Sauvegarde des données des articles de tableaux vers le fichier des articles
* @param reference: Tableau des références des articles
* @param weight: Tableau des poids des articles
* @param volume: Tableau des volumes des articles
* @param unitPrice: Tableau des prix à l'unité des articles
* @param tLogArticle: Taille logique des tableaux des articles
* @return void
*/
void sauvegardeArticles(int reference[], float weight[], float volume[], float unitPrice[], int tLogArticle) void sauvegardeArticles(int reference[], float weight[], float volume[], float unitPrice[], int tLogArticle)
{ {
/*
Sauvegarde des données des articles de tableaux vers le fichier des articles
+param reference: tableau des références des articles
+param weight: tableau des poids des articles
+param volume: tableau des volumes des articles
+param unitPrice: tableau des prix à l'unité des articles
+param tLogArticle: taille logique des tableaux des articles
+var article: fichier 'articles.txt' ouvert en écriture
+var i: compteur permettant de parcourir les tableaux
*/
FILE *article; FILE *article;
article = fopen("articles.txt","w"); article = fopen("articles.txt","w");
if(article==NULL) if(article==NULL)
@ -176,19 +162,18 @@ void sauvegardeArticles(int reference[], float weight[], float volume[], float u
fclose(article); fclose(article);
} }
/**
* @brief Sauvegarde des données des clients de tableaux vers le fichier des clients
* @param clientID: Tableau des identifiants des clients
* @param clientPassword: Tableau des mots de passe des clients
* @param cagnotte: Tableau des cagnottes des clients
* @param suspended: Tableau de l'état du compte des clients
* @param isAdmin: Tableau de l'état d'administrateur des clients
* @param tLogClient: Taille logique des tableaux des clients
* @return void
*/
void sauvegardeClients(int clientID[], int clientPassword[], float cagnotte[], int suspended[], int isAdmin[], int tLogClient) void sauvegardeClients(int clientID[], int clientPassword[], float cagnotte[], int suspended[], int isAdmin[], int tLogClient)
{ {
/*
Sauvegarde des données des articles de tableaux vers le fichier des articles
+param clientID: tableau des identifiants des clients
+param cagnotte: tableau des cagnottes des clients
+param suspended: tableau de l'état du compte des clients
+param tLogClient: taille logique des tableaux des clients
+var client: fichier 'clients.txt' ouvert en lecture
+var i: compteur permettant de parcourir les tableaux
*/
FILE *client; FILE *client;
client = fopen("clients.txt","w"); client = fopen("clients.txt","w");
if(client==NULL) if(client==NULL)

Loading…
Cancel
Save