UpdateUserWorkingAreas v2: различия между версиями

Материал из Справочная система Россельхознадзора
Перейти к навигации Перейти к поиску
Строка 668: Строка 668:
<div class = "mw-collapsible-content">
<div class = "mw-collapsible-content">
<syntaxhighlight lang="xml">
<syntaxhighlight lang="xml">
 
<SOAP-ENV:Envelope xmlns:bs="http://api.vetrf.ru/schema/cdm/base"
xmlns:merc="http://api.vetrf.ru/schema/cdm/mercury/g2b/applications/v2"
xmlns:apldef="http://api.vetrf.ru/schema/cdm/application/ws-definitions"
xmlns:apl="http://api.vetrf.ru/schema/cdm/application"
xmlns:vd="http://api.vetrf.ru/schema/cdm/mercury/vet-document/v2"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
  <SOAP-ENV:Header/>
  <SOAP-ENV:Body>
    <apldef:submitApplicationRequest>
      <apldef:apiKey>apikey</apldef:apiKey>
      <apl:application>
        <apl:serviceId>mercury-g2b.service:2.0</apl:serviceId>
        <apl:issuerId>Id</apl:issuerId>
        <apl:issueDate>2017-11-08T10:32:08</apl:issueDate>
        <apl:data>
          <merc:updateUserWorkingAreasRequest>
            <merc:localTransactionId>a10003</merc:localTransactionId>
            <merc:initiator>
              <vd:login>login</vd:login>
            </merc:initiator>
            <vd:user>
              <vd:login>ivanov_ii_171108</vd:login>
              <vd:workingAreaList>
                <vd:workingArea>
                  <vd:enterprise>
                    <bs:guid>8f4a7faa-df83-400e-9868-df02324ad985</bs:guid>
                  </vd:enterprise>
                </vd:workingArea>
<vd:workingArea>
                  <vd:enterprise>
                    <bs:guid>01c5c8be-08d5-405d-a7fa-9da5960f560c</bs:guid>
                  </vd:enterprise>
                </vd:workingArea>
              </vd:workingAreaList>
            </vd:user>
          </merc:updateUserWorkingAreasRequest>
        </apl:data>
      </apl:application>
    </apldef:submitApplicationRequest>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>
</syntaxhighlight>
</syntaxhighlight>
</div>
</div>
Строка 678: Строка 718:
<div class = "mw-collapsible-content">
<div class = "mw-collapsible-content">
<syntaxhighlight lang="xml">
<syntaxhighlight lang="xml">
 
<env:Envelope xmlns:bs="http://api.vetrf.ru/schema/cdm/base"
xmlns:merc="http://api.vetrf.ru/schema/cdm/mercury/g2b/applications/v2"
xmlns:apldef="http://api.vetrf.ru/schema/cdm/application/ws-definitions"
xmlns:apl="http://api.vetrf.ru/schema/cdm/application"
xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:vd="http://api.vetrf.ru/schema/cdm/mercury/vet-document/v2">
  <env:Header/>
  <env:Body>
    <apldef:receiveApplicationResultResponse>
      <apl:application>
        <apl:applicationId>ecd5b39a-7bbf-41c5-adfe-a92259b72584</apl:applicationId>
        <apl:status>COMPLETED</apl:status>
        <apl:serviceId>mercury-g2b.service</apl:serviceId>
        <apl:issuerId>Id</apl:issuerId>
        <apl:issueDate>2017-11-08T10:32:08.000+03:00</apl:issueDate>
        <apl:rcvDate>2017-11-08T10:32:07.000+03:00</apl:rcvDate>
        <apl:prdcRsltDate>2017-11-08T10:32:08.000+03:00</apl:prdcRsltDate>
        <apl:result>
          <merc:updateUserWorkingAreasResponse>
            <vd:user>
              <vd:login>ivanov_ii_171108</vd:login>
              <vd:workingAreaList>
                <vd:workingArea>
                  <vd:enterprise>
                    <bs:guid>8f4a7faa-df83-400e-9868-df02324ad985</bs:guid>
                  </vd:enterprise>
                </vd:workingArea>
<vd:workingArea>
                  <vd:enterprise>
                    <bs:guid>01c5c8be-08d5-405d-a7fa-9da5960f560c</bs:guid>
                  </vd:enterprise>
                </vd:workingArea>
              </vd:workingAreaList>
            </vd:user>
          </merc:updateUserWorkingAreasResponse>
        </apl:result>
      </apl:application>
    </apldef:receiveApplicationResultResponse>
  </env:Body>
