Desktop client Electronic Pharmacy
Go to file
Exest a4880d7c50 v1.0.29: раздел «Отчёты» в стиле приложения
- бирюзовые кнопки (#0F766E) как в шапке, «Сформировать» больше не обрезано
- убрана криво рендерившаяся эмодзи с кнопки ИИ
- поле «Запрос ИИ» нормальной ширины (не на весь экран), фиксированные позиции
- таблица: бирюзовая шапка с белым текстом, чередование строк,
  бирюзовое выделение, числа выровнены вправо, сбалансированные ширины колонок

Проверено рендером с тестовыми данными.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-07 16:57:22 +03:00
_ref Initial commit: Электронная Фармация desktop client. 2026-07-14 12:25:38 +03:00
.github Polish modern UI shell, orders toolbar, and Fluent theme infrastructure. 2026-07-14 13:59:58 +03:00
dist v1.0.29: раздел «Отчёты» в стиле приложения 2026-08-07 16:57:22 +03:00
docs Add forced update check against Gitea releases. 2026-07-31 12:58:36 +03:00
installer Release v1.0.21: consignees from web, remove test pharmacies. 2026-08-05 15:22:44 +03:00
screenshots Initial commit: Электронная Фармация desktop client. 2026-07-14 12:25:38 +03:00
scripts Release v1.0.21: consignees from web, remove test pharmacies. 2026-08-05 15:22:44 +03:00
src v1.0.29: раздел «Отчёты» в стиле приложения 2026-08-07 16:57:22 +03:00
tools/UpdateCheckSmoke Add forced update check against Gitea releases. 2026-07-31 12:58:36 +03:00
.gitignore Release v1.0.21: consignees from web, remove test pharmacies. 2026-08-05 15:22:44 +03:00
Elfisa.sln Apply skill gradient Primary/Danger buttons to Elfisa.UI and add button demos. 2026-07-14 14:27:31 +03:00
README.md Add API documentation and remove unused single-price endpoint. 2026-07-14 15:22:13 +03:00

ЭльФиСА — Электронная Фармация

WinForms-клиент «Электронная Фармация» с современным UI на базе библиотеки Elfisa.UI (тема PharmaTrust).

Структура


src/

  Elfisa.UI/              — UI-библиотека (ThemeManager, Modern* контролы)

  ElectronicPharmacy/     — основное приложение (SQLite, API, бизнес-логика)

Сборка

Требуется .NET SDK 9+ (или MSBuild 16+) и .NET Framework 4.7.2.


dotnet build Elfisa.sln -c Release

Запуск:


.\src\ElectronicPharmacy\bin\Release\Электронная` Фармация.exe

База efClient.db копируется в output (Data\efClient.db или рядом с exe). Путь задаётся через AppConfig.SqliteDbPath.

Настройки

В диалоге Авторизация (и в Settings):

  • URL API — базовый адрес сервера (по умолчанию из AppConfig)

  • Location ID — UUID точки для отправки заказов

  • Region ID — опциональный фильтр при загрузке прайса

Переменная окружения ELF_API_BASE_URL переопределяет URL API.

Подробное описание всех HTTP-запросов — в docs/API.md.

Архив для заказчика


.\dist\build-release.ps1

Создаёт dist\Электронная-Фармация.zip с Release-сборкой.

Основной цикл (V2)

  1. Старт → проверка БД → выбор грузополучателя → прайс-лист

  2. Загрузить — прайс с API в SQLite, обновление открытых вкладок прайса

  3. Фильтр поставщика, поиск, набор в корзину с проверкой остатка

  4. Сохранить заказ — мин. сумма по поставщику, уникальный номер, грузополучатель в Orders

  5. Отправить — POST /api/buyer/orders, статус ОТПРАВЛЕН только у отправленного заказа

  6. Заказы — фильтры по статусу, поставщику, грузополучателю; отправка одного заказа

  7. Отказы / Накладные — синхронизация с /api/buyer/invoices

Приёмочный чек-лист

  1. Старт → БД → выбор точки → прайс

  2. Загрузить → прайс обновился, корзина очищена с предупреждением

  3. Фильтр поставщика + поиск + количество + проверка остатка

  4. Сохранить заказ (мин. сумма, корректный номер, грузополучатель)

  5. Отправить → только выбранные заказы → статус / ошибка API

  6. Журнал: фильтры, комментарий, удаление НОВЫЙ

  7. Отказы: загрузка с API + детали позиций

  8. Авторизация + location_id в настройках

  9. Единый UI: UiDialogs / toast, без debug-панелей загрузки