Пользователи и роли

users

  • email
  • password_hash
  • is_confirmed
  • limits
  • initial_limits
  • created_at

Пользователь владеет отчетами, товарами и селлерами.

roles

  • code
  • name

Связь с пользователями задается через таблицу user_roles.

Справочники пользователя

sellers

  • user_id
  • seller_number
  • name

Ограничение уникальности: user_id + seller_number.

products

  • user_id
  • supplier_article
  • name
  • cost_price
  • seller_id

Ограничение уникальности: user_id + supplier_article.

seller_id используется для привязки товара к конкретному селлеру.

Отчеты

reports

  • user_id
  • report_number
  • filename
  • source_path
  • is_combined
  • seller_id
  • uploaded_at

Отчет может быть:

  • обычным weekly-отчетом
  • объединенным отчетом, если is_combined = true

report_items

Каждая строка отчета хранит агрегированный результат по одному артикулу поставщика.

Поля включают:

  • продажи и возвраты
  • суммы по СПП и цене продавца
  • комиссию и производные показатели
  • логистику и обратную логистику
  • себестоимость
  • НДС и УСН
  • прибыль и маржу
  • manual_values

manual_values хранит ручные корректировки в JSON-формате по конкретным полям строки.

История операций

upload_history

  • filename
  • rows_used
  • uploaded_at

Фиксирует расход лимитов при загрузке файлов.

limit_history

  • amount
  • operation
  • created_at

Поддерживаются операции:

  • topup
  • expense