</env:Envelope>
</syntaxhighlight>
</syntaxhighlight>
</div>
</div>

Версия 13:43, 9 ноября 2017

Общие сведения

Операция UpdateUserWorkingAreas предназначена для назначения зон ответственности пользователям в системе Меркурий.

Зона ответственности - некий адрес с детализацией до населенного пункта или конкретный поднадзорный объект (площадка) из реестра, которыми ограничиваются права доступа пользователей.

Минимальной зоной ответственности является предприятие (площадка). Контроль прав доступа пользователя осуществляется по предприятию. То есть доступ пользователя к конкретному предприятию определяется наличием связи с хозяйствующим субъектом, а также наличием закрепленной за ним зоны ответственности, в которую попадает это предприятие (или географически, если соответствуют компоненты адреса зоны и предприятия, или по точному совпадению предприятий).

Результирующая зона ответственности - это объединение всех зон ответственности, заданных для пользователя в контексте данного хозяйствующего субъекта. Если для пользователя не задано ни одной зоны ответственности, то результирующая зона ответственности - это множество всех предприятий хозяйствующего субъекта, с которым связан пользователь.

При выполнении операции на вход системы передаются следующие сведения:

  • информация о пользователе - инициаторе запроса;
  • имя пользователя или уникальный идентификатор, если существующий пользователь привязывается к ХС;
  • список зон ответственности для пользователя.

Результатом выполнения данной операции является:

  • назначение указанных в запросе зон ответственности пользователю.

Возможные сценарии

1. Назначение зон ответственности пользователю.
2. Если пользователь не связан с ХС-заявителем, то отказ в выполнении операции.
3. Некорректный запрос.
4. Внутренняя ошибка системы.



Используемые пространства имен и типы



Спецификация запроса

# Название XML-элемента Тип Обязат. Описание Пример
1 <merc:updateUserWorkingAreasRequest>
2 ···<merc:localTransactionId> xs:NCName [1..1] Идентификатор заявки в клиентской системе. <bs:guid>A00001</bs:guid>
3 ···<merc:initiator> vd:User [1..1] Пользователь, зарегистрированный в системе Меркурий и инициирующий запрос к шлюзу.
  • Является ответственным за выполнение бизнес-операции. Здесь потребуется логин ветврача или пользователя ХС. Логин для базовой аутентификации не подойдёт.
4 ······<vd:login> xs:NCName [1..1] Логин пользователя, зарегистрированного в системе Меркурий. <vd:login>user_ab_150101</vd:login>
5 ···</merc:initiator>
6 ···<vd:user> vd:User [1..*] Описание пользователя системы
  • Обязательно должен быть указан uuid или login пользователя.
7 ······<bs:uuid> bs:UUID [0..1] Уникальный идентификатор пользователя <bs:uuid>138712f8-823a-4184-b58e-863cc2af18cf</bs:uuid>
8 ······<vd:login> xs:NCName [0..1] Логин пользователя <vd:login>ivanov_ii_171105</vd:login>
9 ······<vd:workingAreaList> vd:WorkingAreaList [0..1] Список зон ответственности
10 ·········<vd:workingArea> vd:WorkingArea [0..*] Зона ответственности пользователя
  • Может быть задана как территорией, так и конкретным поднадзорным объектом (площадкой)
11 ············<vd:area> dt:Area [0..1] Идентификатор роли пользователя
  • Указывается в случае, если не указано поле enterprise
<vd:ID>MERCURY_AUTHORIZED_APPLICANT</vd:ID>
12 ···············<dt:country> dt:Country [1..1] Страна
  • Обязательно должен быть указан uuid или guid. При указании обоих приоритет у uuid.
13 ··················<bs:uuid> bs:UUID [0..1] Уникальный идентификатор страны в соответствии со справочником РСХН. <bs:uuid>53557240-35e7-48c8-81ce-8b9948cfef90</bs:uuid>
14 ··················<bs:guid> bs:UUID [0..1] Глобальный идентификатор страны в соответствии со справочником РСХН. <bs:guid>2c779c29-1fc2-44a6-8add-92752657f089</bs:guid>
15 ···············</dt:country>
16 ···············<dt:region> dt:Region [1..1] Регион (республика, область, край, автономная область)
  • Обязательно должен быть указан uuid или guid. При указании обоих приоритет у uuid.
