Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Система управления личными финансами

Настоящее приложение предназначено для управления личными финансами. Позволяет пользователям добавлять доходы и расходы, устанавливать бюджеты на категории и получать статистику по своим финансам.

  • Авторизация пользователей по логину и паролю;
  • Управление доходами и расходами с учетом категорий;
  • Установка бюджета и контроль превышения лимитов;
  • Работа с несколькими кошельками;
  • Переводы между кошельками;
  • Валидация данных и удобное взаимодействие через команды.

Требования по заданию

Приложение для управления личными финансами соответствует следующим требованиям:

  • хранение данных в памяти приложения;
  • авторизация пользователей по логину и паролю, поддерживает работу нескольких пользователей;
  • реализация функций по управлению финансами (доход, расход, установка категорий, бюджета);
  • выполнение функций в привязке к кошельку пользователя;
  • предоставление информации о проведённых операциях;
  • подсчет расходов и доходов по категориям;
  • переводы средств между кошельками;
  • проверка вводимых данных;
  • оповещение пользователя;
  • сохранение данных пользователя в файл и их загрузка при следующем запуске.

Работа с приложением

Главное меню

  • 1 — Регистрация;
  • 2 — Вход
  • 3 — Выход

Управление финансами

  • 1 — Кошелёк
  • 2 — Категории и бюджет
  • 3 — Транзакции
  • 4 — Возврат

Управление кошельком

  • 1 — Создать кошелёк
  • 2 — Подсчитать доходы и расходы
  • 3 — Статистика по кошельку и бюджету
  • 4 — Перевести средств
  • 5 — Возврат

Категории и бюджет

  • 1 — Добавить категорию
  • 2 — Просмотреть список категорий
  • 3 — Подсчитать состояние бюджета по категориям
  • 4 — Возврат

Транзакции

  • 1 — Ввести доход
  • 2 — Ввести расход
  • 3 — Список транзакций
  • 4 — Возврат

Установка и запуск

Для установки программы скачайте архив репозитория или склонируйте его по ссылке

git clone https://github.com/Arvantis/FinManagement.git  

Для работы проекта требуется библиотека jackson-databind
установка доступна с помощью интерфейса IntelliJ IDEA или по ссылке на центральный репозиторий maven

Запуск программы осуществляется из среды разработки IntelliJ IDEA

Структура проекта

FinManagement
├─ pom.xml                 
├─ README.md               
├─ .gitignore
├─ data
│  ├─ categories
│  │  └─ categories.json
│  ├─ users
│  │  └─ users.json
│  └─ wallets
│     └─ wallets.json
├─ lib
│  ├─ jackson-annotations-2.18.2.jar
│  ├─ jackson-core-2.18.2.jar
│  └─ jackson-databind-2.18.2.jar
└─ src
   └─ main
      └─ java
         └─ program
            ├─ app
            │  └─ WalletApp.java
            ├─ controller
            │  ├─ BudgetController.java
            │  ├─ TransactionController.java
            │  └─ WalletController.java
            ├─ model
            │  ├─ Category.java
            │  ├─ Transaction.java
            │  ├─ User.java
            │  └─ Wallet.java
            ├─ repository
            │  ├─ CategoryRepository.java
            │  ├─ FileRepository.java
            │  ├─ UserRepository.java
            │  └─ WalletRepository.java
            ├─ service
            │  ├─ BudgetService.java
            │  ├─ UserService.java
            │  └─ WalletService.java
            ├─ util
            │  └─ DataValidator.java
            └─ ConsoleAppMain.java

Пример работы

  1. Регистрация пользователя

    > 1
    Введите логин: user1
    Введите пароль: qwerty
    Пользователь зарегистрирован.
    
  2. Авторизация

    > 2
    Введите логин: user1
    Введите пароль: qwerty
    Добро пожаловать, user1!
    
  3. Создание кошелька

    > 1
    Введите название кошелька: wallet
    Введите начальный баланс: 10000
    Кошелёк успешно добавлен.
    
  4. Добавление категорий

    > 1
    Введите название категории: food
    Введите лимит бюджета: 1000
    Введите категорию: Еда
    Категория "food2" успешно добавлена.
    
  5. Добавление транзакции

    > 1
    Введите название кошелька: wallet
    Введите сумму: 500
    Введите категорию: Еда
    Транзакция успешно добавлена.
    
  6. Статистика по кошельку и бюджету

    > 3
    Транзакции:
     - Дата: 2025-01-20, Сумма: 3000,00, Категория: entertainment
    
    > 2
    Общий доход: 3000.0
    Общие расходы: 0.0   
    
    
  7. Перевести средства

    > 4
    Введите название вашего кошелька: wallet
    Введите логин получателя: user2
    Введите название кошелька получателя: wallet
    Введите сумму перевода: 200
    Перевод успешно выполнен: 200.0 из "wallet" в "wallet".
    
  8. Сохранение данных:

    Все данные сохраняются автоматически при выходе из приложения.

About

Система управления личными финансами

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages