You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 7 Next »

1. Інформаційні моделі

Інформаційні моделі відображають структуру даних, їх зв’язки та логіку обробки у системі.

1.1. Основні інформаційні сутності

У системі «Прозорро.Продажі» визначено ключові сутності:

Процедура (Procedure object)

  • Унікальний ідентифікатор обʼєкта

  • Опис та характеристики лоту

  • Характеристики майбутнього аукціону
    • Стартова ціна

    • Мінімальний крок ставки

    • Дата аукціону
    • Окремі правила та вимоги до учасників
    • Метод проведення (англійський, голландський, інші)
  • Статус (активний, завершений, скасований тощо)

Ставка (Bid)

  • Унікальний ідентифікатор ставки
  • Дані учасника (в т.ч. контактні дані)

  • Сума закритої цінової пропозиції

  • Документи учасника щодо аукціону
  • Дата і час подачі ставки

Аукціон (Auction)

  • Дата та час старту

  • Перелік учасників

  • Історія ставок протягом аукціону
  • Нотифікації, які відображалися на фронті протягом аукціону



2. Опис інтерфейсів

Інтерфейси системи забезпечують взаємодію користувачів, зовнішніх сервісів та інших інформаційних систем.

2.1. Інтерфейси користувачів

Веб-платформа (UI)

  • Кабінет адміністратора (управління аукціонами)

  • Кабінет організатора торгів (створення лотів)

  • Кабінет учасника (подання ставок, перегляд статусу)

  • Панель аналітики та звітності

Мобільний інтерфейс

  • Спрощений функціонал для учасників торгів

  • Оповіщення про статус аукціонів

2.2. API-інтерфейси

REST API використовується для інтеграції із зовнішніми системами.

API для взаємодії з державними реєстрами

  • ЄДРПОУ (перевірка учасників)

  • Державний реєстр речових прав (перевірка об’єктів продажу)

  • Податкова служба (перевірка фінансового стану)

API для фінансових операцій

  • Інтеграція з банками та платіжними системами

  • Перевірка депозитів

  • Контроль за транзакціями

API для звітності та аналітики

  • Взаємодія з контролюючими органами

  • Формування автоматизованих звітів


3. Структура бази даних

База даних системи реалізована на основі NoSQL (MongoDB, Elasticsearch) для швидкої обробки великих обсягів даних.

3.1. Основні колекції БД

КолекціяОпис
procedure-MongoDBОбʼєкти procedure
registry-MongoDBОбʼєкти registry
jobber-MongoDBОбʼєкти jobber
notifications-MongoDBОбʼєкти notifications
auction-MongoDBОбʼєкти auction
swiftStorageОбʼєкти файлів (document service)
Elasticsearchsearch

3.2. Зв’язки між таблицями

Використовується реляційна модель, де основна сутність – аукціон, а всі інші сутності пов’язані через зовнішні ключі (foreign keys).

sql

CREATE TABLE lots ( lot_id SERIAL PRIMARY KEY, description TEXT, start_price DECIMAL(10,2), min_bid_step DECIMAL(10,2), status VARCHAR(20) ); CREATE TABLE bidders ( bidder_id SERIAL PRIMARY KEY, name VARCHAR(255), contact_info TEXT ); CREATE TABLE bids ( bid_id SERIAL PRIMARY KEY, lot_id INT REFERENCES lots(lot_id), bidder_id INT REFERENCES bidders(bidder_id), bid_amount DECIMAL(10,2), bid_time TIMESTAMP );

3.3. Оптимізація бази даних

  • Індексація ключових полів – підвищує швидкість вибірки даних
  • Розділення БД на модулі – для масштабованості
  • Кешування запитів – через Redis або Memcached
  • Логування операцій – для аудиту та безпеки

4. Висновок

  • Інформаційна модель системи структурована та охоплює всі бізнес-процеси
  • API забезпечує інтеграцію з іншими державними та фінансовими системами
  • База даних оптимізована для швидкої обробки запитів та забезпечення безпеки
  • No labels