- Создатель Неизвестный пользователь (a.s.voronin@rt-sk.ru), отредактировано янв 07, 2025

OLD GIT - https://git.gosuslugi.local/ervu/source/mz-xsd-storage/-/tree/master/mnsv-ervu-fns-registration

GIT (вынесено в отдельный репозиторий в рамках Невозможно найти сервер Jira для этого макроса. Причиной может быть конфигурация ссылки на приложение. ) - https://git.gosuslugi.local/ervu/source/mz-mnsv-ervu-fns-registration

## Описание

Сервис для работы с ВС "ЕРВУ_Передача сведений о запрете на постановку на учет в ФНС со специальным налоговым режимом и государственную регистрацию в качестве ИП" для ФОИВ ФНС(`urn://rostelekom.ru/ERVU-FNSRegistrationForbiddenTemporary/1.0.4`). Принимает JSON из процессов, преобразует в XML и направляет в кафку для передачи в сервис mz-adapter и последующей отправки в ФОИВ через СМЭВ.

Сервис вынесен в отдельный репозиторий с использованием библиотеки `mzServiceCore`

## Назначение

Сервис реализует передачу данных о введении или отмене временных мер, соответствующих ФОИВ ФНС:

- Запрет на государственную регистрацию физических лиц в качестве индивидуальных предпринимателей
- Запрет на постановку на учет в налоговом органе физического лица в качестве налогоплательщика, применяющего специальный налоговый режим "Налог на профессиональный доход"

JSON передаётся из процессов, преобразуется в XML сообщение по формату ВС https://lkuv.gosuslugi.ru/paip-portal/#/inquiries/card/a2802108-10e3-4bae-a47a-e4fee503e8fb

На текущий момент работает с версией ВС 1.0.4

## Схема взаимодействия с ФОИВ ФНС по части введения и отмены временных мер

## Примеры запроса

Инициатором сеанса выступает система ЕРВУ, передавая сообщение о введении или отмене временных мер через вид сведений `urn://rostelekom.ru/ERVU-FNSRegistrationForbiddenTemporary` (текущая версия 1.0.4). Сеанс работает в формате рассылка (Тип обмена - Целиковая маршрутизация рассылка), что подразумевает отсутствие ответа от получателя рассылки (ФОИВ ФНС). Проверить состояние сообщения можно только через функционал "Судьба сообщения СМЭВ3". Подтверждение от ФОИВ приходит по отдельному виду сведений, работающему по формату "запрос - ответ" (см. Описание сервиса подтверждения мер)

### Структура запроса

Поле в XML | Назначение поля | ФЛК | Кол-во вхождений | Комментарий
--- | --- | --- | --- | ---
Поле в XML | Назначение поля | ФЛК | Кол-во вхождений | Комментарий
Начало блока common - общая информация о гражданине
lastName | Передача фамилии гражданина | Строка | 1..1 |
firstName | Передача имени гражданина | Строка | 1..1 |
middleName | Передача отчества гражданина | Строка | 0..1 |
birthDate | Дата рождения гражданина | Дата в формате dd.mm.yyyy | 1..1 |
snils | Передача СНИЛС гражданина | Строка | 1..1 | СНИЛС передаётся без пробелов/дефисов
inn | Передача ИНН гражданина | 12 цифр | 0..1 |
idErn | Передача ИД ЕРН гражданина | 12 цифр | 1..1 |
Конец блока common - общая информация о гражданине
Начало блока passport - сведения о ДУЛ гражданина
series | Серия ДУЛ гражданина | 4 цифры | 1..1 |
number | Номер ДУЛ гражданина | 6 цифр | 1..1 |
issueDate | Дата выдачи ДУЛ гражданина | Дата в формате dd.mm.yyyy | 1..1 |
Конец блока passport - сведения о ДУЛ гражданина
Начало блока measuresTemporary - сведения о временной мере
measureId | Идентификатор временной меры | Строка | 1..1 |
status | Статус меры (действует/отменена) | boolean |  |
number | Номер решения о введении меры | Строка | 1..1 |
date | Дата решения о введении меры | Дата в формате dd.mm.yyyy | 1..1 |
militaryCommissariatName | Наименование организации, принявшей решение о введении меры | Строка | 0..1 |
militaryCommissariatAddress | Юридический адрес организации, принявшей решение о введении меры | Строка | 0..1 |
measureCode | Код временной меры | Справочник (список значений правее) | 1..1 |

