Веб службы Universe-HTT


Система Universe-HTT предоставляет доступ к своим ресурсам через SOAP веб-службы. Описательная информация (WSDL) располагается по адресу: http://www.uhtt.ru/dispatcher/ws/iface?wsdl.

Список методов.

auth Авторизация в системе Universe-HTT
getGoodsByID Получение товара по идентификатору
getGoodsByCode Получение списка товаров по штрихкоду
getGoodsByName Получение списка товаров по наименованию
createGoods Создание товара
getPersonByID Получение персоналии по идентификатору
getPersonByName Получение списка персоналий по наименованию
createPerson Создание персоналии
getImageByID Получение изображения для объекта по идентификатору
getImageByCode Получение изображения для объекта по коду
setImageByID Установка изображения для объекта по идентификатору
getSpecSeriesBySerial Получение списка специальных серий по серийному номеру
getSpecSeriesByPeriod Получение списка специальных серий по периоду
getSpecSeriesByGoodsID Получение списка специальных серий по идентификатору товара
createSpecSeries Создание специальной серии

 

Структуры данных.

1. Status (Статус)

int    Code;
String Message;

Структура Status используется для передачи (возврата) результата выполнения некоторой операции. Поле "Code" используется для возврата числового кода или идентификатора в случае, например, успешного создания нового товара. Поле "Message" используется для возврата строковой информации, обычно это строка ошибки в случае передачи некорректного значения и т.п.

2. Barcode (Штрихкод)

String Code;                  // штрихкод
double Package;               // количество товара ассоциированное с данным штрихкодом

3. Goods (Товар)

int    ID;                    // идентификатор товара
String Name;                  // наименование
String SingleBarCode;         // штрихкод
int    GroupID;               // идентификатор товарной группы
int    BrandID;               // идентификатор бренда
int    ManufactorID;          // идентификатор производителя
int    TypeID;                // идентификатор типа
int    ClsID;                 // идентификатор класса
int    TaxGrpID;              // идентификатор налоговой группы
int    UnitID;                // идентификатор торговой единицы
int    PhUnitID;              // идентификатор физической единицы
double PhPerUnit;             // соотношение (торг. ед. / физ. ед.)
double Brutto;                // брутто (кг)
int    Length;                // длина (мм)
int    Width;                 // ширина (мм)
int    Height;                // высота (мм)
double Package;               // емкость упаковки поставки
int    ExpiryPeriod;          // срок годности (дней)
String Storage;               // условия хранения товара
String Standard;              // стандарт или тех. условия изготовления
String Ingred;                // ингредиенты
String Energy;                // энергетическая ценность
String HowToUse;              // способ использования (приготовления)
String OKOF;                  // код ОКОФ для основных средств
Barcode[] Barcodes;           // список штрихкодов

Структура Goods используется в методах получения и создания товаров.

4. ELink (Контакт)

int    ID;
String Data;

5. PersonKind (Вид персоналии)

int    ID;                    // идентификатор вида персоналии
String Name;                  // наименование
String Code;                  // символ

6. PersonRegister (Регистрационный документ персоналии)

int    RegID;                 // идентификатор регистрационного документа
int    RegTypeID;             // идентификатор типа регистрационного документа
int    PersonID;              // идентификатор персоналии которой принадлежит регистр
int    RegOrgID;              // идентификатор регистрирующей персоналии
String RegDt;                 // дата выдачи
String RegExpiry;             // дата до которой действует регистр
String RegSerial;             // серийный номер
String RegNumber;             // номер

7. Address (Адрес)

int    LocID;                 // идентификатор адреса
int    CityID;                //
идентификатор города
int    LocKind;               // тип адреса
String LocCode;               // код
String LocName;               // наименование
String ZIP;                   // ZIP код
String Address;               // строка адреса
double Latitude;              // широта
double Longitude;             // долгота

8. Person (Персоналия)