17 ··················<bs:uuid> bs:UUID [0..1] Уникальный идентификатор региона страны в соответствии со справочником РСХН. <bs:uuid>e440dcdb-31d6-39a4-db63-a1c0731d61d6</bs:uuid>
18 ··················<bs:guid> bs:UUID [0..1] Глобальный идентификатор региона страны в соответствии со справочником РСХН. <bs:guid>cbdf8cb6-fb9a-4f36-36d3-04488f6d1b82</bs:guid>
19 ···············</dt:region>
20 ···············<dt:district> dt:Locality [0..1] Район региона
  • Обязательно должен быть указан uuid или guid. При указании обоих приоритет у uuid.
21 ··················<bs:uuid> bs:UUID [0..1] Уникальный идентификатор района региона в соответствии со справочником РСХН. <bs:uuid>3cb373d5-32f1-ac2a-754c-58d4b33825dd</bs:uuid>
22 ··················<bs:guid> bs:UUID [0..1] Глобальный идентификатор района региона в соответствии со справочником РСХН. <bs:guid>90d82878-431a-0cf1-0974-16d4fdff3bc8</bs:guid>
23 ···············</dt:district>
24 ···············<dt:locality> dt:Locality [0..1] Населённый пункт
  • Обязательно должен быть указан uuid или guid. При указании обоих приоритет у uuid.
25 ··················<bs:uuid> bs:UUID [0..1] Уникальный идентификатор города региона (города регионального подчинения) страны в соответствии со справочником РСХН. <bs:uuid>70db962b-d3f3-9a13-93d1-f83a9bc6ed80</bs:uuid>
26 ··················<bs:guid> bs:UUID [0..1] Глобальный идентификатор города региона (города регионального подчинения) страны в соответствии со справочником РСХН. <bs:guid>a16545f3-8f9c-2778-099f-a5d302e58712</bs:guid>
27 ···············</dt:locality>
28 ···············<dt:subLocality> dt:Locality [0..1] Населённый пункт, подчиненный другогому населенному пункту (locality)
  • Обязательно должен быть указан uuid или guid. При указании обоих приоритет у uuid.
29 ··················<bs:uuid> bs:UUID [0..1] Уникальный идентификатор населенного пункта в соответствии со справочником РСХН. <bs:uuid>3a7b2d0c-2ebd-0dff-9e93-341097ee1db3</bs:uuid>
30 ··················<bs:guid> bs:UUID [0..1] Глобальный идентификатор населенного пункта в соответствии со справочником РСХН. <bs:guid>9f315346-b470-3a1c-56d0-ae1afe9579df</bs:guid>
31 ···············</dt:subLocality>
32 ············</vd:area>
33 ············<vd:enterprise> dt:Enterprise [0..1] Данные о поднадзорном объекте.
  • Указывается в случае, если не указано поле area
  • Обязательно должен быть указан uuid или guid. При указании обоих приоритет у uuid.
34 ···············<bs:uuid> bs:UUID [0..1] Идентификатор версии поднадзорного объекта. <bs:uuid>c9781d68-8f7d-4fb6-a007-d7a14f0815f6</bs:uuid>
35 ···············<bs:guid> bs:UUID [0..1] Глобальный идентификатор поднадзорного объекта. <bs:guid>8aaaac24-8e10-499e-b1a2-cda0bf3f5855</bs:guid>
36 ············</vd:enterprise>
37 ·········</vd:workingArea>
38 ······</vd:workingAreaList>
39 ···</vd:user>
40 </merc:updateUserWorkingAreasRequest>

Спецификация ответа

# Название XML-элемента Тип Обязат. Описание Пример
1 <merc:updateUserWorkingAreasResponse>
2 ···<vd:user> vd:User [1..*] Описание пользователя системы
  • Обязательно должен быть указан uuid или login пользователя.
3 ······<bs:uuid> bs:UUID [0..1] Уникальный идентификатор пользователя <bs:uuid>138712f8-823a-4184-b58e-863cc2af18cf</bs:uuid>
4 ······<vd:login> xs:NCName [0..1] Логин пользователя <vd:login>ivanov_ii_171105</vd:login>
5 ······<vd:workingAreaList> vd:WorkingAreaList [0..1] Список зон ответственности
6 ·········<vd:workingArea> vd:WorkingArea [0..*] Зона ответственности пользователя
  • Может быть задана как территорией, так и конкретным поднадзорным объектом (площадкой)
