Раньше поиск шёл только кнопкой «Найти». Добавлен KeyBinding Enter → SearchCommand
прямо в поле ввода: набрал название, нажал Enter — ищет.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- Прайс-лист: дропдаун «Мои прайсы» (подключённые прайсы + «Все прайсы»),
выбор фильтрует каталог по price_list_id; один прайс — выбирается сам
- Загрузить: показывает список подключённых прайсов и качает их
- Core: GetBuyerPriceListsAsync + priceListId в GetPriceSummaryAsync
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- База/дозировка вычисляются на клиенте (порт BuildBaseName/ExtractDosage)
- Три панели: базовые наименования → дозировки (МГ) → предложения поставщиков
- Колонка «Заказ»: ввод числа с клавиатуры (многозначно), Enter — добавить
- Фикс: null-безопасная привязка KeyDown (падало в конструкторе → пустой экран)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- CartService: единая корзина для Прайс-листа и Отправить
- Прайс-лист: выбор позиции + кол-во + «Добавить в заказ», индикатор корзины
- Настройки (диалог ⚙ в шапке): адрес API, тема (свет/тьма, применяется
сразу), грузополучатель по умолчанию; сохранение в %APPDATA%
- SettingsStore (Core) + AppConfig читает сохранённый API-адрес
- тема применяется на старте
Проверено вживую: добавление из Прайс-листа в корзину, диалог настроек.
Реальная отправка заказа (POST) — собрана и связана, живой заказ по явному «да»
(автозащита блокирует боевую транзакцию без подтверждения).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>