food-market/scripts/migration
nns 42e4f630b1
Some checks are pending
Auto-tag / Create date-tag (push) Waiting to run
CI / Backend (.NET 8) (push) Waiting to run
CI / Web (React + Vite) (push) Waiting to run
CI / POS (WPF, Windows) (push) Waiting to run
Docker API / Build + push API (push) Waiting to run
Docker API / Deploy API on stage (push) Blocked by required conditions
Docker Web / Build + push Web (push) Waiting to run
Docker Web / Deploy Web on stage (push) Blocked by required conditions
feat(superadmin): переключатель подгрузки из МойСклад + состояние прогона
Суперадмин управляет дельта-подгрузкой МойСклад на стенд флагом в «Настройках
платформы» (по умолчанию ВЫКЛ), не трогая systemd-таймер руками.

- PlatformSettings: MoySkladDeltaSyncEnabled (bool, default false) + состояние
  последнего прогона (startedAt/finishedAt/ok/migrated/error); миграция Phase46
  (ADD COLUMN IF NOT EXISTS, идемпотентно).
- Super-admin API: GET/PUT /platform-settings/moysklad-delta — тоггл с reason,
  пишется в SuperAdminAuditLog; GET отдаёт состояние прогона. Только SuperAdmin.
- Admin API (для скрипта, роль Admin): GET /admin/moysklad/delta-sync (флаг),
  POST /admin/moysklad/delta-sync/report (итог прогона → PlatformSettings).
- Серверная защита: import-supplies при delta=true и выключенном флаге → 409
  с понятной причиной. Ручной импорт из мастера (без delta=true) не затронут.
- delta_sync.py: сначала спрашивает флаг — при «Выкл» одна строка в лог и выход
  без изменения lastSync (повторное включение догонит пропущенное); помечает
  запросы delta=true; в конце репортит итог прогона суперадмину.
- SuperAdminPlatformSettingsPage: блок «Подгрузка из МойСклад» — тоггл Вкл/Выкл
  с причиной, подпись, состояние последнего прогона.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-12 17:08:41 +05:00
..
__pycache__ fix(migration): не схлопывать разные карточки МойСклада по артикулу + актуализировать объяснение сверки 2026-10-09 20:11:06 +05:00
delta_sync.py feat(superadmin): переключатель подгрузки из МойСклад + состояние прогона 2026-10-12 17:08:41 +05:00
ms_inventory.py docs(migration): инвентаризация источника МойСклад + дизайн мигратора (Part 1) 2026-10-09 13:26:35 +05:00
reconcile.py fix(migration): не схлопывать разные карточки МойСклада по артикулу + актуализировать объяснение сверки 2026-10-09 20:11:06 +05:00