7 ············<vd:area> dt:Area [0..1] Идентификатор роли пользователя
  • Указывается в случае, если не указано поле enterprise
<vd:ID>MERCURY_AUTHORIZED_APPLICANT</vd:ID>
15 ············<dt:country> dt:Country [1..1] Страна
16 ···············<bs:uuid> bs:UUID [1..1] Уникальный идентификатор страны <bs:uuid>53557240-35e7-48c8-81ce-8b9948cfef90</bs:uuid>
17 ···············<bs:guid> bs:UUID [1..1] Глобальный идентификатор страны <bs:guid>2c779c29-1fc2-44a6-8add-92752657f089</bs:guid>
18 ···············<dt:name> bs:String255 [1..1] Наименование страны <dt:name>Российская Федерация</dt:name>
19 ············</dt:country>
20 ············<dt:region> dt:Region [1..1] Регион (республика, область, край, автономная область)
21 ···············<bs:uuid> bs:UUID [1..1] Уникальный идентификатор региона страны <bs:uuid>e440dcdb-31d6-39a4-db63-a1c0731d61d6</bs:uuid>
22 ···············<bs:guid> bs:UUID [1..1] Глобальный идентификатор региона страны <bs:guid>cbdf8cb6-fb9a-4f36-36d3-04488f6d1b82</bs:guid>
23 ···············<dt:name> bs:String255 [1..1] Наименование региона страны <dt:name>Владимирская область</dt:name>
24 ············</dt:region>
25 ············<dt:district> dt:Locality [0..1] Район региона
26 ···············<bs:uuid> bs:UUID [1..1] Уникальный идентификатор района региона <bs:uuid>3cb373d5-32f1-ac2a-754c-58d4b33825dd</bs:uuid>
27 ···············<bs:guid> bs:UUID [1..1] Глобальный идентификатор района региона <bs:guid>90d82878-431a-0cf1-0974-16d4fdff3bc8</bs:guid>
28 ···············<dt:name> bs:String255 [1..1] Наименование района региона <dt:name>Собинский район</dt:name>
29 ············</dt:district>
30 ············<dt:locality> dt:Locality [0..1] Населённый пункт
31 ···············<bs:uuid> bs:UUID [1..1] Уникальный идентификатор города региона (города регионального подчинения) <bs:uuid>70db962b-d3f3-9a13-93d1-f83a9bc6ed80</bs:uuid>
32 ···············<bs:guid> bs:UUID [1..1] Глобальный идентификатор города региона (города регионального подчинения) <bs:guid>a16545f3-8f9c-2778-099f-a5d302e58712</bs:guid>
33 ···············<dt:name> bs:String255 [1..1] Наименование города региона (города регионального подчинения) <dt:name>Владимир г</dt:name>
34 ············</dt:locality>
35 ············<dt:subLocality> dt:Locality [0..1] Населённый пункт, подчиненный другогому населенному пункту (locality)
36 ···············<bs:uuid> bs:UUID [1..1] Уникальный идентификатор населенного пункта <bs:uuid>3a7b2d0c-2ebd-0dff-9e93-341097ee1db3</bs:uuid>
37 ···············<bs:guid> bs:UUID [1..1] Глобальный идентификатор населенного пункта <bs:guid>9f315346-b470-3a1c-56d0-ae1afe9579df</bs:guid>
38 ···············<dt:name> bs:String255 [1..1] Наименование населенного пункта <dt:name>Энергетик мкрн</dt:name>
39 ············</dt:subLocality>
29 ············<vd:enterprise> dt:Enterprise [0..1] Данные о поднадзорном объекте.
  • Указывается в случае, если не указано поле area
30 ···············<bs:uuid> bs:UUID [1..1] Идентификатор версии поднадзорного объекта. <bs:uuid>c9781d68-8f7d-4fb6-a007-d7a14f0815f6</bs:uuid>
31 ···············<bs:guid> bs:UUID [1..1] Глобальный идентификатор поднадзорного объекта. <bs:guid>8aaaac24-8e10-499e-b1a2-cda0bf3f5855</bs:guid>
32 ············</vd:enterprise>
33 ·········</vd:workingArea>
34 ······</vd:workingAreaList>
35 ···</vd:user>
36 </merc:updateUserWorkingAreasResponse>

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