- 1 (Запрет на выезд из Российской Федерации)
- 2 (Запрет на государственную регистрацию физических лиц в качестве индивидуальных предпринимателей)
- 3 (Запрет на постановку на учет в налоговом органе физического лица в качестве налогоплательщика, применяющего специальный налоговый режим "Налог на профессиональный доход")
- 4 (Приостановка на постановку недвижимого имущества на государственный кадастровый учет и (или) государственную регистрацию прав)
- 5 (Ограничение на пользование гражданином правом на управление транспортными средствами)
- 6 (Запрет на государственную регистрацию транспортных средств)
- 7 (Отказ в заключении кредитного договора, договора займа)

measureName | Тип временной меры | Строка | 1..1 |
Начало блока additionalInfo - дополнительная информация
name | Наименование атрибута | Строка | 1..1 |
value | Значение атрибута | Строка | 1..1 |
Конец блока additionalInfo - дополнительная информация
Начало блока attachmentDetails - сведения о вложениях
measuresTemporaryDoc | Решение о наложении временной меры | Блок | 1..N | Внутри блока лежит тег name - имя файла документа. Передаётся строкой
sig | Открепленная усиленная квалифицированная электронная подпись | Блок | 1..N | Внутри блока лежит тег name - имя файла документа. Передаётся строкой
Конец блока attachmentDetails - сведения о вложениях
Конец блока measuresTemporary - сведения о временной мере

Для введения и отмены мер со стороны ЕРВУ отправляется запрос через ВС [urn://rostelekom.ru/ERVU-FNSRegistrationForbiddenTemporary/1.0.4]

1. Для введения меры в XML запроса поле status (полный путь measuresTemporaryData.measuresTemporary.status) принимает значение true
2. Для отмены меры в XML запроса поле status (полный путь measuresTemporaryData.measuresTemporary.status) принимает значение false

### Множественность блока measuresTemporary

Блок measuresTemporary может входить в XML более 1 раза, т.к. у ФОИВ МВД есть 2 временные меры, уходящие пакетом в одном XML сообщении

Временная мера | ФОИВ
--- | ---
Временная мера | ФОИВ
Запрет на государственную регистрацию физических лиц в качестве индивидуальных предпринимателей | ФНС
Запрет на постановку на учет в налоговом органе физического лица в качестве налогоплательщика, применяющего специальный налоговый режим "Налог на профессиональный доход" | ФНС

### Пример сообщения рассылки в формате XML

request_example Развернуть исходный код
expand source?

1 2 3 4 5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
`<?``xml` `version``=``"1.0"` `encoding``=``"utf-8"``?>`
`<``measuresTemporaryData` `xmlns``=``"urn://rostelekom.ru/ERVU-FNSRegistrationForbiddenTemporary/1.0.4"``>`
`` `<``common``>`
`` `<``lastName``>Иванов</``lastName``>`
`` `<``firstName``>Сергей</``firstName``>`
`` `<``middleName``>Федорович</``middleName``>`
`` `<``birthDate``>12.01.2005</``birthDate``>`
`` `<``snils``>08301894460</``snils``>`
`` `<``inn``>123456789012</``inn``>`
`` `<``idERN``>456712331234</``idERN``>`
`` `</``common``>`
`` `<``passport``>`
`` `<``series``>4502</``series``>`
`` `<``number``>160381</``number``>`
`` `<``issueDate``>12.01.2019</``issueDate``>`
`` `</``passport``>`
`` `<``measuresTemporary``>`
`` `<``measureId``>11111111-1111-1111-1111-111111111112</``measureId``>`
`` `<``status``>true</``status``>`
`` `<``number``>124-2023</``number``>`
`` `<``date``>01.06.2023</``date``>`
`` `<``militaryCommissariatName``>Военный комиссариат Ивановского района</``militaryCommissariatName``>`
`` `<``militaryCommissariatAddress``>123456, Ивановская область, г.Иваново, ул. Ленина, д.21</``militaryCommissariatAddress``>`
`` `<``measureCode``>2</``measureCode``>`
`` `<``measureName``>Запрет на государственную регистрацию физических лиц в качестве индивидуальных предпринимателей</``measureName``>`
`` `<``attachmentDetails``>`
`` `<``measuresTemporaryDoc``>`
`` `<``name``>Решение</``name``>`
`` `</``measuresTemporaryDoc``>`
`` `<``sig``>`
`` `<``name``>Подпись</``name``>`
`` `</``sig``>`
`` `</``attachmentDetails``>`
`` `</``measuresTemporary``>`
`` `<``measuresTemporary``>`
`` `<``measureId``>11111111-1111-1111-1111-111111111113</``measureId``>`
`` `<``status``>true</``status``>`
`` `<``number``>124-2023</``number``>`
`` `<``date``>01.06.2023</``date``>`
`` `<``militaryCommissariatName``>Военный комиссариат Ивановского района</``militaryCommissariatName``>`
`` `<``militaryCommissariatAddress``>123456, Ивановская область, г.Иваново, ул. Ленина, д.21</``militaryCommissariatAddress``>`
`` `<``measureCode``>3</``measureCode``>`
`` `<``measureName``>Запрет на постановку на учет в налоговом органе физического лица в качестве налогоплательщика, применяющего специальный налоговый режим "Налог на профессиональный доход</``measureName``>`
`` `<``attachmentDetails``>`
`` `<``measuresTemporaryDoc``>`
`` `<``name``>Решение</``name``>`
`` `</``measuresTemporaryDoc``>`
`` `<``sig``>`
`` `<``name``>Подпись</``name``>`
`` `</``sig``>`
`` `</``attachmentDetails``>`
`` `</``measuresTemporary``>`
`</``measuresTemporaryData``>`

## Kafka

### Consumer

- mz.in.request
- mz.out.response
- smev.status.handler

### Producer

- pgs.proxy.endpoints.access.info
- mz.impl.info
- mz.impl.mock
- mz.scenario.info
- mz.out.request
- mz.in.response
- mz.in.json.response
- smev.status.handler

## S3

Сервис имеет доступ к корзине mz-attachment с правами READ, WRITE

## БД mz_ervu_restriction_info

В данной БД хранится информация о мерах, действующих и отменённых, по каждому из видов сведений (каждому ФОИВ)

Столбец | Дата тайп | NOT NULL | PK | Комментарий | Пример заполнения
--- | --- | --- | --- | --- | ---
Столбец | Дата тайп | NOT NULL | PK | Комментарий | Пример заполнения
id | UUID | + | + | Идентификатор записи | 7492ff5e-9f0e-4d02-8e6d-a02b9e41a024
request_id | UUID | + |  | Идентификатор запроса | 36aaa4f6-0995-43da-8162-1c87e6f9952b
class | varchar(500) |  |  | Класс вида сведений | MeasuresTemporaryData@`urn://rostelekom.ru/ERVU-FNSRegistrationForbiddenTemporary`/1.0.4
restriction_id | UUID | + |  | Идентификатор временной меры | 6ef19960-8bca-408d-a420-35b972871570
restriction_status | boolean |  |  | Статус временной меры | true
request_stamp | timestamp | + |  | Дата и время отправки запроса | 2024-07-12 21:52:26.562
received_smev_status | varchar(200) |  |  | Полученный статус от СМЭВ |

Сервис mz-mnsv-ervu-driving-registration-vehicle является владельцем данной таблицы (у него прописаны скрипты миграции на создание), однако пользуются этой таблицей все сервисы, отвечающие за временные меры

## Проверка XML на валидность

В сервисе реализована проверка XML согласно XSD-схеме вида сведений. Флаг, отвечающий за функционал, лежит в конфиге сервиса по пути extra_options.validator.xml.enabled с значением true

validator config Развернуть исходный код
expand source?

`extra_options:` `` `validator:` `` `xml:` `` `enabled:` `true`

В такой реализации некорректный JSON, поступающий из процессов и преобразованный в XML, проверяется внутри сервиса на валидность по схеме вида сведений. Схема расположена по пути /src/main/resources в папке с версией ВС

На текущий момент путь до XSD-схемы /src/main/resources/1_0_4/schema/schema.xsd

Если JSON некорректен, в логах сервиса будет ошибка

Фильтровать данные таблицы Создать сводную таблицу Создать диаграмму
Configure buttons visibility
Нравится Станьте первыми кому понравится это

- Нет меток
- Редактировать метки

Написать комментарий...

Добавить комментарий

Обзор
Инструменты контента
{"serverDuration": 105, "requestCorrelationId": "2dbefc38f329be6b"}
search
recentlyviewed
attachments
weblink
advanced
image-effects
image-attributes

- Абзац

- Жирный
- Курсив
- Подчеркнутый
- Cредство выбора цвета
  Дополнительные цвета
- Форматирование

- Маркированный список
- Нумерованный список

- Список задач

- Убрать отступ
- Сделать отступ

- Выровнить по левому краю
- Выровнить по центру
- Выровнить по правому краю

- Разметка страницы

- Ссылка

- Таблица

- Вставить

- Разметка страницы

- Отменить
- Восстановить

- Найти/Заменить

- Справка по быстрым ссылкам на клавиатуре

Подключение...