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

## Сервис обработки заявлений ЕПГУ

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

    Сервис реализует прием заявлений с ЕПГУ и унифицированное их преобразование в params JSON и XML форматы.

### Описание

    Сервис реализован с помощью библиотеки mz-library с возможностью обработки множества типов входящих и исходящих запросов.
    Может конфигурироваться статически через заполнение секции mz.services в application.yaml. Также поддерживается хранение конфигураций в БД Postgres.
    Это полезно, когда перечень услуг меняется динамически. В этом случае, сервис получает информацию об изменениях из топиков кафки и актуализирует состояние БД.

### Основные функции

    * Прием зарегистрированных типов заявлений
    * Тестирование отправки и обработки заявлений
    * Обработка и пересылка ответов по заявлениям

Сервис имеет доступ к следующим источникам данных:

- база данных Postgres
- брокер сообщений kafka

Сервис взаимодействует с таблицами БД: attachment, petition, request

Сервис слушает топики:

- mz.petition.out.response
- mz.petition.in.request
- mz.petition.created
- service.registry.service.saved
- mz.petition.updated
- mz.petition.deleted

Пример сообщения из топика mz.petition.out.response:

?

`{` `` `"cancelAllowed": false,` `` `"orderId": {` `` `"pguId": 29102107576004` `` `},`
`` `"namespaceURI": "urn://rostelekom.ru/NotificationCompliance/1.0.4",`
`` `"statusCode": {`
`` `"techCode": "6"`
`` `}`
`}`

Пример сообщения из топика mz.petition.in.request:

?