Назначение зон ответственности конкретными предприятиями

Назначение зон ответственности конкретными предприятиями

<SOAP-ENV:Envelope xmlns:bs="http://api.vetrf.ru/schema/cdm/base" 
xmlns:merc="http://api.vetrf.ru/schema/cdm/mercury/g2b/applications/v2" 
xmlns:apldef="http://api.vetrf.ru/schema/cdm/application/ws-definitions" 
xmlns:apl="http://api.vetrf.ru/schema/cdm/application" 
xmlns:vd="http://api.vetrf.ru/schema/cdm/mercury/vet-document/v2" 
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
  <SOAP-ENV:Header/>
  <SOAP-ENV:Body>
    <apldef:submitApplicationRequest>
      <apldef:apiKey>apikey</apldef:apiKey>
      <apl:application>
        <apl:serviceId>mercury-g2b.service:2.0</apl:serviceId>
        <apl:issuerId>Id</apl:issuerId>
        <apl:issueDate>2017-11-08T10:32:08</apl:issueDate>
        <apl:data>
          <merc:updateUserWorkingAreasRequest>
            <merc:localTransactionId>a10003</merc:localTransactionId>
            <merc:initiator>
              <vd:login>login</vd:login>
            </merc:initiator>
            <vd:user>
              <vd:login>ivanov_ii_171108</vd:login>
              <vd:workingAreaList>
                <vd:workingArea>
                  <vd:enterprise>
                    <bs:guid>8f4a7faa-df83-400e-9868-df02324ad985</bs:guid>
                  </vd:enterprise>
                </vd:workingArea>
				<vd:workingArea>
                  <vd:enterprise>
                    <bs:guid>01c5c8be-08d5-405d-a7fa-9da5960f560c</bs:guid>
                  </vd:enterprise>
                </vd:workingArea>
              </vd:workingAreaList>
            </vd:user>
          </merc:updateUserWorkingAreasRequest>
        </apl:data>
      </apl:application>
    </apldef:submitApplicationRequest>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>


Ответ на запрос

<env:Envelope xmlns:bs="http://api.vetrf.ru/schema/cdm/base" 
xmlns:merc="http://api.vetrf.ru/schema/cdm/mercury/g2b/applications/v2" 
xmlns:apldef="http://api.vetrf.ru/schema/cdm/application/ws-definitions" 
xmlns:apl="http://api.vetrf.ru/schema/cdm/application" 
xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" 
xmlns:vd="http://api.vetrf.ru/schema/cdm/mercury/vet-document/v2">
  <env:Header/>
  <env:Body>
    <apldef:receiveApplicationResultResponse>
      <apl:application>
        <apl:applicationId>ecd5b39a-7bbf-41c5-adfe-a92259b72584</apl:applicationId>
        <apl:status>COMPLETED</apl:status>
        <apl:serviceId>mercury-g2b.service</apl:serviceId>
        <apl:issuerId>Id</apl:issuerId>
        <apl:issueDate>2017-11-08T10:32:08.000+03:00</apl:issueDate>
        <apl:rcvDate>2017-11-08T10:32:07.000+03:00</apl:rcvDate>
        <apl:prdcRsltDate>2017-11-08T10:32:08.000+03:00</apl:prdcRsltDate>
        <apl:result>
          <merc:updateUserWorkingAreasResponse>
            <vd:user>
              <vd:login>ivanov_ii_171108</vd:login>
              <vd:workingAreaList>
                <vd:workingArea>
                  <vd:enterprise>
                    <bs:guid>8f4a7faa-df83-400e-9868-df02324ad985</bs:guid>
                  </vd:enterprise>
                </vd:workingArea>
				<vd:workingArea>
                  <vd:enterprise>
                    <bs:guid>01c5c8be-08d5-405d-a7fa-9da5960f560c</bs:guid>
                  </vd:enterprise>
                </vd:workingArea>
              </vd:workingAreaList>
            </vd:user>
          </merc:updateUserWorkingAreasResponse>
        </apl:result>
      </apl:application>
    </apldef:receiveApplicationResultResponse>
  </env:Body>
</env:Envelope>


Назначение зон ответственности территорией

Назначение зон ответственности территорией


Ответ на запрос