Skip to content

ArsenHandzhyan/ml_python_OOP

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Day 7 - Bank System (OOP)

Учебный проект по ООП: банк с клиентами, счетами, транзакциями, аудитом и отчетами.

Запуск

python -m src.main

Тесты

python -m unittest discover -s tests

Примечание: тесты, связанные с операциями банка, пропускаются с 00:00 до 05:00. Если установлен matplotlib, для тестов с графиками можно задать MPLCONFIGDIR=/tmp/mpl.

Документация

  • docs/algorithm.md

Что реализовано

  • Клиенты с ФИО, ID, статусом, контактами и проверкой возраста.
  • Банк: добавление клиентов, открытие/закрытие/заморозка счетов.
  • Аутентификация по ID + ФИО с блокировкой после 3 ошибок.
  • Запрет операций с 00:00 до 05:00.
  • Подсчет общей суммы и рейтинг клиентов по сумме счетов.
  • Счета: базовый, накопительный, инвестиционный, премиальный.
  • Транзакции: процессор, очередь, комиссии, конвертация валют.
  • Риск-анализатор, аудит-лог, отчеты и экспорт в JSON/CSV/TXT.
  • Сохранение графиков по данным отчетов (если доступен matplotlib).

Структура

src/
  AbstractAccount.py
  AuditLog.py
  Bank.py
  BankAccount.py
  Client.py
  InvestmentAccount.py
  PremiumAccount.py
  ReportBuilder.py
  RiskAnalyzer.py
  SavingsAccount.py
  Transaction.py
  TransactionProcessor.py
  TransactionQueue.py
  errors.py
  main.py

About

База ООП

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages