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

3.7 KiB
Raw Permalink Blame History

Правки по ревью скриншотов сайта (Mac-Claude)

Замечания к новым скриншотам test.food-market.kz/screenshots/*.webp. Часть — ошибки самой программы (не только скриншотов).

План / статус

  1. Английские строки в админке → русский. 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. Каталог: системная группа «Все товары» больше не дублирует корень дерева. ProductGroupDto.IsSystem + ProductGroupTree прячет системные группы (корень «Все товары» = все товары, по модели МойСклада). Группа остаётся в справочнике (дефолт для товаров без группы) — фильтры/импорт/карточка не ломаются.
  3. Валюта: розничная цена в каталоге теперь «₸» (символ), а не «KZT» (код). Формат «1 300 ₸» как у себестоимости.
  4. Касса на сайте: HTML-макет заменён НАСТОЯЩИМ экраном Avalonia-кассы (--screenshots): продажа (04-sale-items) и оплата (05-payment-cash) с логотипом, витринные данные «Магазин у дома», кассир Виктория Ким. Убран префикс «Магазин » в шапке кассы (не было «Магазин Магазин у дома»). HTML-макет удалён из публичного пайплайна.
  5. Витрина: фасовка/единица выводится из названия (кг→весовой/кг, иначе штучный/штука). Проверено API: Авокадо 1шт→штучный, Бешбармак 1кг→весовой, Кола 0.5л→штучный.
  6. Выложено: стенд (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-пересев витрины, пересъёмка экранов, деплой сайта, галерея.