Skip to content

Powellfgn17/schooolProjectBank

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🏦 Système de Gestion Bancaire

Description

Application de gestion bancaire académique conçue pour gérer complètement les opérations bancaires incluant la gestion des comptes, des opérations, des prêts, et des cartes bancaires.

Fonctionnalités Principales

1. Authentification

  • Connexion sécurisée avec identifiants
  • Trois rôles d'utilisateurs : Client, Employé, Administrateur
  • Sessions utilisateur

2. Gestion des Comptes

  • Création de comptes bancaires
  • Modification des informations
  • Consultation des détails
  • Suppression de comptes
  • Types de comptes : Courant, Épargne, Titre

3. Opérations Bancaires

  • Dépôts : Espèces, Chèques, Virements
  • Retraits : Espèces, DAB, Virements
  • Transferts : Entre comptes (Interne, SEPA, International)
  • Consultation de solde : Solde disponible, découvert autorisé

4. Historique des Transactions

  • Consultation complète de l'historique
  • Filtrage par période, type, montant
  • Affichage détaillé des transactions
  • Export en PDF (simulation)

5. Gestion des Prêts

  • Création de prêts (Personnel, Immobilier, Auto, Entreprise)
  • Calcul automatique des mensualités
  • Suivi des prêts actifs
  • Enregistrement des remboursements
  • Plan d'amortissement

6. Gestion des Cartes Bancaires

  • Émission de cartes (Débit, Crédit, Prépayée)
  • Marques supportées : Visa, Mastercard, American Express
  • Blocage/Déblocage de cartes
  • Renouvellement
  • Consultation des limites et de l'usage
  • Historique des transactions par carte

7. Gestion des Utilisateurs (Employé/Admin)

  • Création d'utilisateurs
  • Modification des informations
  • Attribution de rôles
  • Suppression de comptes

Installation

Prérequis

  • Python 3.8 ou supérieur
  • Tkinter (inclus avec Python)

Étapes d'installation

# 1. Cloner ou télécharger le projet
cd /home/eng-powell/Desktop/ML/remenbering_things/screen

# 2. Vérifier que tous les fichiers sont présents
ls -la *.py

# 3. Lancer l'application
python app.py

Structure des Fichiers

.
├── app.py                    # Point d'entrée principal
├── screens.py                # Constantes et configuration UI
├── login.py                  # Écran d'authentification
├── menu.py                   # Menu principal
├── compte.py                 # Gestion des comptes
├── operations.py             # Opérations bancaires
├── pret.py                   # Gestion des prêts
├── cards.py                  # Gestion des cartes
├── historique.py             # Historique des transactions
├── users.py                  # Gestion des utilisateurs
├── CAHIER_DES_CHARGES.md    # Documentation complète
└── README.md                 # Ce fichier

Identifiants de Test

L'application dispose de trois comptes de test par défaut :

Identifiant Mot de passe Rôle Accès
client 1234 Client Fonctionnalités standard
employe 1234 Employé + Gestion des utilisateurs
admin 1234 Administrateur Accès complet

Note : Ces identifiants sont uniquement pour les tests. Dans une application réelle, les mots de passe seraient hashés et stockés en base de données.

Guide d'Utilisation

Première Connexion

  1. Lancez l'application : python app.py
  2. Sur l'écran de connexion, entrez un identifiant de test
  3. Cliquez sur "Se connecter"
  4. Vous accédez au menu principal

Navigation

Le menu principal affiche différentes options selon votre rôle :

  • Gestion des Comptes : Créer, modifier, consulter les comptes
  • Opérations Bancaires : Dépôts, retraits, transferts
  • Gestion des Cartes : Émettre et gérer les cartes bancaires
  • Gestion des Prêts : Créer et suivre les prêts
  • Historique : Consulter toutes les transactions
  • Gestion des Utilisateurs : (Employé/Admin) Gérer les comptes utilisateur

Fonctionnalités par Écran

Gestion des Comptes

  • Remplissez les champs du formulaire
  • Cliquez sur "Créer" pour ajouter un compte
  • Double-cliquez sur un compte pour le sélectionner
  • Modifiez les informations et cliquez "Modifier"
  • Sélectionnez un compte et cliquez "Supprimer"

Opérations Bancaires

  • Sélectionnez l'onglet correspondant à votre opération
  • Remplissez le formulaire
  • Cliquez "Effectuer" pour valider
  • Les transactions sont enregistrées automatiquement

