food-market/docs/ui-review-fixes-progress.md
nns 6557ac34ec
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 Web / Build + push Web (push) Waiting to run
Docker Web / Deploy Web on stage (push) Blocked by required conditions
test(menu-walk): лингва-проверка UI + фикс «low-stock» в настройках
- stage-ui-menu-walk: assertNoUiEnglish — узкий denylist хромовых строк
  (Dashboard / «Low-stock alerts» / live / offline / Live-обновл), пропуск
  документации (/help, /whats-new, /admin/diagnostic), где латиница легитимна
  (клавиши, код-идентификаторы, бренды). Прогон admin: 1 passed, 0 ошибок.
- Настройки Telegram: «…топ-3 товара, low-stock…» → «…низкий остаток…» (ru.json
  + OrganizationSettingsPage) — единственная оставшаяся видимая латиница в UI.
- Галерея сайта и прогресс обновлены.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 23:30:37 +05:00

38 lines
3.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Правки по ревью скриншотов сайта (Mac-Claude)
Замечания к новым скриншотам test.food-market.kz/screenshots/*.webp. Часть — ошибки
самой программы (не только скриншотов).
## План / статус
1. [x] Английские строки в админке → русский. ru.json: `dashboard.title` «Dashboard»→
«Сводка», `common.live/offline` «live/offline»→«онлайн/офлайн». Дашборд-виджеты:
defaultValue «Low-stock alerts»→«Низкий остаток», «Live-обновление»→«Обновляется в
реальном времени». Grep по web/src — других видимых латинских UI-строк нет (бренды/
единицы — ок). Тест: лингва-проверка в `stage-ui-menu-walk.spec.ts` (denylist UI-English
на видимом тексте каждой страницы, бренды/единицы не ловятся).
2. [x] Каталог: системная группа «Все товары» больше не дублирует корень дерева.
`ProductGroupDto.IsSystem` + `ProductGroupTree` прячет системные группы (корень «Все
товары» = все товары, по модели МойСклада). Группа остаётся в справочнике (дефолт для
товаров без группы) — фильтры/импорт/карточка не ломаются.
3. [x] Валюта: розничная цена в каталоге теперь «₸» (символ), а не «KZT» (код). Формат
«1 300 ₸» как у себестоимости.
4. [x] Касса на сайте: HTML-макет заменён НАСТОЯЩИМ экраном Avalonia-кассы (--screenshots):
продажа (04-sale-items) и оплата (05-payment-cash) с логотипом, витринные данные
«Магазин у дома», кассир Виктория Ким. Убран префикс «Магазин » в шапке кассы (не было
«Магазин Магазин у дома»). HTML-макет удалён из публичного пайплайна.
5. [x] Витрина: фасовка/единица выводится из названия (кг→весовой/кг, иначе штучный/штука).
Проверено API: Авокадо 1шт→штучный, Бешбармак 1кг→весовой, Кола 0.5л→штучный.
6. [x] Выложено: стенд (api+web) + витрина пересеяна (RESET) + публичный сайт. Пересняты
затронутые экраны, пережаты в WebP (≤300 КБ). Просмотрено глазами: дашборд «Сводка»/
«онлайн»/«Низкий остаток»; каталог ₸/один «Все товары»/корректная фасовка; /pos —
настоящая касса с логотипом. Галерея `docs/site-screenshots/index.html`.
## Что НЕ трогаем
Прод, shared-postgres, global.json, gateway nginx, sklad.
## Журнал
- 08.10 — старт: план, разбор замечаний.
- 08.10 — код: ru.json + виджеты (1), ProductGroupDto.IsSystem + tree (2), ₸ в каталоге (3),
ShowcaseSeeder packaging из названия (5), реальная Avalonia-касса + шапка (4), лингва-тест.
- 08.10 — деплой api+web, RESET-пересев витрины, пересъёмка экранов, деплой сайта, галерея.