`<``tns:request` `oktmo``=``"MNSV75_3T"` `xmlns``=``"urn://x-artefacts-smev-gov-ru/services/message-exchange/types/1.1"` `xmlns:SOAP-ENV``=``"http://schemas.xmlsoap.org/soap/envelope/"` `xmlns:ns2``=``"urn://x-artefacts-smev-gov-ru/services/message-exchange/types/basic/1.1"` `xmlns:ns3``=``"urn://x-artefacts-smev-gov-ru/services/message-exchange/types/faults/1.1"` `xmlns:soap``=``"http://schemas.xmlsoap.org/soap/envelope/"` `xmlns:soapenv``=``"http://schemas.xmlsoap.org/soap/envelope/"` `xmlns:tns``=``"urn://rostelekom.ru/SmallNations/1.0.1"` `xmlns:xml``=``"http://www.w3.org/XML/1998/namespace"``>`
`` `<``tns:Service``>`
`` `<``tns:currentDate``>25.10.2023</``tns:currentDate``>`
`` `<``tns:userType``>PERSON_RF</``tns:userType``>`
`` `<``tns:orderId``>3500016961</``tns:orderId``>`
`` `<``tns:orderStatusCode``>draft</``tns:orderStatusCode``>`
`` `<``tns:TargetId``>-10000000278</``tns:TargetId``>`
`` `<``tns:TargetName``>Учет лиц, относящихся к коренным малочисленным народам Российской Федерации</``tns:TargetName``>`
`` `<``tns:DepartmentId``>-10003772917</``tns:DepartmentId``>`
`` `<``tns:DepartmentName``>Уполномоченный орган субъекта Российской Федерации</``tns:DepartmentName``>`
`` `<``tns:okato``>40000000000</``tns:okato``>`
`` `</``tns:Service``>`
`` `<``tns:Goal``>1</``tns:Goal``>`
`` `<``tns:VariantChoice``>`
`` `<``tns:KP_OA_04``>2</``tns:KP_OA_04``>`
`` `<``tns:KP_OA_03``>1</``tns:KP_OA_03``>`
`` `<``tns:KP_OA_05``>1</``tns:KP_OA_05``>`
`` `<``tns:KP_OA_06``>1</``tns:KP_OA_06``>`
`` `<``tns:AddFamilyMember``>true</``tns:AddFamilyMember``>`
`` `<``tns:KP_OA_07``>1</``tns:KP_OA_07``>`
`` `<``tns:KP_OA_08``>1</``tns:KP_OA_08``>`
`` `<``tns:TraditionalActivityType``>`
`` `<``tns:IsAnimalHusbandry``>true</``tns:IsAnimalHusbandry``>`
`` `<``tns:IsProcessingLivestockProducts``>false</``tns:IsProcessingLivestockProducts``>`
`` `<``tns:IsDogBreeding``>false</``tns:IsDogBreeding``>`
`` `<``tns:IsAnimalBreeding``>false</``tns:IsAnimalBreeding``>`
`` `<``tns:IsBeekeeping``>false</``tns:IsBeekeeping``>`
`` `<``tns:IsFishing``>false</``tns:IsFishing``>`
`` `<``tns:IsCommercialHunting``>false</``tns:IsCommercialHunting``>`
`` `<``tns:IsAgriculture``>false</``tns:IsAgriculture``>`
`` `<``tns:IsWoodHarvesting``>false</``tns:IsWoodHarvesting``>`
`` `<``tns:IsGathering``>false</``tns:IsGathering``>`
`` `<``tns:IsMining``>false</``tns:IsMining``>`
`` `<``tns:IsCrafts``>true</``tns:IsCrafts``>`
`` `<``tns:IsBuilding``>false</``tns:IsBuilding``>`
`` `</``tns:TraditionalActivityType``>`
`` `</``tns:VariantChoice``>`
`` `<``tns:DelegateInfo``>1</``tns:DelegateInfo``>`
`` `<``tns:RecipientPersonalData``>`
`` `<``tns:fullfio``>Тамаркина Ирина Никаноровна</``tns:fullfio``>`
`` `<``tns:lastname``>Тамаркина</``tns:lastname``>`
`` `<``tns:firstname``>Ирина</``tns:firstname``>`
`` `<``tns:middlename``>Никаноровна</``tns:middlename``>`
`` `<``tns:snils``>300-499-727 63</``tns:snils``>`
`` `<``tns:gender``>2</``tns:gender``>`
`` `<``tns:dateBirth``>07.05.1969</``tns:dateBirth``>`
`` `<``tns:citizenship``>Уфа</``tns:citizenship``>`
`` `<``tns:Phone``>+7(998)8700949</``tns:Phone``>`
`` `<``tns:Email``>zmFbSJfO@ya.ru</``tns:Email``>`
`` `<``tns:regAddress``>307055, обл. Курская, р-н. Медвенский, д. Амосовка, д. 20</``tns:regAddress``>`
`` `<``tns:DocumentPersonal``>`
`` `<``tns:typeDoc``>Паспорт гражданина РФ</``tns:typeDoc``>`
`` `<``tns:nameDoc``>Паспорт гражданина РФ</``tns:nameDoc``>`
`` `<``tns:docseries``>2845</``tns:docseries``>`
`` `<``tns:docnumber``>854320</``tns:docnumber``>`
`` `<``tns:issuedate``>27.10.2017</``tns:issuedate``>`
`` `<``tns:issueorg``>Отделом внутренних дел Ленинского р-на гор. Астрахань</``tns:issueorg``>`
`` `<``tns:issueidPassportRF``>123112</``tns:issueidPassportRF``>`
`` `</``tns:DocumentPersonal``>`
`` `</``tns:RecipientPersonalData``>`
`` `<``tns:CompetentOrganization``>`
`` `<``tns:OrganizationID``>1157746452280</``tns:OrganizationID``>`
`` `<``tns:Name``>ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ДЕЛАМ НАЦИОНАЛЬНОСТЕЙ</``tns:Name``>`
`` `</``tns:CompetentOrganization``>`
`` `<``tns:Block_NationalityName``>`
`` `<``tns:NationalityName``>Абазины</``tns:NationalityName``>`
`` `</``tns:Block_NationalityName``>`
`` `<``tns:Block_FamilyDataBlock``>`
`` `<``tns:FamilyDataBlock``>`
`` `<``tns:RelationDegree``>Сын</``tns:RelationDegree``>`
`` `<``tns:LastName1``>Ывпам</``tns:LastName1``>`
`` `<``tns:Firstname1``>Фуцыам</``tns:Firstname1``>`
`` `<``tns:Middlename1``>Фцуа</``tns:Middlename1``>`
`` `<``tns:DateBirth``>07.10.2023</``tns:DateBirth``>`
`` `<``tns:PlaceBirth``>Цфысяыв</``tns:PlaceBirth``>`
`` `<``tns:gender``>1</``tns:gender``>`
`` `<``tns:NationalityName``>Абазины</``tns:NationalityName``>`
`` `<``tns:DocumentPersonal1``>Свидетельство о рождении</``tns:DocumentPersonal1``>`
`` `<``tns:Number_BirthCertificate``>123</``tns:Number_BirthCertificate``>`
`` `<``tns:Date_BirthCertificate``>12.10.2023</``tns:Date_BirthCertificate``>`
`` `<``tns:Issuer_BirthCertificate``>Выамчваи</``tns:Issuer_BirthCertificate``>`
`` `<``tns:snills1``>164-633-860 83</``tns:snills1``>`
`` `</``tns:FamilyDataBlock``>`
`` `</``tns:Block_FamilyDataBlock``>`
`` `<``tns:Block_OrgName``>`
`` `<``tns:OrganizationName``>Ыуквапи</``tns:OrganizationName``>`
`` `<``tns:OrganizationINN``>2624188808</``tns:OrganizationINN``>`
`` `<``tns:OrganizationOGRN``>5026867947640</``tns:OrganizationOGRN``>`
`` `</``tns:Block_OrgName``>`
`` `<``tns:MethodGettingResults``>`
`` `<``tns:IsPaperDocumentRequired``>false</``tns:IsPaperDocumentRequired``>`
`` `</``tns:MethodGettingResults``>`
`` `<``tns:Documents``>`
`` `<``tns:NationalityInfoDocumentsBlock``>`
`` `<``tns:CodeDocument``>NationalityInfo</``tns:CodeDocument``>`
`` `<``tns:Name``>testpdf.pdf</``tns:Name``>`
`` `<``tns:URL``>f_NationalityInfo.FileUploadComponent.NationalityInfo.3500016961</``tns:URL``>`
`` `<``tns:type``>application/pdf</``tns:type``>`
`` `</``tns:NationalityInfoDocumentsBlock``>`
`` `</``tns:Documents``>`
`</``tns:request``>`

Пример сообщения из топика service.registry.service.saved:

?

`{` `` `"success": true,` `` `"message": "Success",` `` `"data": [` `` `{`
`` `"id": "79133485-fad0-4c20-8085-f8d8115ef125",`
`` `"modified": 1698749962,`
`` `"schema": "Service",`
`` `"fullName": "Верификация списков граждан, пострадавших в чрезвычайных ситуациях",`
`` `"shortName": "Верификация списков граждан, пострадавших в чрезвычайных ситуациях",`
`` `"name": "MassMchsVerificationImport",`
`` `"targetId": "-10000000564",`
`` `"kcrImport": false,`
`` `"epguImport": false,`
`` `"state": "inProgress",`
`` `"modificationVersion": 343,`
`` `"version": "1.343",`
`` `"includeReception": true,`
`` `"goalsList": [`
`` `{`
`` `"label": "Проверка обоснованности выделяемого объёма средств на выплату пострадавшим гражданам",`
`` `"value": "1"`
`` `}`
`` `],`
`` `"petitionType": "request@urn://rostelekom.ru/MassMchsVerificationImport",`
`` `"epguFromTag": "request@urn://rostelekom.ru/MassMchsVerificationImport",`
`` `"epguToTag": "MassMchsVerificationImport@MassMchsVerificationImport",`
`` `"checkListIsMandatory": false,`
`` `"updatePermission": [`
`` `"d3372d2b-8802-48ea-835b-cc3bb8e23b93",`
`` `"efe958b8-ed69-41a1-8f79-5ebe21f18df9",`
`` `"83582a39-cda8-446a-b019-abd957c20ce4",`
`` `"f5993cde-36ee-4e7f-ac4e-2710b6a792c6",`
`` `"a593dbaa-f62e-4b59-bf48-00c242d21fed",`
`` `"09640bdc-2efb-4aca-8b5e-a81b21bd7c4b"`
`` `],`
`` `"preorder": false,`
`` `"rgyApplied": false,`
`` `"multiAuthority": false,`
`` `"credentialTransferred": false,`
`` `"_links.changeLogs": "008d688e-9953-4a05-82f8-bc1a32aa3c06",`
`` `"_links.dictionaries": [`
`` `"emergencyListName",`
`` `"upload_decision_type"`
`` `],`
`` `"_links.form": "fa0d8051-e942-4813-a7e7-fd39bf77393e",`
`` `"_links.documents": [`
`` `"d228aa74-4d5b-419f-84bf-c1429759fa6f",`
`` `"9cd88792-ff12-4ee6-8cd2-f141ce8ec77f",`
`` `"e0f23251-3130-4279-b25e-2e2a0aa3f6de",`
`` `"5646231b-aa87-4727-8f8b-8f633d786b7d",`
`` `"aafdfeba-3a33-4d81-951a-6a5e57c2b369"`
`` `],`
`` `"_links.processes": [`
`` `"96fce033-4bf0-4f1b-ac20-cd200dca2f4e"`
`` `],`
`` `"_links.formsExtra": [`
`` `"275340fe-15cb-4065-a9fd-44393ceb87b4",`
`` `"dbdea599-aab9-4fa6-802c-51253257c9a2"`
`` `],`
`` `"numberPrefix": "МЧСВ",`
`` `"useBaseImport": false,`
`` `"changeLogs": "008d688e-9953-4a05-82f8-bc1a32aa3c06",`
`` `"_hasSavedLinks": true,`
`` `"settingsId": "f0294286-516b-4b67-8bd0-12893e4c57bf",`
`` `"hasSDD": false`
`` `}`
`` `],`
`` `"origin": "http",`
`` `"documentIds": [`
`` `"79133485-fad0-4c20-8085-f8d8115ef125"`
`` `],`
`` `"modified": 1698749962`
`}`

Сервис постит сообщения в топики:

- mz.petition.in.response
- mz.petition.out.request
- mz.petition.out.json.request

Пример сообщения из топика mz.petition.in.response:

?

`<``tns:FormResponse` `xmlns:tns``=``"urn://rostelekom.ru/LargeChildrenZY/1.0.4"``><``tns:changeOrderInfo``><``tns:orderId``><``tns:pguId``>3500042423</``tns:pguId``></``tns:orderId``><``tns:statusCode``><``tns:techCode``>1</``tns:techCode``></``tns:statusCode``><``tns:cancelAllowed``>false</``tns:cancelAllowed``></``tns:changeOrderInfo``></``tns:FormResponse``>`

Пример сообщения из топика mz.petition.out.request:

?

`<``params``>` `` `<``namespaceURI``>urn://rostelekom.ru/LargeChildrenZY/1.0.4</``namespaceURI``>` `` `<``concentratorServiceType``>LargeChildrenZY</``concentratorServiceType``>` `` `<``concentratorServiceTypeVersion``>1.0.4</``concentratorServiceTypeVersion``>`
`` `<``oktmo``>MNSV75_3T</``oktmo``>`
`` `<``Service``>`
`` `<``currentDate``>30.10.2023</``currentDate``>`
`` `<``userType``>PERSON_RF</``userType``>`
`` `<``orderId``>3500042423</``orderId``>`
`` `<``orderStatusCode``>draft</``orderStatusCode``>`
`` `<``TargetId``>-10000000217</``TargetId``>`
`` `<``TargetName``>Постановка граждан на учет в качестве лиц, имеющих право на предоставление земельных участков в собственность бесплатно</``TargetName``>`
`` `<``DepartmentId``>-10003772917</``DepartmentId``>`
`` `<``DepartmentName``>Уполномоченный орган субъекта Российской Федерации</``DepartmentName``>`
`` `<``okato``>14000000000</``okato``>`
`` `</``Service``>`
`` `<``Goal``>1</``Goal``>`
`` `<``VariantChoice``/>`
`` `<``DelegateInfo``>1</``DelegateInfo``>`
`` `<``RecipientPersonalData``>`
`` `<``fullfio``>Иванов Иван Иванович</``fullfio``>`
`` `<``lastname``>Иванов</``lastname``>`
`` `<``firstname``>Иван</``firstname``>`
`` `<``middlename``>Иванович</``middlename``>`
`` `<``snils``>000-000-600 22</``snils``>`
`` `<``gender``>1</``gender``>`
`` `<``dateBirth``>05.11.1952</``dateBirth``>`
`` `<``citizenship``>РОССИЯ</``citizenship``>`
`` `<``Phone``>+7(998)1119213</``Phone``>`
`` `<``Email``>JdTovRwf@ya.ru</``Email``>`
`` `<``regAddress``>309372, обл. Белгородская, р-н. Грайворонский, г-к. Белгород-22, ул. Ленина</``regAddress``>`
`` `<``DocumentPersonal``>`
`` `<``typeDoc``>Паспорт гражданина РФ</``typeDoc``>`
`` `<``nameDoc``>Паспорт гражданина РФ</``nameDoc``>`
`` `<``docseries``>1234</``docseries``>`
`` `<``docnumber``>567899</``docnumber``>`
`` `<``issuedate``>01.07.2023</``issuedate``>`
`` `<``issueorg``>Оленегорским ГОВД Мурманской области</``issueorg``>`
`` `<``issueidPassportRF``>512-011</``issueidPassportRF``>`
`` `</``DocumentPersonal``>`
`` `</``RecipientPersonalData``>`
`` `<``CompetentOrganization``>`
`` `<``OrganizationID``>1033107000728</``OrganizationID``>`
`` `<``Name``>Администрация городского округа город Белгород (управление административной технической инспекции)</``Name``>`
`` `</``CompetentOrganization``>`
`` `<``InformationAboutSpouse``/>`
`` `<``InformationAboutChildren``/>`
`` `<``RecipientCategory``>`
`` `<``OtherCategory``>true</``OtherCategory``>`
`` `<``OtherCategoryTextInput``>впвп</``OtherCategoryTextInput``>`
`` `</``RecipientCategory``>`
`` `<``MethodGettingResults``>`
`` `<``IsPaperDocumentRequired``>false</``IsPaperDocumentRequired``>`
`` `</``MethodGettingResults``>`
`` `<``Documents``>`
`` `<``CategoryAuthorityDocument``>`
`` `<``CodeDocument``>CategoryAuthorityDocument</``CodeDocument``>`
`` `<``Name``>19.pdf</``Name``>`
`` `<``URL``>f_CategoryAuthorityDocument.FileUploadComponent.CategoryAuthorityDocument.3500042423</``URL``>`
`` `<``type``>application/pdf</``type``>`
`` `</``CategoryAuthorityDocument``>`
`` `</``Documents``>`
`</``params``>`