int              ID;                    // идентификатор персоналии
String           Name;                  // наименование
int              StatusID;              // идентификатор юридического статуса
int              CategoryID;            // идентификатор категории
String           INN;                   // ИНН
ELink[]          LinkList;              // список контактов
PersonKind[]     KindList;              // список видов персоналии
PersonRegister[] RegisterList;          // список регистров персоналии
Address[]        AddrList;              // список адресов

9. Document (Документ, файл)

String Name;                  // наименование файла
String ContentType;           // тип контента
String Encoding;              // схема кодирования (BASE64)
long   Size;                  // размер
(!)файла в байтах
String Data;                  // данные

10. SpecSeries (Специальная серия)

int    ID;                    // идентификатор серии
inе    GoodsID;               // идентификатор товара
int    ManufID;               // идентификатор производителя
int    ManufCountryID;        // идентификатор страны производителя
int    LabID;                 //
String Serial;                // серийный номер
String Barcode;               // штрихкод
String GoodsName;             // наименование товара
String ManufName;             // наименование производителя
String InfoDate;              // дата документа
int    InfoKind;              // тип документа
String InfoIdent;             // номер документа
String AllowDate;             // дата разрешения к продаже
String AllowNumber;           // номер документа разрешающего продажу
String LetterType;            //
int    Flags;                 //

 

Методы.

1. auth (Авторизация в системе Universe-HTT)

String auth(String email, String password);

Аргументы:

а) email - адрес электронной почты Вашей учетной записи в системе Universe-HTT.

б) password - пароль Вашей учетной записи в системе Universe-HTT.

В случае успешной авторизации метод auth возвращает строку, представляющую собой токен авторизации. Если же авторизация не прошла, метод генерирует исключение, которое содержит строку описания ошибки.

Примечание: По истечении 60 секунд с момента последнего обращения к серверу по данному токену он считается утратившим силу.

 

2. getGoodsByID (Получение товара по идентификатору)

Goods getGoodsByID(String token, int id);

Аргументы:

а) token - токен авторизации, полученный с помощью метода auth.

б) id - идентификатор товара.

В случае успеха метод возвратит структуру Goods, иначе будет cгенерированно исключение, которое будет содержать строку описания ошибки.

 

3. getGoodsByCode (Получение списка товаров по штрихкоду)

Goods[] getGoodsByCode(String token, String code);

Аргументы:

а) token - токен авторизации, полученный с помощью метода auth.

б) code - строка содержащая штрихкод.

В случае успеха метод возвратит массив структур Goods, в противном случае будет сгенерировано исключение.

 

4. getGoodsByName(Получение списка товаров по наименованию)

Goods[] getGoodsByName(String token, String name);

Аргументы:

а) token - токен авторизации, полученный с помощью метода auth.

б) name - строка содержащая наименование товара. (Поиск осуществляется по подстроке, т.е. если name = "Хлеб" то будет произведена выборка всех товаров, наименование которых содержит строку "Хлеб").

В случае успеха метод возвратит массив структур Goods, в противном случае будет сгенерировано исключение.

 

5. createGoods (Создание товара)

Status createGoods(String token, Goods goods);

Аргументы:

а) token - токен авторизации, полученный с помощью метода auth.

б) goods - структура создаваемого товара (поля "Name" и "SingleBarCode" обязательны для заполнения).

В случае успешного выполнения метода поле "Code" возвращаемой структуры Status будет содержать идентификатор созданного товара, в противном случае содержимое поля "Code" будет равно нулю, а поле "Message" будет содержать строку описания ошибки. Метод createGoods сгенерирует исключение случае не пройденной проверки валидности токена авторизации.

 

6. getPersonByID (Получение персоналии по идентификатору)

Person getPersonByID(String token, int id);

Аргументы:

а) token - токен авторизации, полученный с помощью метода auth.

б) id - идентификатор персоналии.

В случае успеха метод возвратит структуру Person, иначе будет cгенерированно исключение, которое будет содержать строку описания ошибки.

 

7. getPersonByName (Получение списка персоналий по наименованию)

Person[] getPersonByName(String token, String name);

Аргументы:

а) token - токен авторизации, полученный с помощью метода auth.

