Le projet comprend trois dossiers principaux :
L'utilisateur initie une connexion et se voit présenter le premier menu :
--------------Bienvenue à MILKYDAY--------------
Entrer en tant qu'administrateur Entrer en tant que détaillant S'inscrire administrateur Quitter
En choisissant 1 , l'utilisateur est traité comme un administrateur et est connecté au système à l'aide de la fonction validateAdminLogin
, qui nécessite un nom d'utilisateur et un mot de passe. Cette fonction se connecte à une base de données MySQL et exécute une requête SELECT pour récupérer l'ID admin associé au nom d'utilisateur et au mot de passe saisis. Si aucun résultat n'est renvoyé, il imprime un message « Nom d'utilisateur ou mot de passe invalide ». Sinon, il imprime un message de bienvenue avec le nom de l'utilisateur connecté et transmet l'adminID à la fonction adminPage1
.
La page d'administration offre plus d'options :
------------- Accueillir -------------
Gérer les usines Gérer le centre de collecte Gérer les détaillants Gérer les employés Retourner
Chaque option mène à un autre menu pour les fonctions du fichier de fonctions permettant de manipuler les données dans la base de données MySQL.
Obtenir le nombre de centres livrant à cette usine Obtenir le plus grand nombre d'employés travaillant dans l'usine Obtenir la vente totale réalisée par l'usine Donner une prime annuelle aux employés Gérer les produits Gérer la production Retourner
Les fonctions incluent la récupération d'informations sur le nombre de centres livrant à une usine, l'employé le plus actif dans une usine, les ventes totales réalisées par une usine, l'octroi de primes annuelles aux employés et la gestion des produits et de la production.
Ajouter un nouveau centre sous vous Supprimer le centre Liste par centre de collecte de bénéfices Recherche par usine Recherche par quantité de lait Recherche par montant payé Afficher tous les centres Retour
Cela fournit des fonctions pour manipuler la table retailers
dans MySQL. Seuls les détaillants ayant le même ID administrateur que l'utilisateur peuvent être modifiés.
En choisissant 2 , l'utilisateur est traité comme un détaillant et doit se valider à l'aide de la fonction validateRetailerLogin
, qui nécessite un nom d'utilisateur et un mot de passe. Semblable à validateAdminLogin
, cette fonction se connecte à la base de données MySQL et exécute une requête SELECT pour récupérer le RetailerID associé au nom d'utilisateur saisi. Si aucun résultat n'est renvoyé ou si le mot de passe est incorrect, il imprime un message « Nom d'utilisateur ou mot de passe invalide ». Sinon, il imprime un message indiquant que l'utilisateur a été trouvé et transmet le RetailerID à la fonction retailerPage1
.
La page du détaillant propose les options suivantes : Gérer les produits Gérer les clients Faire revenir la facture en arrière
La fonction retailerPage1
affiche un menu d'options pour gérer les produits et les clients et établir des factures. Il utilise une boucle infinie et une instruction d'entrée pour inviter en permanence l'utilisateur à sélectionner une option dans le menu.
Ajouter des produits Supprimer des produits Afficher les produits Retourner au shell Copier le code
Ajouter un client Supprimer les détails du client Mettre à jour les détails du client Afficher la liste des clients Retourner vbnet Copier le code
La fonction make_bill
du module Functions génère une facture pour le client actuel. La fonction continue d'afficher le menu principal jusqu'à ce que l'utilisateur sélectionne l'option « Retour ».
En choisissant 3 , les administrateurs principaux (programmeurs) peuvent enregistrer un nouvel administrateur. Pour enregistrer un nouvel administrateur, un mot de passe principal est requis. Ce mot de passe principal est codé en dur pour empêcher les ajouts non autorisés de nouveaux administrateurs.
Interface.py
pour démarrer l'application. N'hésitez pas à créer le référentiel et à soumettre des demandes d'extraction. Pour les changements majeurs, veuillez d'abord ouvrir un ticket pour discuter de ce que vous souhaitez changer.