Это приложение предназначено для импорта и работы с данными по торговле ценными бумагами. Приложение предоставляет функциональность импорта информации о ценных бумагах и истории торгов через XML-файлов или запрос, добавления записи вручную и удаление данных.
Приложение разработано с использованием Scala + Akka и использует базу данных PostgreSQL для хранения данных. Slick используется для операций с базой данных. Для работы с XML-документами использовался NodeSeq.
Импорт объектов из файлов Приложение поддерживает импорт объектов "Информация о ценных бумагах" и "История торгов за произвольную дату" из прикрепленных XML файлов.
Импорт объектов из запроса биржи Приложение поддерживает запрос истории по отсутствующей ценной бумаге.
Объект "Информация о ценных бумагах" SecuritiesHub.
Для объекта "Информация о ценных бумагах" должны присутствовать следующие поля:
- id
- secid
- regnumber
- name
- emitent_title
Объект "История торгов за произвольную дату" HistoryTrade.
Для объекта "История торгов за произвольную дату" должны присутствовать следующие поля:
- id
- secid (поле ссылается на SecuritiesDataHub)
- tradedate
- numtrades
- open
- close
Сводные данные.
Приложение также предоставляет отдельную сводную страницу Summary для вывода сводных данных на основе сущностей "Информация о ценных бумагах" и "История торгов за произвольную дату". Выводятся следующие поля:
- secid
- regnumber
- name
- emitent_title
- tradedate
- numtrades
- open
- close
Запуск приложения
Для запуска приложения необходимо выполнить следующие шаги:
- Установите JDK 8 или выше.
- Установите Scala версии 2.13.8
- Установите Intellij IDEA.
- Склонируйте репозиторий.
- Установите PostgreSQL сервер и создайте базу данных для приложения.
- В файле application.conf настройте доступ к базе данных, указав URL, имя пользователя и пароль. (По умолчанию стоит название БД scaladb)
- Запуск приложения через AppServer.scala
- Приложение будет доступно по адресу http://localhost:8080 с автопеходом на URI http://localhost:8080/index
Пользовательская инструкция
- Приложение состоит из главного меню и переход на страницу Сводные данные.
- В главном меню есть возможность:
- выбрать файл для загрузки,
- выполнить запрос к бирже,
- сохранить данные для ценных бумаг,
- удалить данные.
Вложения:
XML-файлы для тестирования работы загрузки файлов находятся здесь src/main/resources/ history.xml, securities.xml.