Skip to content

Lasagnya/Clever-Bank

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Описание проекта

Консольное приложение для банка. Позволяет аутентифицироваться в системе, изменять данные аутентификации, создавать счета и переводить средства между счетами, как своими, так и чужими. Транзакция на счёт другого банка обезопашена с учётом работы в многопоточной среде. Также есть функционал формирования выписки за месяц, год или весь период существования счёта в формате pdf или txt. Есть функционал пополнения счёта в "банкомате" и вывода денег со счёта. После каждой транзакции формируется чек, который помещается в папку check в корне проекта. Выписки помещаются в папку excerpt. Код содержит документацию в формате JavaDoc.

Запуск проекта

Запуск проекта осуществляется в методе main класса project/controllers/Runner.java. Всё управление происходит через консоль путём ввода числового кода одного из предложенных вариантов.

CRUD операции

Банковская логика проекта не позволяет удалять и изменять счета, поэтому для сущности Account реализовано только добавление счёта. На вход подаётся счёт с заданными валютой, датой открытия, id банка-владельца и id пользователя-владельца.

Невозможно удалить пользователя, поэтому реализовано создание и изменение сущности User. На создание подаётся пользователь с заданными именем, id банка-владельца, паролем аккаунта. Изменить у существующего пользователя можно или пароль, или имя. У локального пользователя изменяется одно из полей и изменённый пользователь отправляется в базу данных по своему id.

Реализовано создание, изменение и удаление сущности Bank. Для создания подаётся сущность с заданным названием банка. Для изменения подаётся сущность с заданным названием и id, по id в базе данных обновляется название. Для удаления подаётся id, по нему в базе данных удаляется строка с банком. Каскадом удаляются и пользователи со счетами, принадлежащими этому банку.

Сущность Transaction техническая и не подлежит ручному регулированию.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages