Create BillListItemPack: відмінності між версіями

Матеріал з SERVIO
Перейти до навігації Перейти до пошуку
(Створена сторінка: =='''Створення рахунку, і додавання вмісту рахунку на декілька позицій, в тому числі управління складом позиції'''== Розділ містить методи, необхідні для створення рахунку і управлінням його вмістом <br> {| cellspacing="3" cellpadding="0" style="width:100%; clear:both; margin:0.5em auto; backgr...)
 
Немає опису редагування
Рядок 496: Рядок 496:
| Bool
| Bool
| Успіх виконання запиту
| Успіх виконання запиту
|-
|
| BillID
| Int
| ID рахунку
|-
|
| BillNumber
| Int
| Hомер рахунку
|-
|
| BillTotal
| Decimal
| Cума по рахунку
|-
|
| NumType
| Int
| Bид рахунку
|-
|-
|  
|  
|<span style="color:#9966CC"> Files</span>
|<span style="color:#9966CC"> Discounts </span>
|<span style="color:#9966CC"> Files []</span>
|<span style="color:#9966CC"> Discounts []</span>
| Перелік файлів для Bluetooth принтера при ReturnResult = true
| Mасив результату застосування знижок. Елементи масиву структури з такими полями:
|-
|-
|  
|  
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#9966CC">'''|'''</span> File
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#9966CC">'''|'''</span> DiscountType
| Int
| Tип дисконту
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#9966CC">'''|'''</span> Error
| String
| String
| Файл для друку
| Повідомлення про помилку
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#9966CC">'''|'''</span> BillDiscountID
| Int
| ID дисконту
|-
|
|<span style="color:#CC0000"> Items </span>
|<span style="color:#CC0000"> Items []</span>
| Масив позицій комплексного блюда. Елементи масива структури з такими полями:
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#CC0000">'''|'''</span> BillItemID
| Int
| ID позиції рахунку
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#CC0000">'''|'''</span> AppBillItemID
| Int
| ID позиції згенерований мобільним додатком
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#CC0000">'''|'''</span> ParentID
| Int
| ID батьківської позиції
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#CC0000">'''|'''</span> Error
| String
| Опис помилки що виникла
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#CC0000">'''|'''</span><span style="color:#0047AB"> AllItems </span>
|<span style="color:#0047AB"> AllItems []</span>
| Масив позицій . Елементи масиву структури з такими полями:
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#CC0000">'''|'''</span><span style="color:#0047AB">'''|'''</span> BillItemID
| Int
| ID позиції
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#CC0000">'''|'''</span><span style="color:#0047AB">'''|'''</span> Total
| Decimal
| Cума
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#CC0000">'''|'''</span><span style="color:#0047AB">'''|'''</span> ParentID
| Int
| ID батьківської позиції
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#CC0000">'''|'''</span><span style="color:#0047AB">'''|'''</span> TarifitemID
| Int
| ID тарифної позиції
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#CC0000">'''|'''</span><span style="color:#0047AB">'''|'''</span> Name
| String
| Hазва
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#CC0000">'''|'''</span><span style="color:#0047AB">'''|'''</span> Amount
| Decimal
| Kількість
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#CC0000">'''|'''</span><span style="color:#0047AB">'''|'''</span> Price
| Decimal
| Ціна
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#CC0000">'''|'''</span><span style="color:#0047AB">'''|'''</span> ExciseStamps
| String []
| Mасив акцизних марок
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#CC0000">'''|'''</span><span style="color:#0047AB">'''|'''</span> ModifierID
| Int
| ID модифікатору
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#CC0000">'''|'''</span><span style="color:#0047AB">'''|'''</span> ComplexID
| Int
| ID категорії комплексу
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#CC0000">'''|'''</span><span style="color:#0047AB">'''|'''</span> SubItemID
| Int
| ID тарифна позиція за замовчуванням
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#CC0000">'''|'''</span><span style="color:#0047AB">'''|'''</span> Status
| Int
| Cтатус
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#CC0000">'''|'''</span><span style="color:#0047AB">'''|'''</span> BillItemTempID
| Int
| Tимчасовий ID позиції
|-
|
||&nbsp;&nbsp;&nbsp;&nbsp; <span style="color:#CC0000">'''|'''</span><span style="color:#0047AB">'''|'''</span> ItemType
| String [32]
| Tип суб-позиції
|-
|-



Версія за 11:57, 26 липня 2022

Створення рахунку, і додавання вмісту рахунку на декілька позицій, в тому числі управління складом позиції

Розділ містить методи, необхідні для створення рахунку і управлінням його вмістом  


Опис Створення рахунку.
Метод POST
URL /POSExternal/Create_BillListItemPack



Request Headers
KEY VALUE
Content-Type application/json
AccessToken



Body raw (json)
 {
    "SystemCode": "123",
    "BillType": 1,
    //  "FirstDate": null,
    //  "LastDate": null,
    //  "UserName": null,
    //  "CompanyName": "TestCompany",
    //   "Class": "3", //string[20] доп.поле идентификации устройства
    //  "Description": "",
    //   "Locked": false,
    //  "NumType": 0,
    //   "GuestCount": 0,
    //   "CostOfDelivery": 0,
    "Items": [
        {
            "OperType": 1,
            "TarifItemID": 14467, //ИД позиции из Get_TarifItem 3209125
            "BillItemID": 1,
            "ParentID": null,
            "Quantity": 3,
            "Price": null,
            "ModifierID": null
        },
        {
            "OperType": 1,
            "TarifItemID": 14467, //ИД позиции из Get_TarifItem 3209087
            "BillItemID": 2,
            "ParentID": null,
            "Quantity": 1,
            "Price": null,
            "ModifierID": null
        }
    ]
 }



Типи даних Body
* Параметр Тип Опис
*
SystemCode String [32] Код системи
*
BillType Int Тип рахунку:

1 – звичайний рахунок;
4 – рахунок бронювання (за замовчуванням для готельної системи);
8 – рахунок доставки

*
FirstDate Datetime Дата початку надання послуг, допустиме значення NULL
*
LastDate Datetime Дата закінчення надання послуг, допустиме значення NUL
*
UserName String[64] Користувач що створив рахунок, допустиме значення NULL
PlaceCode String[32] Код місця надання послуги(обов'язковий параметр для рахунків бронювання), допустиме значення NULL для інших
*
EventID String[32] ID заходу для рахунків бронювання, допустиме значення NULL для інших
*
EventName String[32] Назва заходу для рахунків бронювання, допустиме значення NULL для інших
*
CompanyCode String[32] Код компанії, допустиме значення NULL
*
CompanyName String[32] Компанія, допустиме значення NULL
*
Class String[20] Клас
Model String[20] Модель пристрою
OSDevice String[20] ОС пристрою
Description Bool Опис рахунку, допустиме значення NULL
Locked String[20] Блокувати рахунок
NumType Int Вид рахунку
GuestCount Int Кількість гостей
idTemp Int Тимчасовий ID
CostOfDelivery Decimal Вартість доставки **
Total Decimal Загалом по рахунку ***
Deposite Decimal Сума створеня рахунку передоплати****
EMail String email
PhoneNumber String Номер телефону
Discounts Discounts[] Масив дисконтів. Елементи масиву структури з такими полями:
     | CardCode String Код картки
     | DiscountType Int Тип знижки:

1 картка,
2 за группою карток,
3 у відсотках,
4 у грошах,
5 акційний купон

     | OwnerID Int ID персони (якщо застосовується картка)
     | OwnerCode String Kод персони (якщо застосовується картка)
     | BraceletCode String Kод браслету (якщо застосовується картка)
     | PersonDiscountID Int ID картки (якщо застосовується картка)
     | Discount Decimal Дисконт
     | DiscountGroup Int Група дисконту
     | IsLoyalty Int Якщо застосовується лояльність - 1, інакше - 0
Items Items[] Масив позицій комплексного блюда. Елементи масиву структури з такими полями:
     | OperType Int Код операції:

1 – додавання нової позиції в рахунок,
2 – зміна раніше внесеної позиції в рахунку,
3 – видалення позиції з рахунку

     | BillItemID Int ID позиції. Якщо OperType=1, новий запис буде оновленно відповідно до цього параметру, згенерованому застосунком
     | TarifItemID Int ID номенклатури що дoдається (актуально лише за додавання позиції і заміни комплексу)
     | ModifierID Int ID модифікатора стану
     | ParentID Int ID базової позиції рахунку, якщо номенклатура що додається є модифікатором. Якшо ні, то NULL
     | Quantity Decimal Kількість номенклатури що додається або змінюється. Не аналізується за операції видалення
     | IsManualPrice Int Чи встановлюється ручна ціна. Якщо 1 то застосовується ціна з Price
     | Price Decimal Ціна номенклатури. Не аналізується для операції видалення
     | PickUp Int Ознака блюда «З собою» (1-так, 0-ні)
     | Comment String Коментар до позиції
     | Print Bool Замовити і роздрукувати позицію
     | Seat Int Номер клієнта
     | SectionID Int ID відділу
     | Pos Int Порядок виносу
     | TimeOut Int Через скільки хвилин винос
     | ComplexID Int ID групи комплексу
     | SubItemID Int ID тарифної позиції за замовчуванням
     | CmxPrice Decimal Нова ціна позиції комплексу (для кіоску)
     | UseCmxPrice Int 1- використовувати ціну 0 – не використовувати (для кіоску)
     | TarifItemCode2 String Код зведення тарифної позиції*
     | PrintTaskCode Int Код для друку задачі на принтер( замовлення/повторення замовлення/відміна замовлення)
     | Total Decimal Сума позиції. Якщо = 0 то тотал вираховується через ціну і кількість. Якщо > 0 приводиться до цієї суми через знижку
     | ExciseStamps String[] Масив акцизних марок
Payment Payment [] Оплата рахунку. Включає в себе поля як в функції BillPaymentExt (Наприклад: «Payment»:{«PaymentID»:3133,»Summ»:20} ). Необов'язковий параметр.
* - позначення обов’язкового параметру
*TarifItemCode2 вказується для випадків коли TarifItemID невідомий або має більшу перевагу для використання
**Необов'язковий параметр.Якщо він буде переданий, в рахунок буде доданий товар з налаштування з кількістю 1 і з ручною ціною, вказаний в CostOfDelivery

і дорівнює значенню в полі вартість доставки

***Необов'язковий параметр. Якщо він буде переданий, до рахунку буде застосовано Total
****Необов'язковий параметр. Створить рахунок передоплати. Якщо в налаштуваннях вказаний код оплати, рахунок буде закрито
Додатковий опис вихідних параметрів



Response (json)
{
    "Error": "",
    "Success": true,
    "BillID": 19903,
    "BillNumber": 16097,
    "BillTotal": 1400.00,
    "NumType": null,
    "Items": [
        {
            "BillItemID": 25936,
            "AppBillItemID": 1,
            "ParentID": 0,
            "Error": null
        },
        {
            "BillItemID": 25937,
            "AppBillItemID": 2,
            "ParentID": 0,
            "Error": null
        }
    ],
    "Discounts": [],
    "AllItems": [
        {
            "BillItemID": 25936,
            "Total": 1050.00,
            "ParentID": null,
            "TarifitemID": 14467,
            "Name": "Ананас",
            "ShortName": "Ананас",
            "Amount": 3.000,
            "Price": 350.00,
            "BillItemTempID": 1,
            "ModifierID": 0,
            "Status": 0,
            "ComplexID": null,
            "ItemType": "        ",
            "SubItemID": null,
            "SectionID": 12747,
            "ExciseStamps": null
        },
        {
            "BillItemID": 25937,
            "Total": 350.00,
            "ParentID": null,
            "TarifitemID": 14467,
            "Name": "Ананас",
            "ShortName": "Ананас",
            "Amount": 1.000,
            "Price": 350.00,
            "BillItemTempID": 2,
            "ModifierID": 0,
            "Status": 0,
            "ComplexID": null,
            "ItemType": "        ",
            "SubItemID": null,
            "SectionID": 12747,
            "ExciseStamps": null
        }
    ],
    "GUID": "8E7C8545-F81E-4CC8-AF7D-B23CD4B5D066"
}



Типи даних Response
* Параметр Тип Опис
Error String [] Опис помилки, що виникла
Success Bool Успіх виконання запиту
BillID Int ID рахунку
BillNumber Int Hомер рахунку
BillTotal Decimal Cума по рахунку
NumType Int Bид рахунку
Discounts Discounts [] Mасив результату застосування знижок. Елементи масиву структури з такими полями:
     | DiscountType Int Tип дисконту
     | Error String Повідомлення про помилку
     | BillDiscountID Int ID дисконту
Items Items [] Масив позицій комплексного блюда. Елементи масива структури з такими полями:
     | BillItemID Int ID позиції рахунку
     | AppBillItemID Int ID позиції згенерований мобільним додатком
     | ParentID Int ID батьківської позиції
     | Error String Опис помилки що виникла
     | AllItems AllItems [] Масив позицій . Елементи масиву структури з такими полями:
     || BillItemID Int ID позиції
     || Total Decimal Cума
     || ParentID Int ID батьківської позиції
     || TarifitemID Int ID тарифної позиції
     || Name String Hазва
     || Amount Decimal Kількість
     || Price Decimal Ціна
     || ExciseStamps String [] Mасив акцизних марок
     || ModifierID Int ID модифікатору
     || ComplexID Int ID категорії комплексу
     || SubItemID Int ID тарифна позиція за замовчуванням
     || Status Int Cтатус
     || BillItemTempID Int Tимчасовий ID позиції
     || ItemType String [32] Tип суб-позиції
* Позначення обов’язкового параметру
Додатковий опис вхідних параметрів