CheckEndUserInfo
Описание
Метод используется для проверки корректности заполнения лицензионной формы, для покупки определенного товара. В качестве результатов метода будет возвращен список правил заполнения полей, причем в тех полях, где есть ошибка, будет проставлен флаг HasError, а пользовательский текст ошибки будет находиться в поле ErrorText. При этом, корневой флаг контракта ответа IsError содержит TRUE только в случае нарушения работы веб-сервиса и не является индикатором наличия ошибок в проверяемой лицензионной форме.
Параметры
Название | Тип | Описание |
endUserInfo | array of EndUserInfoContract | Заполненная лицензионная форма. Правила её заполнения можно получить с помощью метода GetUserInfoDescriptionFor |
langCode | string | Код языка описания лицензионной формы (например RU) |
partNum | string | Партномер товара, для покупки которого предназначена лиц. форма |
Возвращаемое значение
Примеры запросов и ответов метода CheckEndUserInfo
Запрос XmlOverHttp
POST https://sandbox.mont.ru/Version2/Service/B2BServiceV2Xml.svc/CheckEndUserInfo
<?xml version="1.0" encoding="UTF-8"?>
<CheckEndUserInfo>
<langCode>RU</langCode>
<partNum>KL1849RDBFY</partNum>
<endUserInfo>
<Fields>
<EndUserInfoFieldContract>
<FieldName>CustomerName</FieldName>
<FieldValue>Иванов Иван</FieldValue>
</EndUserInfoFieldContract>
<EndUserInfoFieldContract>
<FieldName>Email</FieldName>
<FieldValue>foo@bar.com</FieldValue>
</EndUserInfoFieldContract>
<EndUserInfoFieldContract>
<FieldName>IsLegalPerson</FieldName>
<FieldValue>false</FieldValue>
</EndUserInfoFieldContract>
</Fields>
</endUserInfo>
</CheckEndUserInfo>
Ответ XmlOverHttp
<?xml version="1.0" encoding="utf-8"?>
<CheckEndUserInfoResponse xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<CheckEndUserInfoResult>
<Data>
<Descriptions>
<EndUserInfoDescriptionContract>
<FieldName>KasperskyPIN</FieldName>
<FieldTitle>Пин Касперского</FieldTitle>
<FieldDescription>Введите Пин Касперского</FieldDescription>
<RegExprs>^.{8,8}$</RegExprs>
<SmallRegExprs>^.*$</SmallRegExprs>
<FieldsValue/>
<AvaliableValues/>
<ErrorText>Неправильно указан PIN</ErrorText>
<HasError>true</HasError>
<RelatedPartNums/>
<FieldType>1</FieldType>
<UserType>2</UserType>
<Required>true</Required>
<MinLength>8</MinLength>
<MaxLength>8</MaxLength>
</EndUserInfoDescriptionContract>
<EndUserInfoDescriptionContract>
<FieldName>CustomerOrganization</FieldName>
<FieldTitle>Компания</FieldTitle>
<FieldDescription>Не должно начинаться с пробела. Максимальная длина 50 символов. Допускаются английские и русские буквы, цифры и знаки: .,!?-</FieldDescription>
<RegExprs>^.{1,255}$</RegExprs>
<SmallRegExprs>^.*$</SmallRegExprs>
<FieldsValue/>
<AvaliableValues/>
<ErrorText>Поле заполнено неверно</ErrorText>
<HasError>false</HasError>
<RelatedPartNums/>
<FieldType>1</FieldType>
<UserType>1</UserType>
<Required>false</Required>
<MinLength>1</MinLength>
<MaxLength>255</MaxLength>
</EndUserInfoDescriptionContract>
<EndUserInfoDescriptionContract>
<FieldName>IsLegalPerson</FieldName>
<FieldTitle>Юридическое лицо</FieldTitle>
<FieldDescription>Юридическое лицо</FieldDescription>
<RegExprs>^(true)|(false)$</RegExprs>
<SmallRegExprs>^(true)|(false)$</SmallRegExprs>
<FieldsValue>false</FieldsValue>
<AvaliableValues/>
<ErrorText/>
<HasError>false</HasError>
<RelatedPartNums/>
<FieldType>2</FieldType>
<UserType>1</UserType>
<Required>true</Required>
<MinLength>4</MinLength>
<MaxLength>5</MaxLength>
</EndUserInfoDescriptionContract>
<EndUserInfoDescriptionContract>
<FieldName>Email</FieldName>
<FieldTitle>Email</FieldTitle>
<FieldDescription>Должен присутствовать символ @. Максимальная длина поля 128 символов</FieldDescription>
<RegExprs>^([^@]*@[^@]*){1,128}$</RegExprs>
<SmallRegExprs>^([^@]*@[^@]*)$</SmallRegExprs>
<FieldsValue>foo@bar.com</FieldsValue>
<AvaliableValues/>
<ErrorText>Укажите корректный Email</ErrorText>
<HasError>false</HasError>
<RelatedPartNums/>
<FieldType>1</FieldType>
<UserType>1</UserType>
<Required>true</Required>
<MinLength>1</MinLength>
<MaxLength>128</MaxLength>
</EndUserInfoDescriptionContract>
</Descriptions>
</Data>
<IsError>false</IsError>
<ErrorCode>0</ErrorCode>
<Errors/>
</CheckEndUserInfoResult>
</CheckEndUserInfoResponse>
Запрос SOAP
https://sandbox.mont.ru/version2/service/B2BServiceV2.svc
<CheckEndUserInfo>
<MethodParameters>
<endUserInfo>
<Fields attr0="EndUserInfoFieldContractArray" isNull="false">
<EndUserInfoFieldContractArray0>
<FieldName>CustomerName</FieldName>
<FieldValue>Иванов Иван</FieldValue>
</EndUserInfoFieldContractArray0>
</Fields>
</endUserInfo>
<langCode>RU</langCode>
<partNum>KL1849RDBFY</partNum>
</MethodParameters>
</CheckEndUserInfo>
Ответ SOAP
<CheckEndUserInfo>
<MethodParameters>
<WebStoreResponseContractOfEndUserInfoDescriptionListContract5knQ4_S11>
<Data>
<Descriptions attr0="EndUserInfoDescriptionContractArray"isNull="false">
<EndUserInfoDescriptionContractArray0>
<AvaliableValues attr0="StringArray"isNull="false"/>
<ErrorText>Неправильно указан PIN</ErrorText>
<FieldDescription>Введите Пин Касперского</FieldDescription>
<FieldName>KasperskyPIN</FieldName>
<FieldTitle>Пин Касперского</FieldTitle>
<FieldType>1</FieldType>
<FieldsValue isNull="false"/>
<HasError>True</HasError>
<MaxLength>8</MaxLength>
<MinLength>8</MinLength>
<RegExprs>^.{8,8}$</RegExprs>
<RelatedPartNums attr0="StringArray"isNull="false"/>
<Required>True</Required>
<SmallRegExprs>^.*$</SmallRegExprs>
<UserType>2</UserType>
</EndUserInfoDescriptionContractArray0>
<EndUserInfoDescriptionContractArray1>
<AvaliableValues attr0="StringArray"isNull="false"/>
<ErrorText>Поле заполнено неверно</ErrorText>
<FieldDescription>Не должно начинаться с пробела. Максимальная длина 50 символов. Допускаются английские и русские буквы, цифры и знаки: .,!?-</FieldDescription>
<FieldName>CustomerOrganization</FieldName>
<FieldTitle>Компания</FieldTitle>
<FieldType>1</FieldType>
<FieldsValue isNull="false"/>
<HasError>False</HasError>
<MaxLength>255</MaxLength>
<MinLength>1</MinLength>
<RegExprs>^.{1,255}$</RegExprs>
<RelatedPartNums attr0="StringArray"isNull="false"/>
<Required>False</Required>
<SmallRegExprs>^.*$</SmallRegExprs>
<UserType>1</UserType>
</EndUserInfoDescriptionContractArray1>
<EndUserInfoDescriptionContractArray2>
<AvaliableValues attr0="StringArray"isNull="false"/>
<ErrorText isNull="false"/>
<FieldDescription>Юридическое лицо</FieldDescription>
<FieldName>IsLegalPerson</FieldName>
<FieldTitle>Юридическое лицо</FieldTitle>
<FieldType>2</FieldType>
<FieldsValue isNull="false"/>
<HasError>True</HasError>
<MaxLength>5</MaxLength>
<MinLength>4</MinLength>
<RegExprs>^(true)|(false)$</RegExprs>
<RelatedPartNums attr0="StringArray"isNull="false"/>
<Required>True</Required>
<SmallRegExprs>^(true)|(false)$</SmallRegExprs>
<UserType>1</UserType>
</EndUserInfoDescriptionContractArray2>
<EndUserInfoDescriptionContractArray3>
<AvaliableValues attr0="StringArray"isNull="false"/>
<ErrorText>Укажите корректный Email</ErrorText>
<FieldDescription>Должен присутствовать символ @. Максимальная длина поля 128 символов</FieldDescription>
<FieldName>Email</FieldName>
<FieldTitle>Email</FieldTitle>
<FieldType>1</FieldType>
<FieldsValue isNull="false"/>
<HasError>True</HasError>
<MaxLength>128</MaxLength>
<MinLength>1</MinLength>
<RegExprs>^([^@]*@[^@]*){1,128}$</RegExprs>
<RelatedPartNums attr0="StringArray"isNull="false"/>
<Required>True</Required>
<SmallRegExprs>^([^@]*@[^@]*)$</SmallRegExprs>
<UserType>1</UserType>
</EndUserInfoDescriptionContractArray3>
</Descriptions>
</Data>
<ErrorCode>0</ErrorCode>
<ErrorText isNull="true"/>
<Errors attr0="ErrorContractArray"isNull="false"/>
<IsError>False</IsError>
</WebStoreResponseContractOfEndUserInfoDescriptionListContract5knQ4_S11>
</MethodParameters>
</CheckEndUserInfo>
Примеры скриптов на PHP
Пример выполнения REST и SOAP-запроса