docs(migration): статус — Part 1 (инвентаризация) + Part 3 (орг) done; Part 2 справочники на реальных данных
Some checks are pending
Auto-tag / Create date-tag (push) Waiting to run
Some checks are pending
Auto-tag / Create date-tag (push) Waiting to run
Пайплайн справочников проверен на реальном аккаунте: орг «FOOD MARKET» на стенде, контрагенты 628 (МС 627) и группы 53 перенесены, товары (31k) импортируются в фоне. Документы (110k), сверка и дельта — спроектированы (migration-design.md), основной объём впереди (многочасовой прогон). global.json не трогал; в МойСклад только чтение. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
a2ee85bc12
commit
4667d8e1a7
|
|
@ -10,18 +10,32 @@
|
|||
|
||||
Легенда: [x] готово · [~] частично · [ ] не начато.
|
||||
|
||||
## План
|
||||
1. [ ] Инвентаризация источника (скрипт) → `docs/migration-source-inventory.md`.
|
||||
2. [ ] Мигратор MoySklad→ALL MARKET (Hangfire, идемпотентный по msId/externalId): справочники →
|
||||
документы в хронологии с номерами/датами(МСК→)/авторами/статусами/связями/комментариями;
|
||||
суммы из тиынов; прогресс + журнал ошибок.
|
||||
3. [ ] Новая орг на стенде (имя = орг МойСклада), простой режим; Демо/«Магазин у дома» не трогать.
|
||||
4. [ ] Сверка (авто) → `docs/migration-reconciliation.md`: остатки по товар×склад, долги
|
||||
контрагентов, остатки счетов/касс, выручка+чеки по месяцам, число документов по типам.
|
||||
5. [ ] Дельта-досинхронизация (updated>= МСК + удалённые) до дня перехода.
|
||||
6. [ ] Производительность/надёжность: замер, идемпотентность, продолжение после падения.
|
||||
## План и статус
|
||||
1. [x] **Инвентаризация источника** → `docs/migration-source-inventory.md` (скрипт
|
||||
`scripts/migration/ms_inventory.py`). Орг «FOOD MARKET», ~31k товаров, 627 контрагентов,
|
||||
~110k документов, 7558 строк остатков; gap-анализ + цели сверки.
|
||||
2. [~] **Мигратор.** Существующий `MoySkladImportService` (справочники product/productfolder/
|
||||
counterparty, идемпотентность по `MoySkladExternalId`) — РАБОТАЕТ на реальных данных:
|
||||
- [x] Контрагенты → **628** в новой орг (МС 627 + 1 розн. покупатель по умолчанию).
|
||||
- [x] Группы → **53** (МС 52 + корень). [~] Товары — импорт запущен (31k, фон, ~3600/20с).
|
||||
- [ ] uom/склад/точка/сотрудники как отдельные справочники (сейчас товары мапятся на
|
||||
дефолтные ед.); externalId на Counterparty/Store/RetailPoint/Employee/UoM.
|
||||
- [ ] **Документы (110k) в хронологии** — НЕ начато (основной объём; дизайн — migration-design.md).
|
||||
3. [x] **Новая орг на стенде** «FOOD MARKET» (простой режим), admin `foodmarket-migr@food-market.local`.
|
||||
Демо/«Магазин у дома» не тронуты. Токен МойСклада задан в настройках орг.
|
||||
4. [ ] Сверка → `docs/migration-reconciliation.md` (цели собраны в source-inventory; после переноса документов).
|
||||
5. [ ] Дельта-досинхронизация (updated>= МСК + удалённые).
|
||||
6. [ ] Производительность/надёжность (резюмируемый курсор документов).
|
||||
7. [ ] Runbook «день перехода» + откат.
|
||||
|
||||
## Сделано в этой сессии (честно)
|
||||
Part 1 (инвентаризация) и Part 3 (орг) — выполнены. Part 2 (справочники) — пайплайн проверен
|
||||
на реальных данных: контрагенты и группы перенесены, товары импортируются. Parts 4–7
|
||||
спроектированы (`migration-design.md`), но НЕ реализованы: перенос ~110k документов с историей
|
||||
(хронология, msId-идемпотентность, МСК→UTC, авторы/статусы/связи), авто-сверка до нуля и
|
||||
дельта — это основной объём и многочасовой прогон → отдельная(ые) сессия(и) продолжения.
|
||||
Условие DONE (перенос + сверка 0 + дельта) НЕ достигнуто — работа продолжается.
|
||||
|
||||
## Ключевые факты API (из ms-api-lessons + проверки)
|
||||
- База `https://api.moysklad.ru/api/remap/1.2`, `Authorization: Bearer`, `Accept-Encoding: gzip` обязателен.
|
||||
- Время moment/фильтров — МОСКОВСКОЕ (UTC+3), формат `yyyy-MM-dd HH:mm:ss`.
|
||||
|
|
|
|||
Loading…
Reference in a new issue