Для фильтрации можно использовать следующие атрибуты предиката (поле filter):
Значение
| Комментарий
| DATE
| дата (включая месяц и год)
| DAYOFWEEK
| день недели
| HOUR
| Час
| DAY
| день в году (1-366)
| MONTH
| Месяц
| YEAR
| Год
|
6.4.2Метод «Отправить запрос на бронирование или изменение деталей бронирования» (book) Если бронирование с таким book_id уже выполнялось, то производится изменение параметров бронирования.
Параметр esiaId позволяет осуществлять дополнительный контроль за тем что передаваемые bookId относятся к одному и тому же Заявителю. Переносить бронирование с одного Заявителя на другого нельзя.
Тип метода: реализуется в двух вариантах – синхронный и асинхронный (в смысле процесса) Запрос:
Параметр
| Тип
| Обязательность
| Комментарий
| bookId
| String
| Y
| Идентификатор запроса на бронирование
| slotId
| Array [String]
| Y
| Слоты времени, на которые запрашивается бронь. Если Slot_id имеет значение «blind_request», то отправляется «слепой» запрос на бронирования (без указания слотов времени).
| userType
| String
| Y
| Тип Заявителя:
Anonymous / Basic / Qualified
| esiaId
| String
| N
| ID Заявителя для зарегистрированных Заявителей
| password
| String
| N
| Пароль для незарегистрированного Заявителя. При изменении бронирования Заявитель должен предоставить тот же пароль
| lastName
| String
| N
| Фамилия
| firstName
| String
| N
| Имя
| middleName
| String
| N
| Отчество
| mobilePhone
| String
| Y
| Номер мобильного телефона заявителя
| email
| String
| N
| Электронный адрес заявителя
| userSnils
| String
| N
| СНИЛС Заявителя
| userLogin
| String
| N
| Логин Заявителя
| userDoc
| UserDocument
| N
| Документ Заявителя
| caseNumber
| String
| N
| Номер заявления на ЕПГУ
| preliminaryReservation
| Boolean
| Y
| Признак предварительного бронирования
| preliminaryReservationPeriod
| Integer
| N
| Время в минутах на которое производится предварительное бронирование
| attributes
| Array[Attribute]
| N
| Список атрибутов для будущих расширений, описанные парой name - наименование атрибута, value - значение атрибута
|
Ответ:
Параметр
| Тип
| Обязательность
| Комментарий
| bookId
| String
| Y
| Идентификатор запроса на бронирование по указанной госуслуге
| esiaId
| String
| N
| ID Заявителя для зарегистрированных Заявителей
| status
| Status
| Y
| Статус запроса
| timeSlot
| TimeSlot
| N
| Забронированный слот времени
|
Ответ в случае ошибки:
Параметр
| Тип
| Обязательность
| Комментарий
| error
| Error
| Y
| Сообщение об ошибке
|
Примечание:
Если Заявитель хочет выбрать любое ближайшее свободное время, то ЕПГУ может передать в качестве slotId значение «blind_request». При выполнении «слепого» запроса СМЭВ-сервис самостоятельно принимает решение о том, какой слот времени выдать Заявителю.
Рекомендуется передавать фамилию, имя и отчество заявителя в параметрах запроса для упрощения идентификации Заявителя в ОИВ.
В случае, если бронирование не завершилось успехом, в интерактивной форме происходит запрос ближайших к желаемому времени свободных слотов и их отображении Заявителю с предложением осуществить бронирование еще раз.
6.4.3Метод «Получить статус бронирования» (getBookingStatus) Метод, предназначенный для запроса статуса бронирования. Реализуется в СМЭВ-сервисе ОИВ.
Параметр esiaId позволяет осуществлять дополнительный контроль за тем что передаваемые bookId относятся к одному и тому же Заявителю. Переносить бронирование с одного Заявителя на другого нельзя. Тип метода: асинхронный (в смысле процесса) Запрос:
Параметр
| Тип
| Обязательность
| Комментарий
| bookId
| String
| Y
| Идентификатор запроса на бронирование
| esiaId
| String
| N
| ID Заявителя для зарегистрированных Заявителей
| password
| String
| N
| Пароль для незарегистрированного Заявителя. При изменении бронирования Заявитель должен предоставить тот же пароль
|
Ответ: в случае успеха:
Параметр
| Тип
| Обязательность
| Комментарий
| bookId
| String
| Y
| Идентификатор запроса на бронирование по указанной госуслуге
| esiaId
| String
| N
| ID Заявителя для зарегистрированных Заявителей
| status
| Status
| Y
| Статус запроса
| timeSlot
| TimeSlot
| N
| Забронированный слот времени
|
Ответ в случае ошибки:
Параметр
| Тип
| Обязательность
| Комментарий
| error
| Error
| Y
| Сообщение об ошибке
|
6.4.4Метод «Отменить запись» (cancelBooking)
Метод отменяет бронирование с заданным bookId.
Параметр esiaId позволяет осуществлять дополнительный контроль за тем что передаваемые bookId относятся к одному и тому же Заявителю. Переносить бронирование с одного Заявителя на другого нельзя. Тип метода: асинхронный (в смысле процесса) Запрос:
Параметр
| Тип
| Обязательность
| Комментарий
| bookId
| String
| Y
| Идентификатор запроса на бронирование
| esiaId
| String
| N
| ID Заявителя для зарегистрированных Заявителей
| password
| String
| N
| Пароль для незарегистрированного Заявителя. При изменении бронирования Заявитель должен предоставить тот же пароль
|
Ответ:
Параметр
| Тип
| Обязательность
| Комментарий
| bookId
| String
| Y
| Идентификатор запроса на бронирование
| esiaId
| String
| N
| ID Заявителя для зарегистрированных Заявителей
| error
| Error
| Y
| Сообщение об ошибке
|
6.4.5Метод «Получить список зарегистрированных в системе справочников» (getRefsList) Метод позволяет получать информацию о списке справочников, имеющихся в ОИВ. Используется для первоначального наполнения базы справочной информации ЕПГУ и отображения на этапе конфигурирования услуги.
Тип метода – синхронный. Запрос:
(нет параметров) Ответ:
Параметр
| Тип
| Обязательность
| Комментарий
| refsList
| Array [RefInfo]
| Y
| Массив структур описаний справочников
|
Ответ в случае ошибки:
Параметр
| Тип
| Обязательность
| Комментарий
| error
| Error
| Y
| Сообщение об ошибке
|
Структура RefInfo – информация о справочнике
Параметр
| Тип
| Обязательность
| Комментарий
| name
| String
| Y
| Мнемоника справочника
| title
| String
| Y
| Наименование справочника
| kind
| Enum
| Y
| P - плоский / H - иерархический
| 6.4.6Метод «Получить список атрибутов справочников» (getRefAttributesList) Метод позволяет получать информацию об атрибутах справочника. Используется для первоначального наполнения базы справочной информации ЕПГУ и отображения на этапе конфигурирования услуги.
Тип метода – синхронный. Запрос:
Параметр
| Тип
| Обязательность
| Комментарий
| refNames
| Array[String]
| Y
| Мнемоники справочников для которых запрашиваются атрибуты
|
Ответ:
Параметр
| Тип
| Обязательность
| Комментарий
| refAttributesList
| Array [RefAttributeInfo]
| Y
| Массив структур описаний аттрибутов
|
Ответ в случае ошибки:
Параметр
| Тип
| Обязательность
| Комментарий
| error
| Error
| Y
| Сообщение об ошибке
|
Структура RefAttributeInfo – информация об атрибуте
Параметр
| Тип
| Обязательность
| Комментарий
| refName
| String
| Y
| Мнемоника справочника
| name
| String
| Y
| Мнемоника атрибута
| title
| String
| Y
| Наименование атрибута
| type
| Enum
| Y
| STRING / LONG / DECIMAL / DATETIME / BOOLEAN
| attrRefName
| String
| N
| Мнемоника справочника (если атрибут - это ссылка)
| allowFiltering
| Boolean
| Y
| Признак "Можно фильтровать по атрибуту"
|
6.4.7Метод «Получить справочную информацию по группе объектов» (getRefItemsList) Метод позволяет получать информацию о данных справочника. Используется для первоначального наполнения базы справочной информации ЕПГУ, а также для последующей синхронизации.
Тип метода – синхронный. Запрос:
Параметр
| Тип
| Обязательность
| Комментарий
| refName
| String
| Y
| Мнемоника запрашиваемого справочника
| parentRefItemValue
| String
| N
| Код родительского элемента (для иерархических справочников)
| treeFiltering
| Enum
| N
| ONELEVEL / SUBTREE
| selectAttributes
| Array [String]
| N
| Список атрибутов, которые нужно возвращать
| filter
| Predicate
| N
| Предикат для фильтрации элементов справочника.
| orderBy
| Array [String]
| N
| Задает порядок сортировки элементов (указывается список атрибутов в порядке следования которых выполнять сортировку)
| pageNum
| Integer
| Y
| Номер необходимой страницы (0, чтобы получить все элементы)
| pageSize
| Integer
| Y
| Размер страницы (0, чтобы получить все элементы)
| version
| String
| N
| Если переданная в данном параметре версия ниже, чем актуальная на стороне сервера, то в ответе вернется перечень произошедших изменений в базе справочной информации.
|
Ответ:
Параметр
| Тип
| Обязательность
| Комментарий
| totalItems
| Integer
| Y
| Общее количество найденных элементов
| items
| Array [RefItem]
| N
| Список/Дерево запрошенных элементов
| version
| String
| N
| Текущая версия базы справочной информации.
|
Ответ в случае ошибки:
Параметр
| Тип
| Обязательность
| Комментарий
| error
| Error
| Y
| Сообщение об ошибке
|
В случае возникновения ошибки в ответе возвращается структура Error.
Примечание:
Ответ метода может кешироваться на стороне ЕПГУ.
Если поле Version запроса совпадает с текущей версией справочника на стороне СМЭВ-сервиса, возвращается код ошибки «Ваш справочник имеет актуальную версию».
Поле treeFiltering предназначено для управлением размера выдачи для иерархических справочников. Значение ONELEVEL выдает список значений только на текущем уровне дерева. Значение SUBTREE выдает список значений на текущем и нижестоящих уровнях дерева значений справочника.
Поле version может не указываться если ОИВ не поддерживает версионирование данных в справочнике. В этом случае кэширование данных на стороне ЕПГУ невозможно и ОИВ должен быть готов к синхронной нагрузке со стороны ЕПГУ.
6.4.8Описание общих структур данных, используемых в функциях
Структура Error – информация об ошибках:
Параметр
| Тип
| Обязательность
| Комментарий
| error
| Error
| Y
| Информация об ошибке
| fieldErrors
| Array [FieldError]
| N
| Ошибки в полях
|
Структура ErrorDetail – детальная информация об ошибке:
Параметр
| Тип
| Обязательность
| Комментарий
| errCode
| Integer
| Y
| Код ошибки
| errMessage
| String
| Y
| Описание ошибки
|
Возвращаемые коды ошибок:
Значение
| Комментарий
| 0
| ОК
| 1
| Внутренняя ошибка системы
| 2
| Ошибка во входных параметрах (подробности в поле FieldErrors)
| 3
| Справочник не найден
| 4
| Отказ в бронировании
|
Структура FieldError – информация об ошибке в поле:
Параметр
| Тип
| Обязательность
| Комментарий
| fieldName
| String
| Y
| Мнемоника поля
| error
| ErrorDetail
| Y
| Описание ошибки
|
Возвращаемые коды ошибок:
Значение
| Комментарий
| 1
| Недопустимое значение поля
| 2
| Значение не найдено в справочнике
|
Структура Predicate – фильтрация по атрибутам:
Параметр
| Тип
| Обязательность
| Комментарий
| simple
| SimplePredicate
| N
| Простой предикат - условие на атрибут
| union
| LogicalUnionPredicate
| N
| Сложный предикат - объединение нескольких предикатов через И / ИЛИ
|
Структура SimplePredicate – простой предикат - условие на атрибут:
Параметр
| Тип
| Обязательность
| Комментарий
| attributeName
| String
| Y
| Мнемоника атрибута
| condition
| Enum: Condition
| Y
| Условие сравнения
| checkAllValues
| Boolean
| Y
| Признак условия без значения
| value
| String
| N
| Значение атрибута
|
Enum Сondition – условие сравнения:
Значение
| Комментарий
| equals
| равно
| notEquals
| не равно
| greaterThan
| больше
| lessThan
| меньше
| greaterThanOrEquals
| больше или равно
| lessThanOrEquals
| меньше или равно
| contains
| содержит
| startsWith
| начинается подстрокой
| endsWith
| заканчивается подстрокой
| wordStarts
| содержит слово начинающееся подстрокой
|
Структура LogicalUnionPredicate – сложный предикат - объединение нескольких предикатов через И / ИЛИ:
Параметр
| Тип
| Обязательность
| Комментарий
| unionKind
| Enum
| Y
| AND / OR
| subs
| Array [Predicate]
| Y
| Объединяемые предикаты
|
Структура UserDocument
Параметр
| Тип
| Обязательность
| Комментарий
| docType
| Enum
| Y
| Тип документа: PASSPORT, MIL_TICKET
| docSeries
| String
| N
| Серия
| docNumber
| String
| Y
| Номер
| issueDate
| Date
| N
| Дата выдачи
| validDate
| Date
| N
| Действителен до
| issuedBy
| String
| N
| Кем выдан
| issueDept
| String
| N
| Код выдавшего подразделения
|
Структура RefItem
Параметр
| Тип
| Обязательность
| Комментарий
| itemName
| String
| Y
| Мнемоника элемента справочника
| parentItem
| String
| N
| Мнемоника родительского элемента
| title
| String
| Y
| Название элемента справочника
| children
| Array [RefItem]
| N
| Подчиненные элементы справочника
| attributes
| Array [RefAttribute]
| N
| Список значений дополнительных атрибутов элемента справочника
|
Структура RefAttribute
Параметр
| Тип
| Обязательность
| Комментарий
| name
| String
| Y
| Мнемоника элемента справочника
| value
| String
| Y
| Значение элемента справочника
|
6.4.9Таблица реализации в методах различных типов предварительной записи на приём Признак
| Значение
| Реализация в методах
| Авторизация (Кто)
| Предварительная регистрация (подтверждение номера мобильного телефона)
| ЕПГУ вызывает все методы работы с заявкой, предварительно удостоверившись в том, что Заявитель с данным типом авторизации (User_type) имеет на это права.
|
| Простая электронная подпись (взаимная проверка паспортных данных и СНИЛС)
| ЕПГУ вызывает все методы работы с заявкой, предварительно удостоверившись в том, что Заявитель с данным типом авторизации (User_type) имеет на это права.
|
| Квалифицированная электронная подпись
| ЕПГУ вызывает все методы работы с заявкой, предварительно удостоверившись в том, что Заявитель с данным типом авторизации (User_type ) имеет на это права.
| Комбинация с другими действиями Заявителя (Действие)
| Простая запись на приём
| |
| Запись на следующий шаг в рамках процедуры получения государственной услуги
| В методе getSlots для авторизованных Заявителей происходит проверка успешности завершения предыдущего шага процедуры получения госуслуги
При вызове метода book для Заявителя в Attributes должно передаваться значение кода подтверждения успешного завершения предыдущего шага процедуры получения госуслуги для подтверждения оснований регистрации на госуслугу
В метод getSlots в Attributes должно передаваться значение кода подтверждения успешного завершения предыдущего шага процедуры получения госуслуги, а так же номер Заявления, с учетом которого производится фильтрация организаций, в которых должен быть оказан следующий шаг процедуры, на которую и осуществляется запись (см. перечень всех кодов 5.3 Статусы заявления).
Код подтверждения завершения предыдущего шага процедуры получения госуслуги должен быть уникален, т.к. в рамках процедуры возможна неоднократная предварительная запись.
| Возможность свободного выбора территориального подразделения (Территория)
| Расписание для одного подразделения
| В методе getSlots выдаются таймслоты строго для одной записи типа organization.
|
| Возможность выбора подразделения
| В методе getSlots выдаются таймслоты для нескольких organization.
В методе getObjectList возвращается набор операторов (номеров окон), в которых можно получить выбранную услугу.
| Вариант предварительной записи (Что)
| Получение времени обращения
| Метод book возвращает временную метку (часы и минуты), указывающую на начало выделенного таймслота и его продолжительность
Метод book получает значение выбранных Заявителем временных интервалов (или одного интервала, в рамках которых он хочет попасть на прием
|
| Получение времени и персонального кода
| Для одного таймслота существует только один персональный код (даже в случае, когда заявителей на получение государственной услуги несколько)
|
| Запрос времени без возможности посмотреть расписание
| Метод book возвращает временную метку (часы и минуты), указывающую на начало выделенного таймслота
Метод getSlots для данного варианта предварительной записи вызвать невозможно
В метод book нельзя передавать слоты времени, на которые запрашивается бронь
| |