...
- Сначала из списка всех незакрытых ЛПУ выбираются те, в которых у пациента есть карта.
- Для этих ЛПУ определяются их головные учреждения.
- Затем из списка всех ЛПУ берутся все подразделения этих головных учреждений
- Из полученного списка убираются все ЛПУ без расписания(Флаг HaveSchedule = false в методе Cписок ЛПУ или Получить информацию Получение информации о конкретной ЛПУ)
- Из полученного списка убираются все ЛПУ неактивные(Флаг IsActive = false в методе Cписок ЛПУ или Получить информацию Получение информации о конкретной ЛПУ). Берется из характеристики "Портал самозаписи: выводить на сайт самозаписи"
- Далее фильтруем полученные ЛПУ по полу и возрасту
- У взрослых отфильтруем детские (те, у которых есть только 1 категория обслуживания - Дети)
- У детей отфильтруем строго взрослые (категория обслуживания - Взрослые трудоспособного возраста / Пожилые и нет Дети / Все возрастные категории)
- Не показываем женские консультации мужчинам
- У взрослых отфильтруем детские (те, у которых есть только 1 категория обслуживания - Дети)
- Добавляем ЛПУ с участком (если такой есть), если вдруг ее отсеяли на предыдущих шагах.