Gestion des Prêts

  • Créer : Entrez les paramètres (montant, taux, durée)
  • Suivi : Consultez les prêts actifs et leurs détails
  • Remboursement : Enregistrez les paiements

Gestion des Cartes

  • Émission : Générez une nouvelle carte
  • Gestion : Bloquez/débloquéez une carte
  • Consultation : Affichez les détails et l'utilisation
  • Transactions : Consultez l'historique par carte

Fonctionnalités Avancées

Consultation de Solde

Dans l'onglet "Consultation Solde" des Opérations :

  • Sélectionnez un compte
  • Cliquez "Consulter"
  • Affichage du solde disponible, comptable et du découvert autorisé

Historique avec Filtres

  • Filtrez par compte, type d'opération, statut
  • Double-cliquez sur une transaction pour voir les détails
  • Exportez en PDF

Calcul de Prêt

  • Les mensualités et intérêts sont calculés automatiquement
  • La simulation affiche le coût total du prêt
  • Le plan d'amortissement peut être consulté

Données Simulées

L'application contient des données de test :

Comptes

  • CPT001 : Jean Dupont, Compte Courant, 50 000 EUR
  • CPT002 : Marie Martin, Compte Épargne, 120 000 EUR

Cartes

  • Visa de Jean Dupont, limite 1 000 EUR/jour
  • Mastercard de Marie Martin, limite 2 000 EUR/jour

Prêts

  • PRT001 : Jean Dupont, 50 000 EUR à 4.5%, 84 mois

Transactions

  • Historique pré-rempli avec des opérations d'exemple

Architecture

Pattern MVC

L'application suit le pattern Modèle-Vue-Contrôleur :

  • Vues : Frames Tkinter (login.py, menu.py, compte.py, etc.)
  • Contrôleur : Classe BankApp et méthodes de gestion d'état
  • Modèle : Données stockées en mémoire (listes et dictionnaires)

Flux de Navigation

Connexion → Menu Principal → {
                                 ├→ Gestion Comptes
                                 ├→ Opérations
                                 ├→ Gestion Prêts
                                 ├→ Gestion Cartes
                                 ├→ Historique
                                 └→ Gestion Utilisateurs (Employee/Admin)
                              }

Limitations et Évolutions Futures

Limitations Actuelles

  • Données stockées en mémoire (perdues à la fermeture)
  • Pas de persistance en base de données
  • Authentification simple sans hash
  • Calculs bancaires simplifié
  • Interface monoposte (une seule instance)

Évolutions Possibles

  • Intégration avec une base de données (SQLite/MySQL)
  • API REST pour accès distant
  • Application mobile (Flutter/React Native)
  • Authentification multi-facteurs
  • Chiffrement des données sensibles
  • Génération automatique de rapports/PDF
  • Intégration avec des services bancaires réels
  • Détection de fraude
  • Gestion multi-utilisateurs en temps réel
  • Tests unitaires complets

Sécurité

Important : Cette application est à titre académique. Les mesures de sécurité suivantes sont à implémenter en production :

  • ✅ Validation des entrées (partiellement implémentée)
  • ❌ Hash sécurisé des mots de passe (à implémenter)
  • ❌ Chiffrement des données sensibles (à implémenter)
  • ❌ HTTPS pour la communication (à implémenter)
  • ❌ Audit et logs détaillés (à améliorer)
  • ❌ Contrôle d'accès granulaire (à renforcer)

Troubleshooting

Problème : Module Tkinter non trouvé

# Ubuntu/Debian
sudo apt-get install python3-tk

# Fedora
sudo dnf install python3-tkinter

# macOS
# Tkinter est inclus avec Python depuis python.org

Problème : Fenêtre trop petite

  • La fenêtre est redimensionnable
  • Tirez les bords pour augmenter la taille
  • Minimum recommandé : 800x600

Problème : Les données ne sont pas persistantes

  • C'est normal ! Les données sont stockées en mémoire
  • À chaque redémarrage, les données de test sont rechargées
  • Pour persister les données, implémentez une base de données

Support et Contribution

Pour des questions ou des améliorations :

  1. Consultez le CAHIER_DES_CHARGES.md pour les spécifications
  2. Modifiez les fichiers concernés
  3. Testez vos modifications
  4. Documentez vos changements

Licence

Projet académique - Libre d'utilisation à des fins éducatives.

Auteurs et Dates

Créé : 16 janvier 2026
Dernière mise à jour : 16 janvier 2026
Version : 1.0.0


Amusez-vous bien avec ce système bancaire ! 🏦💳

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors