BUR-61 current.value сделан nullable в бд. Соответствующие сущности скорректированы под изменение бд #5

Merged
APervov merged 1 commits from bur-61 into dev 2026-07-05 19:08:44 +00:00
Owner

БУР-60 · null в значениях тегов

У нас есть довольно серьёзное изменение в данных
сервис mqtt-ingest может отправлять данные
{ tag: 'bla-bla-bla', value: null }

сейчас мы отбрасываем такое по валидации,
но надо сделать, чтобы это принималось

и ложилось в current

смысл - "нет конкретного значения" или "данное значение не определено"

при этом оно НЕ должно ложиться в history
потому что там математика
да и вообще нахрен нам нужна такая история (для history это то же самое, что и пропуск в потоке значений)

на фронтенде в current-виджетах типа MetricWidget null отображается как прочерк "-"
(в отличие от нуля, который отображается числом "0")

в history-виджетах (на графике) там пропуск

Серьёзное изменение в данных: сервис mqtt-ingest может отправлять

1

{ "tag": "bla-bla-bla", "value": null }

Сейчас такое отбрасывается валидацией — надо принимать.

current — писать. Смысл: «нет конкретного значения» / «данное значение не определено».

history — не писать. Там математика; для history это то же самое, что пропуск в потоке значений — такая история не нужна.

Фронтенд — в current-виджетах (MetricWidget и аналоги):

  • null → прочерк «—»
  • 0 → «0» (как сейчас, не путать с null)

Что сделано

  1. Поле value в таблице current может теперь хранить null значения.
  2. Структура поддерживает null значение в данном поле.
# БУР-60 · null в значениях тегов У нас есть довольно серьёзное изменение в данных сервис mqtt-ingest может отправлять данные { tag: 'bla-bla-bla', value: null } сейчас мы отбрасываем такое по валидации, но надо сделать, чтобы это принималось и ложилось в current смысл - "нет конкретного значения" или "данное значение не определено" при этом оно НЕ должно ложиться в history потому что там математика да и вообще нахрен нам нужна такая история (для history это то же самое, что и пропуск в потоке значений) на фронтенде в current-виджетах типа MetricWidget null отображается как прочерк "-" (в отличие от нуля, который отображается числом "0") в history-виджетах (на графике) там пропуск Серьёзное изменение в данных: сервис **mqtt-ingest** может отправлять 1 `{ "tag": "bla-bla-bla", "value": null }` Сейчас такое **отбрасывается валидацией** — надо **принимать**. **current** — писать. Смысл: «нет конкретного значения» / «данное значение не определено». **history** — **не писать**. Там математика; для history это то же самое, что пропуск в потоке значений — такая история не нужна. **Фронтенд** — в current-виджетах (`MetricWidget` и аналоги): - `null` → прочерк **«—»** - `0` → **«0»** (как сейчас, не путать с null) # Что сделано 1. Поле value в таблице current может теперь хранить null значения. 2. Структура поддерживает null значение в данном поле.
APervov added 1 commit 2026-07-05 19:08:22 +00:00
APervov merged commit 54c8bf2e01 into dev 2026-07-05 19:08:44 +00:00
NBizyaev reviewed 2026-07-06 06:09:17 +00:00
@@ -23,3 +23,3 @@
edge,
tag,
value: Number(value),
value: value === null ? null : Number(value),
Contributor

:)
просто "value"
оно само в себе или null или Number
и собственно таким и должно быть записано

:) просто "value" оно само в себе или null или Number и собственно таким и должно быть записано
Sign in to join this conversation.
No Reviewers
No Label
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: APervov/cloud-v3#5