Commit Graph

6 Commits

Author SHA1 Message Date
Exest
23f34cc769 версия 2.0.6: Enter в поле поиска прайса запускает поиск
Раньше поиск шёл только кнопкой «Найти». Добавлен KeyBinding Enter → SearchCommand
прямо в поле ввода: набрал название, нажал Enter — ищет.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-13 15:11:18 +03:00
Exest
f98978a5d2 2.0.1: «Мои прайсы» в Прайс-листе + подключённые прайсы в «Загрузить»
- Прайс-лист: дропдаун «Мои прайсы» (подключённые прайсы + «Все прайсы»),
  выбор фильтрует каталог по price_list_id; один прайс — выбирается сам
- Загрузить: показывает список подключённых прайсов и качает их
- Core: GetBuyerPriceListsAsync + priceListId в GetPriceSummaryAsync

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-10 17:42:53 +03:00
Exest
3fc825e54b Avalonia: Прайс-лист как в WinForms — дрилдаун Название→МГ→Предложения + ввод количества с клавиатуры
- База/дозировка вычисляются на клиенте (порт BuildBaseName/ExtractDosage)
- Три панели: базовые наименования → дозировки (МГ) → предложения поставщиков
- Колонка «Заказ»: ввод числа с клавиатуры (многозначно), Enter — добавить
- Фикс: null-безопасная привязка KeyDown (падало в конструкторе → пустой экран)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-10 12:02:41 +03:00
Exest
2420a71ace Avalonia: сборка заказа в Прайс-листе (панель «Мой заказ») + черновики в «Заказы»
- Прайс-лист: 2 колонки — каталог + «Мой заказ» (состав/кол-во/итог/
  грузополучатель/комментарий) + «Сохранить заказ»
- Сохранить -> локальный черновик (DraftStore, %APPDATA%)
- Заказы: черновики вверху «Не отправлен» + «Отправить заказ»/«Удалить»
- как в WinForms: собрал -> сохранил (не отправлен) -> отправил отдельно

Проверено вживую: сборка, сохранение, черновик в Заказах.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-08 11:43:47 +03:00
Exest
c677345ba6 Avalonia: общая корзина, добавление из Прайс-листа, Настройки
- CartService: единая корзина для Прайс-листа и Отправить
- Прайс-лист: выбор позиции + кол-во + «Добавить в заказ», индикатор корзины
- Настройки (диалог ⚙ в шапке): адрес API, тема (свет/тьма, применяется
  сразу), грузополучатель по умолчанию; сохранение в %APPDATA%
- SettingsStore (Core) + AppConfig читает сохранённый API-адрес
- тема применяется на старте

Проверено вживую: добавление из Прайс-листа в корзину, диалог настроек.
Реальная отправка заказа (POST) — собрана и связана, живой заказ по явному «да»
(автозащита блокирует боевую транзакцию без подтверждения).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-08 11:26:53 +03:00
Exest
77dfb08ef4 Avalonia: Прайс-лист, Накладные, Справочник (5/7 разделов рабочие)
- Прайс-лист: поиск + грид на рабочем /api/supplier-prices/summary
  (наименование, форма, производитель, поставщик, цена)
- Накладные: реестр приходных документов (из buyer/report)
- Справочник: профиль покупателя + грузополучатели (buyer/locations)
- Core: GetPriceSummaryAsync, GetBuyerLocationsAsync + DTO
- README: статус разделов + примечание про buyer/orders 500 (фикс застейджен)

Рабочие: Прайс-лист, Заказы, Накладные, Отчёты, Справочник.
Осталось: Отправить (корзина+DBF), Отказы (нужен эндпоинт), автообновление.
Собирается; рантайм новых 3 разделов не проверен (клиент за игрой — окна не поднимал).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-08 10:20:36 +03:00