Задачи за Hype Reports
Задачи
Всяка задача е запис в опашката, който Hype Reports трябва да извлече от HES, обработи и отчете със статус и отговор.
Тези адреси са в HES. Hype Reports извлича задачи за синхронизация с HTTP GET и изпраща резултатите им с HTTP PUT независимо от type на задачата. Полето type описва действието върху обекта. Генерирането на справки е отделен процес: POST заявява справка, а GET проверява резултата ѝ. Няма PUT операция за редактиране на генерирана справка.
HES създава задачи за следните типове обекти:
- categories
- fiscalDevices
- mainCategories
- menus
- saloons
- tables
- users
Адреси за извличане:
- GET /tasks/hype-reports/categories
- GET /tasks/hype-reports/fiscalDevices
- GET /tasks/hype-reports/mainCategories
- GET /tasks/hype-reports/menus
- GET /tasks/hype-reports/saloons
- GET /tasks/hype-reports/tables
- GET /tasks/hype-reports/users
Адреси за отчитане:
- PUT /tasks/hype-reports/categories
- PUT /tasks/hype-reports/fiscalDevices
- PUT /tasks/hype-reports/mainCategories
- PUT /tasks/hype-reports/menus
- PUT /tasks/hype-reports/saloons
- PUT /tasks/hype-reports/tables
- PUT /tasks/hype-reports/users
Структура на задачата
Всеки GET отговор връща масив от задачи:
[
{
"id": "...",
"request": { ... },
"status": 0,
"meta": {
"source_account": {
"id": "a0fa1fe5-feda-4753-9f23-691343e3828c",
"name": "Local",
"platform_id": "4d410b0e-ee37-497e-8362-478a383d68ee",
"platform_name": "Hype Server",
"platform_key": "hype-server"
}
},
"type": "POST"
}
]id е идентификаторът на задачата. Използвайте го като entity_task_id при отчитане.
request съдържа данните, които Hype Reports трябва да обработи. Включва и source_account — акаунта в Hype Server, от който идва промяната; същият обект е и в meta.source_account.
type определя операцията за изпълнение:
- GET: връщане на записите от Hype Reports към HES.
- POST: създаване или съпоставяне на нов обект.
- PUT: промяна или съпоставяне на съществуващ обект.
HES не изпраща DELETE задачи. Запис, изтрит в Hype, пристига като PUT задача с нулирани полета (празни низове или нули, например "name": "").
status е 0 за нова, необработена задача.
GET задачи
GET задача изисква от Hype Reports записи от посочения тип. Върнете масив в response или [], ако не съхранявате такива записи.
POST/PUT задачи
POST и PUT задачите съдържат обект от Hype Server. Приложете го в Hype Reports и върнете един обект в response. Ако записът вече съществува, върнете съществуващия HR идентификатор. Това създава връзката между идентификаторите в Hype Server и Hype Reports.
Отчитане на резултати от задачи
След обработката изпратете PUT заявка към адреса за съответния тип обект:
[
{
"entity_task_id": "...",
"status": 200,
"response": {
"id": "..."
}
}
]entity_task_id е идентификаторът от получената задача.
status е код за резултата от обработката със значението на HTTP код.
response съдържа резултата от обработката:
- GET задачи: масив или
[]. - POST/PUT задачи: един обект с Hype Reports идентификатора.
Салони и маси
Задачите за маси идват със saloonId, вече заменен с идентификатора на салона в Hype Reports, или 0, ако сте потвърдили салона с {}. HES съпоставя масите само по id и не чете saloonId от вашия отговор.