Skip to content

Repository files navigation

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

II. Применяемые технологии

  1. Openjdk 21.0.8 2025-07-15
  2. Фреймфорк Jmix 2.7.0 (запись в реестре российского ПО №12044 от 18.11.2021).
  3. PostgreSQL 17.5

III. Описанием архитектуры Проект выполнен на Jmix - open-source веб-фреймворке, построенном на Spring Boot и Vaadin Flow.

Информационная система состоит из веб-приложения на Java и реляционной базы данных.

Особенности:

  1. Реализовано мягкое удаление - удаления объектов физически не происходит. Ненужные записи просто помечаются как удаленные.
  2. Используется Liquibase в качестве инструмента миграции базы данных.
  3. В качестве сборщика проекта применен Gradle.

IV. Подготовка базы данных

Инструкция для операционной системы Ubuntu. Подготовьте базу данных и пользователя:

sudo su postgres psql create user fin with password '***'; create database url; \c url grant all on schema public to url;

V. Установка и запуск приложения

Выполнить git clone git@github.com:Tmpgmv/fin.git

Из корневого каталога проекта: ./gradlew bootRun Приложение будет запущено на порту 8080. В консоли об этом будет сообщение.

VI. Тестирование

  1. Функциональное тестирование можно выполнить, войдя под тестовым пользователем admin и паролем admin.

  2. Автоматизированное тестирование: из корневого каталога запустить ./gradlew test Альтернатива: ./gradlew check

VII. Создание пользователей Войти как администратору и в пользовательском интерфейсе создать пользователей. Назначить каждому роли.

  1. Ресурсные роли:
  1. UI: minimal access (без этой роли не сможет даже войти).
  2. User (иначе не сможет пользоваться сервисом - не увидит пунктов меню).
  3. UI: edit filters (желательно - тогда сможет для себя настроить фильтры).
  1. Ограничения уровня строк UserCanAccessOnlyTheirOwnDataRole (сможет управлять своими записями).

VII. Краткое руководство пользователя

  1. На главной странице - отчет по доходам и расходам.
  2. Пользователь может иметь несколько кошельков. Id кошелька может быть скопирован по нажатию на кнопку с пиктограммой блокнота.
  3. На расходную категорию можно задать бюджет. При превышении бюджета будет выдано предупреждение.
  4. Доступен перевод денег между кошельками.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages