Учебный проект по ООП: банк с клиентами, счетами, транзакциями, аудитом и отчетами.
python -m src.mainpython -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