Bank Solutions, une enseigne bancaire traditionnelle, souhaite développer une application e-bank pour offrir des services bancaires en ligne. Ce projet vise à créer une plateforme sécurisée et intuitive permettant aux utilisateurs de gérer leurs comptes bancaires et d'effectuer des opérations financières en ligne.
- En tant qu'utilisateur, je veux pouvoir créer un nouveau compte bancaire (courant, épargne, etc.) pour gérer mes finances.
- Attributs : Type de compte, Solde initial, Date de création
- En tant qu'utilisateur, je veux consulter le solde et l'historique des transactions de mes comptes pour suivre mes dépenses et revenus.
- Attributs : ID de la transaction, Date et heure, Montant, Type de transaction (Crédit, Débit), Description
- En tant qu'utilisateur, je veux pouvoir fermer un compte bancaire pour ne plus l'utiliser.
- Attribut : Raison de la fermeture
- En tant qu'utilisateur, je veux pouvoir consulter les informations de ma carte bancaire.
- Attributs : Numéro de carte, Date d'expiration, Type de carte (Débit, Crédit)
- En tant qu'utilisateur, je veux pouvoir activer ou désactiver ma carte bancaire pour sécuriser mes transactions.
- En tant qu'utilisateur, je veux pouvoir bloquer ma carte bancaire en cas de perte ou de vol.
- Attribut : Raison du blocage
- En tant qu'utilisateur, je veux pouvoir transférer de l'argent entre mes propres comptes.
- Attributs : Montant, Description
- En tant qu'utilisateur, je veux pouvoir transférer de l'argent vers des comptes externes.
- Attributs : Détails du compte externe (Numéro de compte, Banque, etc.), Montant, Description
- En tant qu'utilisateur, je veux pouvoir ajouter, modifier ou supprimer des bénéficiaires.
- Attributs : Nom, Détails du compte (Numéro de compte, Banque, etc.)
- Le projet doit suivre les bonnes pratiques recommandées pour une application Spring Boot.
- Chaque classe et méthode doit être documentée, incluant :
- Description des responsabilités
- Détails sur les paramètres
- Valeurs de retour
- Validation des données lors de la création et de la fermeture des comptes
- Gestion des exceptions pour les opérations illégales
- Validation des montants avant les transferts
- Java JDK 21
- Maven 3.6 ou supérieur
- Un IDE de votre choix (IntelliJ IDEA, Eclipse, VS Code, etc.)
- Postman pour tester l'API
- Clonez le dépôt :
https://github.com/manbarmohamed/bank_solution.git
- Naviguez dans le dossier du projet :
cd banksolution
- Installez les dépendances :
mvn clean install
- Lancez l'application avec Maven :
mvn spring-boot:run
- L'application sera accessible à l'adresse
http://localhost:8081
- Ouvrez Postman
- Importez la collection de requêtes fournie dans le dossier postman du projet
- Configurez l'environnement Postman avec la variable
base_url
définie àhttp://localhost:8080
- Exécutez les requêtes pour tester les différents endpoints de l'API
Exemples de requêtes :
- Création d'un compte :
POST {{base_url}}/api/accounts
- Consultation du solde :
GET {{base_url}}/api/accounts/{accountId}/balance
- Transfert d'argent :
POST {{base_url}}/api/transfers
- Developper : Manbar Mohamed
- Email : [email protected]
- Social : LinkedIn
- CodPen : CodePen
- Medium : Medium