Skip to content

Robilol2411/Java-store-L2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Java Store Manager

Application de bureau Java (Swing) pour la gestion centralisée de boutiques, d'inventaires et d'employés. Ce projet communique avec une base de données MySQL et intègre un système de contrôle d'accès basé sur les rôles (RBAC).

🚀 Fonctionnalités

  • Authentification sécurisée : Hachage des mots de passe (SHA-256) et inscription restreinte via un système de whitelist.
  • Contrôle d'accès (RBAC) :
    • Administrateur : Création/suppression de boutiques, gestion des articles, assignation des employés, gestion des utilisateurs et de la whitelist.
    • Employé : Accès limité aux boutiques assignées, consultation de l'inventaire et mise à jour des stocks (ajouts/ventes).
  • Gestion d'inventaire : Suivi des articles (nom, prix, quantité) avec protection stricte contre les stocks négatifs.

🛠️ Prérequis

  • Java Development Kit (JDK)
  • Serveur MySQL (ex: XAMPP ou WAMP)
  • Driver JDBC : mysql-connector-j-9.6.0.jar

⚙️ Installation et Configuration

  1. Base de données :
    • Lancez votre serveur MySQL local.
    • Créez une base de données nommée boutique_db.
    • (Optionnel) Adaptez les identifiants dans src/connexionDB.java si votre root possède un mot de passe ou si le port diffère de 3306.
  2. Projet :
    • Ouvrez le projet dans votre IDE (IntelliJ IDEA est préconfiguré via le dossier .idea).
    • Vérifiez que la librairie mysql-connector-j-9.6.0 est bien attachée au projet.
  3. Exécution :
    • Lancez la classe Main.java pour démarrer l'interface d'authentification.

📁 Architecture Principale

  • Vues (*Gui.java) : Interfaces Swing gérant l'interaction utilisateur (AppGui, StoreGui, UserGui).
  • Modèles : Entités représentant les données (User, Store, Inventory, Item).
  • Services (Gestion*.java) : Logique métier et exécution des requêtes SQL (GestionUser, GestionStore).
  • Utilitaires : connexionDB.java (JDBC) et SecurityUtils.java (Cryptographie).

Auteurs

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages