Skip to content

albiecr/bank-self-service-terminal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

7 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Typing SVG

๐Ÿ“œ Description

A Java-based command-line application that simulates an automated banking terminal with core financial operations. Developed as a practical exercise in object-oriented programming and banking business logic.

โœจ Features

Banking Operations

โ€ข ๐Ÿ’ฐ Deposit: Add funds to account
โ€ข ๐Ÿ’ธ Withdrawal: Withdraw money (with balance verification)
โ€ข ๐Ÿ“Š Balance Inquiry: View current account balance
โ€ข ๐Ÿ“œ Statement: List recent transactions (date, time, type, amount)

๐Ÿ“‹ Requirements

โ€ข Java SE-17
โ€ข Terminal/Command Prompt access

โš™๏ธ Installation

โ€ข No special installation required beyond Java

โ€ข Clone the repository (if applicable):

git clone https://github.com/albiecr/bank-self-service-terminal.git
cd bank-self-service-terminal

๐Ÿš€ Usage

โ€ข Run the program and interact with the menu:

 |BANCO BOLINHA REDONDINHA| TELA INICIAL |
  1. Consultar Saldo โ†’ Check balance
  2. Realizar depรณsito โ†’ Make deposit
  3. Realizar Saque โ†’ Withdraw money
  4. Extrato โ†’ View transaction history
  5. Sair do Sistema โ†’ Exit

โ€ข The program will:

  1. Prompt you to select option
  2. Ask you values
  3. Display operation and balance

๐Ÿ—๏ธ Code Structure

 Bank/
โ””โ”€โ”€ BankSelfServiceTerminal.java         // Main class
    โ”œโ”€โ”€ main()                           // Entry point
    โ”‚   โ”œโ”€โ”€ Scanner                      // User input handler
    โ”‚   โ”œโ”€โ”€ saldo                        // Balance tracker
    โ”‚   โ”œโ”€โ”€ movim[]                      // Transaction history array (stores last 10 operations)
    โ”‚   โ””โ”€โ”€ do-while loop                // Main menu system
    โ”‚
    โ”œโ”€โ”€ Deposit Logic                    // valordep processing (+validation)
    โ”œโ”€โ”€ Withdrawal Logic                 // valorsaq processing (+balance check)
    โ”œโ”€โ”€ Balance Check                    // Displays current saldo
    โ””โ”€โ”€ Statement                        // Prints movim[] with timestamps 

Key Components

โ€ข LocalDateTime: Tracks transaction timestamps
โ€ข Array-based Storage movim[] stores last 10 transactions
โ€ข Input Validation: Blocks negative values/over-withdrawals

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

โœ‰๏ธ Contact

Albertina Rodrigues - [email protected]
Project Link: https://github.com/albiecr/bank-self-service-terminal

๐Ÿ”ฎ Future Improvements

โ€ข Replace array with file/database persistence
โ€ข Add PIN authentication
โ€ข Implement JavaFX GUI

About

๐Ÿš€ ATM Simulator - Java CLI Application

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages