Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

« Предыдущий Версия 12 Следующий »

Отличается от Список ЛПУ. Поиск ЛПУ. Получение списка ЛПУ по фильтру тем что получает данные по ЛПУ из БД. Вычисляет статус по квотам и наличие критериев маршрутизации.

Запрос

Адрес запроса списка

GET: {url}/api/v2/lpu/short

Получение ЛПУ по гуиду

GET: {url}/api/v2/lpu/short/{lpuGuid}

Параметры запроса

ПараметрТипТип данныхОписаниеПо умолчаниюОбязательныйКомментарий
UseQuotaqueryboolВключение получения квотfalse-
UseRoutequeryboolВключение получения критериев маршрутизацииfalse-
ScheduleDateFromqueryDateTime в формате ГГГГ-ММ-ДДДата начала расписанияСегодня-Влияют только на расчет квот. Признак расписания считается по кэшу по датам по умолчанию
ScheduleDateToqueryDateTime в формате ГГГГ-ММ-ДДДата окончания расписанияСегодня + дней из настройки ScheduleDays-
FromDocPrvdGuidqueryGuidГуид направляющего ресурса(врача) 

+* если UseQuota или UseRoute = true

При отсутствии этого параметра не вычисляются QuotaStatus, IsHavingRoute, IsRouting. См. описание полей в теле. 
FromLpuMcodquerystringМкод подразделения направляющего ресурса(врача)
-Для Стенда особая логика. Если мкод входит в список подразделения стенда, то обращаемся к БД Стенда.
PRVSCodequerystringКод специальности направления (по которой консультирует принимающая МО)
+* если UseRoute = trueПри отсутствии этого параметра не вычисляются IsHavingRoute, IsRouting, RouteConsultationAttribute. См. описание полей в теле. 
MKBCodequerystringКод диагноза направления (по которому консультирует принимающая МО)
+* если UseRoute = trueПри отсутствии этого параметра не вычисляются IsHavingRoute, IsRouting, RouteConsultationAttribute. См. описание полей в теле. 
IsRoutingqueryboolФильтр по наличию критерия маршрутизации подходящего по запросу
-Игнорируется если не переданы необходимые параметры и критерии не вычисляются.
SearchquerystringСтрока поиска. Поиск производится по имени, адресу и мкод.
-
HaveSchedulequeryboolВозвращать только с расписаниемfalse-
PageSizequeryintРазмер страницы10-
PageNumberqueryintНомер страницы1-
ConnectionNamequerystringИмя подключения к БДcodiemk-Нужно для того чтобы иметь возможность запрашивать данные не только из ЦОД ИЭМК. Для Стенда

Ответ сервера

В случае успешного выполнения сервер вернет ответ в формате JSON со следующими данными:

  • Для списка ЛПУ - постраничный ответ с массивом
  • Для получения ЛПУ по гуиду - просто модель ЛПУ - LpuShort. В случае если по гуиду не была найдена ЛПУ - ошибка  404 с сообщением "Информация об ЛПУ не найдена".

Постраничный ответ

ПолеТип данныхОписаниеКомментарий
currentPageintТекущая страница
totalPageintВсего страниц по выборке
totalCountintВсего записей по выборке
pageSizeintРазмер страницы
itemsМассив LpuShortСписок ЛПУ

Модель ЛПУ - LpuShort

Список отсортирован по приоритетам:

  • Признак наличия расписания HaveSchedule = true. Выше ЛПУ у которых есть расписание.
  • Статус квоты QuotaStatus != VisitDenied и QuotaStatus != CountQuotaEmpty. Выше ЛПУ у которых не запрещающий статус квот. Сортировка применяется только если квоты вычисляются.
  • Наличия критерия маршрутизации подходящего по запросу IsRouting = true. Выше ЛПУ у которых есть подходящий критерий. Если критерия нет(IsRouting = false), то выше выводим ЛПУ без характеристики "Выписка направления только по критериям маршрутизации" (RouteConsultationAttribute=false). Сортировка применяется только если критерии вычисляются.
  • Имя ЛПУ в алфавитном порядке Name.
ПолеТип данныхОписаниеКомментарий
IdIdИдентификатор
Guidstring(Guid)Гуид ЛПУ
McodstringМКОД
NamestringИмя ЛПУ

oms_lpu.m_names

ЛПУ с пустыми значениями в имени скрыты.