Пример сообщения из топика mz.petition.out.json.request:

?

`{` `` `"concentratorServiceType": "NotificationCompliance",` `` `"Service": {` `` `"orderId": 30100520224191,` `` `"orderStatusCode": "draft",`
`` `"currentDate": "01.02.2022",`
`` `"DepartmentName": "Уполномоченный орган субъекта Российской Федерации",`
`` `"userType": "PERSON_RF",`
`` `"DepartmentId": -10003772917,`
`` `"TargetName": "Уведомление о планируемом строительстве или об изменении планируемых параметров объекта индивидуального жилищного строительства",`
`` `"TargetId": -10000115325,`
`` `"okato": 14401000000`
`` `},`
`` `"VariantChoice": {`
`` `"KP_OA_09": 1,`
`` `"KP_OA_07": 2,`
`` `"KP_OA_06": 2,`
`` `"KP_OA_05": 1,`
`` `"KP_OA_04": 1,`
`` `"KP_OA_10": 1`
`` `},`
`` `"LimitParameters": {`
`` `"Number": 23452,`
`` `"Issuer": "Уполномоченный орган",`
`` `"Date": "13.01.2022"`
`` `},`
`` `"DelegateInfo": 1,`
`` `"RecipientPersonalData": {`
`` `"firstname": "Иван",`
`` `"Email": "akurbanov@it-one.ru",`
`` `"gender": 1,`
`` `"Phone": "+7(916)3119400",`
`` `"citizenship": "РОССИЯ",`
`` `"DocumentPersonal": {`
`` `"issueidPassportRF": 889898,`
`` `"docseries": "0898",`
`` `"typeDoc": "Паспорт гражданина РФ",`
`` `"issuedate": "05.08.2016",`
`` `"docnumber": 667667,`
`` `"issueorg": "Отделом УФМС России по г. Ярославль",`
`` `"nameDoc": "Паспорт гражданина РФ"`
`` `},`
`` `"middlename": "Иванович",`
`` `"fullfio": "Иванов Иван Иванович",`
`` `"dateBirth": "13.11.1960",`
`` `"snils": "000-000-600 22",`
`` `"regAddress": "150003, обл. Ярославская, г. Ярославль, пр-кт. Октября, д. 10, кв. 3",`
`` `"lastname": "Иванов"`
`` `},`
`` `"Goal": 1,`
`` `"oktmo": "MNSV75_3T",`
`` `"Documents": {`
`` `"SchematicRepresentationConstruction": {`
`` `"CodeDocument": "SchematicRepresentationConstruction",`
`` `"type": "application/vnd.openxmlformats-officedocument.wordprocessingml.document",`
`` `"URL": "f4_SchematicRepresentationConstruction.FileUploadComponent.SchematicRepresentationConstruction.0",`
`` `"Name": "Заявление СУБ.docx"`
`` `}`
`` `},`
`` `"namespaceURI": "urn://rostelekom.ru/NotificationCompliance/1.0.2",`
`` `"concentratorServiceTypeVersion": "1.0.2",`
`` `"Object": {`
`` `"Floor": 1,`
`` `"UseTypeRadio": 1,`
`` `"Area": 100,`
`` `"Front": "от фасада - 6 метров, слева - 3 метра, сзади – 10 метров; справа – 8 метров",`
`` `"IsUndividedObjectConfirmed": true,`
`` `"Height": 11`
`` `},`
`` `"CompetentOrganization": {`
`` `"OrganizationID": 5623986796545,`
`` `"Name": "Корневая организация автотестирования"`
`` `},`
`` `"MethodGettingResults": {`
`` `"IsPaperDocumentRequired": false`
`` `},`
`` `"LandPlot": {`
`` `"FIASLandPlot": "309518, обл. Белгородская, г. Старый Оскол, мкр. Звездный, д. 13, кв. 54",`
`` `"FIASLandPlot.fias_full_code": "974a526b-7dd1-40c3-959a-032c4f2742a4",`
`` `"IsDescriptionLocationRequired": false,`
`` `"LandPlotUseType": "Для индивидуального жилищного строительства",`
`` `"LandPlotCadastralNumber": "56:34:5667456:345234456",`
`` `"LandPlotTitleDocBlock": {`
`` `"Number": 67454,`
`` `"Date": "01.02.2022",`
`` `"DocumentName": "Документ"`
`` `}`
`` `}`
`}`

Сервис по REST обращается к сервису mz-mock-adapter: POST /petition

Нравится Станьте первыми кому понравится это

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

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

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

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

- Абзац

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

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

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

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

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

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

- Ссылка

- Таблица

- Вставить

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

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

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

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

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