б) name - строка содержащая наименование персоналии. (Поиск осуществляется по подстроке, т.е. если name = "Прогресс" то будет произведена выборка всех персоналий, наименование которых содержит строку "Прогресс").

В случае успеха метод возвратит массив структур Person, в противном случае будет сгенерировано исключение.

 

8. createPerson (Создание персоналии)

Status createPerson(String token, Person person);

Аргументы:

а) token - токен авторизации, полученный с помощью метода auth.

б) person - структура создаваемой персоналии.

В случае успешного выполнения метода поле "Code" возвращаемой структуры Status будет содержать идентификатор созданной персоналии, в противном случае содержимое поля "Code" будет равно нулю, а поле "Message" будет содержать строку описания ошибки. Метод createPerson сгенерирует исключение случае не пройденной проверки валидности токена авторизации.

 

9. getImageByID (Получение изображения по идентификатору объекта)

Document getImageByID(String token, String objectType, int id);

Аргументы:

а) token - токен авторизации, полученный с помощью метода auth.

б) objectType - строка содержащая тип объекта (например: "Goods" или "Person").

в) id - идентификатор объекта.

В случае успеха метод вернет структуру Document, поле "ContentType" будет содержать тип контента файла, поле "Data" будет содержать последовательность закодированных (в BASE64) байтов файла, поле "Size" будет равно размеру исходного файла.

 

10. getImageByCode (Получение изображения по коду объекта)

Document getImageByCode(String token, String objectType, String code);

Аргументы:

а) token - токен авторизации, полученный с помощью метода auth.

б) objectType - строка содержащая тип объекта, например, "Goods" или "Person".

в) code - код объекта (для товаров штрихкод, для персоналий ИНН).

В случае успеха метод вернет структуру Document, поле "ContentType" будет содержать тип контента файла, поле "Data" будет содержать последовательность закодированных (в BASE64) байтов файла, поле "Size" будет равно размеру исходного файла.

 

11. setImageByID (Установка изображения для объекта по идентификатору)

Status setImageByID(String token, String objectType, int id, Document image);

Аргументы:

а) token - токен авторизации, полученный с помощью метода auth.

б) objectType - строка содержащая тип объекта, например, "Goods" или "Person".

в) id - идентификатор объекта.

г) image - файл изображения

В случае успешного выполнения метода поле "Code" возвращаемой структуры Status будет  равно нулю. В случае ошибки поле "Code" будет содержать код ошибки, а поле "Message" будет содержать строку описания ошибки.

 

12. getSpecSeriesBySerial (Получение списка специальных серий по серийному номеру)

SpecSeries[] getSpecSeriesByID(String token, String serial);

Аргументы:

а) token - токен авторизации, полученный с помощью метода auth.

б) serial - строка содержащая серийный номер.

В случае успеха метод возвратит массив структур SpecSeries, в противном случае будет сгенерировано исключение.

 

13. getSpecSeriesByPeriod(Получение списка специальных серий по периоду)

SpecSeries[] getSpecSeriesByPeriod(String token, String period);

Аргументы:

а) token - токен авторизации, полученный с помощью метода auth.

б) period - строка содержащая период, например, "1/1/2010..31/12/2010".

В случае успеха метод возвратит массив структур SpecSeries, в противном случае будет сгенерировано исключение.

 

14. getSpecSeriesByGoodsID(Получение списка специальных серий по идентификатору товара)

SpecSeries[] getSpecSeriesByGoodsID(String token, int goodsID);

Аргументы:

а) token - токен авторизации, полученный с помощью метода auth.

б) goodsID - идентификатор товара.

В случае успеха метод возвратит массив структур SpecSeries, в противном случае будет сгенерировано исключение.

 

15. createSpecSeries(Создание специальной серии)

Status createSpecSeries(String token, SpecSeries series);

Аргументы:

а) token - токен авторизации, полученный с помощью метода auth.

б) series - структура создаваемой специальной серии.

В случае успешного выполнения метода поле "Code" возвращаемой структуры Status будет содержать идентификатор созданной серии, в противном случае содержимое поля "Code" будет равно нулю, а поле "Message" будет содержать строку описания ошибки.