UpdateUserWorkingAreas v2

Материал из Справочная система Россельхознадзора
Перейти к навигации Перейти к поиску

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

Операция 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:AuthorityList [0..1] Список зон ответственности
10 ·········<vd:workingArea> vd:UserAuthority [0..*] Зона ответственности пользователя
  • Может быть задана как территорией, так и конкретным поднадзорным объектом (площадкой)
11 ············<vd:area> xs:NCName [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:addBusinessEntityUserResponse>
2 ···<vd:user> vd:User [1..*] Описание пользователя системы
3 ······<bs:uuid> bs:UUID [1..1] Уникальный идентификатор пользователя <bs:uuid>138712f8-823a-4184-b58e-863cc2af18cf</bs:uuid>
4 ······<vd:login> xs:NCName [1..1] Логин пользователя <vd:login>ivanov_ii_171105</vd:login>
5 ······<vd:firstName> bs:String255 [0..1] Имя <vd:firstName>Иванов</vd:firstName>
6 ······<vd:middleName> bs:String255 [0..1] Отчество <vd:middleName>Иван</vd:middleName>
7 ······<vd:lastName> bs:String255 [0..1] Фамилия <vd:lastName>Иванович</vd:lastName>
8 ······<vd:birthDate> xs:date [0..1] Дата рождения <vd:birthDate>1987-01-02</vd:birthDate>
9 ······<vd:phone> bs:String255 [0..1] Телефон пользователя <vd:phone>23-23-23</vd:phone>
10 ······<vd:workPhone> bs:String255 [0..1] Рабочий телефон пользователя <vd:workPhone>23-23-25</vd:workPhone>
11 ······<vd:email> bs:String255 [0..1] Адрес электронной почты пользователя <vd:email>1511440241708@yandex.ru</vd:email>
12 ······<vd:workEmail> bs:String255 [0..1] Рабочий адрес электронной почты пользователя <vd:workEmail>34833784001f@yandex.ru</vd:workEmail>
13 ······<vd:post> bs:String255 [0..1] Должность пользователя <vd:post>Должность</vd:post>
14 ······<vd:authorityList> vd:AuthorityList [0..1] Список ролей пользователя
15 ·········<vd:authority> vd:UserAuthority [1..*] Роль пользователя
16 ············<vd:ID> xs:NCName [1..1] Идентификатор роли пользователя <vd:ID>MERCURY_AUTHORIZED_APPLICANT</vd:ID>
17 ············<vd:name> bs:String255 [1..1] Описание роли пользователя <vd:name>Авторизованный заявитель в системе Меркурий</vd:name>
18 ·········</vd:authority>
19 ······</vd:authorityList>
20 ···</vd:user>
21 </merc:addBusinessEntityUserResponse>

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

Регистрация нового пользователя

Регистрация нового пользователя
<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:addBusinessEntityUserRequest>
            <merc:localTransactionId>a10003</merc:localTransactionId>
            <merc:initiator>
              <vd:login>login</vd:login>
            </merc:initiator>
            <vd:user>
              <vd:firstName>Иван</vd:firstName>
              <vd:middleName>Иванович</vd:middleName>
              <vd:lastName>Иванов</vd:lastName>
              <vd:birthDate>1987-01-02</vd:birthDate>
              <vd:identity>
                <vd:issueSeries>1508</vd:issueSeries>
                <vd:issueNumber>436542</vd:issueNumber>
                <vd:type>17</vd:type>
              </vd:identity>
              <vd:citizenship>
                <vd:country>
                  <bs:uuid>72a84b51-5c5e-11e1-b9b7-001966f192f1</bs:uuid>
                  <bs:guid>74a3cbb1-56fa-94f3-ab3f-e8db4940d96b</bs:guid>
                </vd:country>
              </vd:citizenship>
              <vd:email>1508871436542@yandex.ru</vd:email>
            </vd:user>
          </merc:addBusinessEntityUserRequest>
        </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:addBusinessEntityUserResponse>
            <vd:user>
              <bs:uuid>6c2eb90a-b717-4075-8093-32d59b684452</bs:uuid>
              <vd:login>ivanov_ii_171108</vd:login>
              <vd:firstName>Иван</vd:firstName>
              <vd:middleName>Иванович</vd:middleName>
              <vd:lastName>Иванов</vd:lastName>
              <vd:birthDate>1987-01-02T00:00:00.000+03:00</vd:birthDate>
              <vd:email>1508871436542@yandex.ru</vd:email>
            </vd:user>
          </merc:addBusinessEntityUserResponse>
        </apl:result>
      </apl:application>
    </apldef:receiveApplicationResultResponse>
  </env:Body>
</env:Envelope>


Привязка существующего пользователя к хозяйствующему субъекту

Привязка существующего пользователя к хозяйствующему субъекту
<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:addBusinessEntityUserRequest>
            <merc:localTransactionId>a10003</merc:localTransactionId>
            <merc:initiator>
              <vd:login>login</vd:login>
            </merc:initiator>
            <vd:user>
              <vd:login>ivanov_ii_171108</vd:login>
            </vd:user>
          </merc:addBusinessEntityUserRequest>
        </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:addBusinessEntityUserResponse>
            <vd:user>
              <bs:uuid>2732beec-c3f5-4024-892a-1c92fca663f3</bs:uuid>
              <vd:login>ivanov_ii_171108</vd:login>
            </vd:user>
          </merc:addBusinessEntityUserResponse>
        </apl:result>
      </apl:application>
    </apldef:receiveApplicationResultResponse>
  </env:Body>
</env:Envelope>


Регистрация списка новых пользователей

Привязка существующего пользователя к хозяйствующему субъекту
<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:addBusinessEntityUserRequest>
            <merc:localTransactionId>a10003</merc:localTransactionId>
            <merc:initiator>
              <vd:login>login</vd:login>
            </merc:initiator>
            <vd:user>
              <vd:firstName>Иван</vd:firstName>
              <vd:middleName>Иванович</vd:middleName>
              <vd:lastName>Иванов</vd:lastName>
              <vd:birthDate>1987-01-02</vd:birthDate>
              <vd:identity>
                <vd:issueSeries>1512</vd:issueSeries>
                <vd:issueNumber>061952</vd:issueNumber>
                <vd:type>17</vd:type>
              </vd:identity>
              <vd:citizenship>
                <vd:country>
                  <bs:uuid>72a84b51-5c5e-11e1-b9b7-001966f192f1</bs:uuid>
                  <bs:guid>74a3cbb1-56fa-94f3-ab3f-e8db4940d96b</bs:guid>
                </vd:country>
              </vd:citizenship>
              <vd:email>1512053061952@yandex.ru</vd:email>
            </vd:user>
            <vd:user>
              <vd:firstName>Петр</vd:firstName>
              <vd:middleName>Петрович</vd:middleName>
              <vd:lastName>Петров</vd:lastName>
              <vd:birthDate>1987-01-02</vd:birthDate>
              <vd:identity>
                <vd:issueSeries>1508</vd:issueSeries>
                <vd:issueNumber>636157</vd:issueNumber>
                <vd:type>17</vd:type>
              </vd:identity>
              <vd:citizenship>
                <vd:country>
                  <bs:uuid>72a84b51-5c5e-11e1-b9b7-001966f192f1</bs:uuid>
                  <bs:guid>74a3cbb1-56fa-94f3-ab3f-e8db4940d96b</bs:guid>
                </vd:country>
              </vd:citizenship>
              <vd:email>1508171636157@yandex.ru</vd:email>
            </vd:user>
          </merc:addBusinessEntityUserRequest>
        </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:addBusinessEntityUserResponse>
            <vd:user>
              <bs:uuid>80b3835a-5669-4f28-b383-ab11bc0a6cc1</bs:uuid>
              <vd:login>ivanov_ii_171108</vd:login>
              <vd:firstName>Иван</vd:firstName>
              <vd:middleName>Иванович</vd:middleName>
              <vd:lastName>Иванов</vd:lastName>
              <vd:birthDate>1987-01-02T00:00:00.000+03:00</vd:birthDate>
              <vd:email>1512053061952@yandex.ru</vd:email>
              <vd:workEmail>1512053061952@yandex.ru</vd:workEmail>
            </vd:user>
            <vd:user>
              <bs:uuid>c207f427-9252-4e84-89d8-fe4532374234</bs:uuid>
              <vd:login>petrov_pp_171108</vd:login>
              <vd:firstName>Петр</vd:firstName>
              <vd:middleName>Петрович</vd:middleName>
              <vd:lastName>Петров</vd:lastName>
              <vd:birthDate>1987-01-02T00:00:00.000+03:00</vd:birthDate>
              <vd:email>1508171636157@yandex.ru</vd:email>
              <vd:workEmail>1508171636157@yandex.ru</vd:workEmail>
            </vd:user>
          </merc:addBusinessEntityUserResponse>
        </apl:result>
      </apl:application>
    </apldef:receiveApplicationResultResponse>
  </env:Body>
</env:Envelope>