FullNamestringПолное имя ЛПУ

oms_lpu.m_namef

Поиск параметром Search по этому полю не осуществляется. 

AddressstringАдресЕсли есть ссылка на kla_Address и kla_Address.AddressString не пуст, то берем строку адреса из него. Иначе из oms_lpu.adres
PhonestringТелефонХарактеристика 2dr_phone Портал самозаписи: Телефон из Характеристики 2dr
OGRNstringОГРН
HostIDintИдентификатор хостаЕсли у ЛПУ он не указан, то выводим значение из головной ЛПУ.
Parent.Guidstring(Guid)Гуид головной ЛПУЕсли ЛПУ сама является головной, то в Parent будет она же.
Parent.NamestringИмя головной ЛПУ
HaveScheduleboolПризнак наличия расписания

Учитывается только расписание:

  • в рамках запрошенного периода(dtt.Begin_Time >= @ScheduleDateFrom and dtt.Begin_Time <= @ScheduleDateTo)
  • не прошедшее(Begin_Time > getdate())
  • свободное(dtt.PlanUE > dtt.UsedUE)
  • приемного типа(TypeBusy = 1)
  • не вне расписания(IsOutSchedule = 0)
  • не сломанное, то есть ячейки имеющие положительный счетчик вместимости(UsedUE >= 0)
  • у активных ресурсов(dprvd.D_END > GETDATE())
  • с признаком вывода в расписание(dprvd.InTime = 1)
  • ресурсы относящиеся к отделениям этого подразделения
QuotaStatusstringСтатус квоты

Вычисляется только если передан FromDocPrvdGuid.

Возможные значения:

  • Empty - квоты отсутствуют. Запись разрешена.
  • Available - квоты есть, но по ним доступна запись. Запись разрешена.
  • VisitDenied - есть квоты с запретом записи. Запись не разрешена.
  • CountQuotaEmpty - есть истекшие квоты. Запись не разрешена.

Статус квот у ЛПУ складывается из статусов квот всех месяцев запрашиваемого периода.

Логика определения статуса квоты за месяц по порядку:
Если квот нет, то статус "Empty".
Если есть хотя бы одна запись с запретом, то статус "VisitDenied".
Если есть не истекшая квота, то статус "Available".
Если есть истекшая квота, то статус "CountQuotaEmpty".

Логика сложения статусов квот за месяц по порядку:
Если хотя бы у одного из месяцев статус "Empty", то для ЛПУ также статус "Empty".
Если хотя бы у одного из месяцев статус "Available", то для ЛПУ также статус "Available".
Если хотя бы у одного из месяцев статус "CountQuotaEmpty", то для ЛПУ также статус "CountQuotaEmpty".
Если у всех месяцев статус "VisitDenied", то для ЛПУ также статус "VisitDenied".

IsHavingRouteboolПризнак наличия критерия маршрутизации

Вычисляется только если переданы параметры FromDocPrvdGuid, PRVSCode, MKBCode.

Наличие критериев без привязки к МКБ и специальности.

Критерии отбираются по: 

  • ЮЛ подразделения stt_RouteCriteria.rf_LPUID
  • Статусу stt_RouteCriteria.IsActual = 1
  • Типу stt_RCType.Code = '2'
IsRoutingboolПризнак наличия критерия маршрутизации подходящего по запросу

Вычисляется только если переданы параметры FromDocPrvdGuid, PRVSCode, MKBCode.

Наличие критерия по МКБ и специальности консультирующей ЛПУ, и по ЮЛ и специальности направляющего врача.

Критерии отбираются по: 

  • всему перечисленному в IsHavingRoute
  • ЮЛ направляющего врача через stt_RouteLpu
  • Специальности направляющего врача через stt_RCSentPRVS
  • Специальности направления из PRVSCode через stt_RCHostPRVS
  • Диагноза направления из MKBCode через stt_RouteMKBToCriteria
RouteConsultationAttributeboolПризнак наличия характеристики  "Выписка направления только по критериям маршрутизации" 

Вычисляется только если переданы параметры FromDocPrvdGuid, PRVSCode, MKBCode.

AattributeМассив stringБулевые характеристики ЛПУ

Фильтра по ним не предусмотрено

Возможные ошибки

Код ответа сервераКод сообщенияСообщениеТип ошибки

В случае возникновения ошибок будет возвращен стандартный ответ сервера.

  • Нет меток