Репозиторий связанный с Урал-Рецептом. Сейчас будет доступно информирование, дальше колл-центр и прочее.
Find a file
2026-09-30 14:51:57 +05:00
background добавление палитры 2026-09-29 16:12:38 +05:00
installer инстал скрипт + css 2026-09-30 14:51:57 +05:00
src инстал скрипт + css 2026-09-30 14:51:57 +05:00
tests инстал скрипт + css 2026-09-30 14:51:57 +05:00
tools Rename + fix 2026-09-10 11:03:58 +05:00
.gitignore add files 2026-09-08 10:57:11 +05:00
publish-dist.cmd add files 2026-09-08 10:57:11 +05:00
publish-dist.ps1 инстал скрипт + css 2026-09-30 14:51:57 +05:00
README.md Rename + fix 2026-09-10 11:03:58 +05:00
SISZL-Connect.sln Rename + fix 2026-09-10 11:03:58 +05:00
SISZL-Connect.slnx Rename + fix 2026-09-10 11:03:58 +05:00

SISZL-Connect

Настольный клиент интеграции со подсистемой информирования СИСЗЛ ГИС ОМС (ФФОМС).

SISZL-Connect — клиент для страховых медицинских организаций. Сейчас реализовано информирование застрахованных лиц: загрузка задач из ГИС ОМС, локальный кэш в PostgreSQL и отправка результатов. В планах — модуль колл-центра. Остальные контуры пока не начаты.

Текущее состояние

Модуль информирования уже рабочий: есть WinUI-приложение, клиент API, авторизация через IAM ФФОМС, форматно-логический контроль, кэш задач и очередь исходящих результатов.

Область Состояние
Задачи на информирование (списки) Загрузка из API, просмотр, сохранение в informing.siszl_inform_task
Задача по ID Загрузка одной задачи из API
Планы ведения (ДН / ДВН) Загрузка и просмотр в UI; запись в БД ещё не подключена
Результаты информирования Очередь informing.siszl_inform_result_outbox, отправка по одной записи и пакетами (до 25)
ФЛК перед отправкой Локальная проверка кодов, комментария и обязательной реакции
Авторизация IAM ФФОМС (access / refresh), повтор при 401 и 429
Настройки Учётные данные API и PostgreSQL, SSL-сертификат, проверка соединений
Колл-центр Не реализован
Автоматический обмен по регламенту Политика сроков есть в коде, планировщик не запущен

Приложение рассчитано на СМО: оператор скачивает задания, работает с ними локально, затем выгружает результаты обратно в ГИС ОМС.

Что умеет приложение

Загрузка — получение данных из СИСЗЛ:

  • План — мероприятия планов ведения (GET /api/smo/v3/plan-tasks) за выбранный месяц и тип события (ДН / ДВН).
  • Списки — задачи на информирование (GET /api/smo/v3/inform-tasks) с пагинацией и прогрессом.
  • По ID — одна задача информирования.

Выгрузка — отправка результатов:

  • чтение очереди из PostgreSQL;
  • отправка строки или пакета;
  • учёт успеха / ошибки по каждой записи.

Настройки:

  • client id, секрет, логин и пароль ТУЗ;
  • проверка сертификата ФФОМС (PEM/CRT кладётся в папку SSL);
  • параметры PostgreSQL (хост IPv4, порт, имя БД, логин, пароль);
  • проверка соединения с API и с базой.

Секреты хранятся в %LocalAppData%\SiszlConnect\settings.json в защищённом виде (DPAPI). Логи пишутся в logs\дд.мм.гггг.txt рядом с исполняемым файлом.

Архитектура

SiszlConnect.App          WinUI 3, экраны, сессия, настройки
        │
        ├── SiszlConnect.Siszl     клиент СИСЗЛ: IAM, HTTP, домен, ФЛК, сервисы
        ├── SiszlConnect.Sql       PostgreSQL: кэш задач и outbox
        └── SiszlConnect.Logger    файловый лог в формате SMK

SiszlConnect.Siszl не знает про WinUI и Npgsql: хранилище подключено через ITaskRepository и IResultOutbox. Для нескольких филиалов можно создать несколько экземпляров Module с общим clientId и разными ТУЗ.

Клиент закрывает пять методов API (раздел 2 спецификации СИСЗЛ):

  1. GET plan-tasks
  2. GET inform-tasks
  3. GET inform-tasks/{id}
  4. POST inform-tasks/{id}/result
  5. POST inform-tasks/results (пакет)

Базовый URL по умолчанию: https://siszl.ffoms.gov.ru/siszl/api/integration-api/.
IAM: https://auth.ffoms.gov.ru/.

Состав решения

Проект Назначение
src/SiszlConnect.App WinUI 3, net8.0-windows10.0.19041.0, win-x64
src/SiszlConnect.Siszl Библиотека интеграции с СИСЗЛ
src/SiszlConnect.Sql Npgsql, схема informing
src/SiszlConnect.Logger Потокобезопасный файловый лог
tests/SiszlConnect.Siszl.Tests ФЛК, Приложение А, локализация ошибок, доступность хоста
tests/SiszlConnect.Sql.Tests Параметры и проверка соединения с PostgreSQL

Требования

  • Windows 10 версии 1809 или новее
  • .NET 8 SDK
  • Visual Studio 2022 / 2026 с рабочей нагрузкой Windows App SDK, либо сборка из командной строки
  • PostgreSQL с схемой informing (таблицы siszl_inform_task и siszl_inform_result_outbox)
  • Учётные данные СИСЗЛ (client id / secret и ТУЗ)
  • Сертификат ФФОМС, если включена проверка SSL

Сборка и запуск

dotnet build SiszlConnect.sln -c Debug
dotnet test SiszlConnect.sln

Портативная Release-сборка (self-contained win-x64 + zip):

.\publish-dist.cmd

Результат: dist\SISZL-Connect-win-x64\ и dist\SISZL-Connect-win-x64.zip. На другой машине достаточно распаковать архив и запустить SISZL-Connect.exe.

Куда движется проект

Сейчас в репозитории основной контур — информирование. Следующий крупный модуль — колл-центр: обзвон и фиксация контактов с застрахованными, с последующей отдачей результатов в уже готовую очередь СИСЗЛ.

Пока не сделано:

  • сам колл-центр;
  • сохранение планов ведения в PostgreSQL (informing.siszl_plan_task);
  • автоматический обмен по регламенту ТФОМС (с 9-го числа месяца M+1 до конца месяца);
  • фоновый сервис без UI.