Get Bill

Матеріал з SERVIO
Перейти до навігації Перейти до пошуку

Функція повертає рахунок і його вміст

Розділ містить методи, необхідні для отримання рахунку за номером або GUID-кодом з бази даних


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



Request Headers
KEY VALUE
Content-Type application/json
AccessToken



Body raw (json)
 {
    "BillID": "{{billid}}",
    //"CodeGUID":"805CC7A4-48F5-445C-9290-BE71964F0E6B",
    "Locked_": false
 }



Типи даних Body
* Параметр Тип Опис
* SystemCode String[32] Код системи
* BillID Int ID рахунку
TempID Int Тимчасовий id рахунку. Шукає рахунок за цим кодом. Якщо не знаходить – повертає BillID = -1 (необов'язковий параметр)
Locked Bool Заблокувати рахунок (необов'язковий параметр)
CodeGUID String GUID-код рахунку
* Позначення обов’язкового параметру
Додатковий опис вихідних параметрів



Response (json)
{
"Error": "",
    "Success": true,
    "BillID": 19738,
    "BillNumber": 15978,
    "Number": 15978,
    "BillType": 2,
    "BlockedStationCode": null,
    "BlockedUserName": null,
    "Closed": "2022-07-18 12:24:03",
    "Comment": null,
    "CompanyCode": null,
    "CompanyName": null,
    "Description": null,
    "EventName": null,
    "FirstDate": null,
    "IsPaid": true,
    "IsPrepared": true,
    "LastDate": null,
    "Locked": null,
    "PlaceCode": "TABLE300818110717487",
    "Printed": "2022-07-18 12:23:44",
    "ShortComment": null,
    "SubTotal": 595,
    "Total": 535.5,
    "UserName": "Expert Solution",
    "Items": [
        {
            "BillItemID": 25647,
            "CategoryID": 147,
            "CategoryName": "МОЯ КАТЕГОРИЯ",
            "Comment": null,
            "ComplexID": null,
            "Description": null,
            "EnterpriseID": 205,
            "EnterpriseTaxCode": null,
            "ExciseStamp": false,
            "ExciseStamps": null,
            "ItemType": "        ",
            "Name": "Коктейль Оголена Crazy Даша",
            "Ordered": "2022-07-18 12:23:44",
            "ParentID": null,
            "PhotoUrl": null,
            "PickUp": 0,
            "Pos": 0,
            "Price": 300,
            "Quantity": 1,
            "Seat": 0,
            "SectionID": 3101,
            "ShortName": "Коктейль Оголена Crazy Даша",
            "Status": 1,
            "SubItemID": null,
            "TarifItemID": 14445,
            "Total": 270,
            "TypeID": null
        },
        {
            "BillItemID": 25648,
            "CategoryID": 147,
            "CategoryName": "МОЯ КАТЕГОРИЯ",
            "Comment": null,
            "ComplexID": null,
            "Description": null,
            "EnterpriseID": 205,
            "EnterpriseTaxCode": null,
            "ExciseStamp": false,
            "ExciseStamps": null,
            "ItemType": "        ",
            "Name": "Коктейль Госпожа",
            "Ordered": "2022-07-18 12:23:44",
            "ParentID": null,
            "PhotoUrl": null,
            "PickUp": 0,
            "Pos": 0,
            "Price": 295,
            "Quantity": 1,
            "Seat": 0,
            "SectionID": 3101,
            "ShortName": "Коктейль Госпожа",
            "Status": 1,
            "SubItemID": null,
            "TarifItemID": 14453,
            "Total": 265.5,
            "TypeID": null
        }
    ],
    "Discounts": [
        {
            "Applied": "2022-07-15 11:50:41",
            "BillID": 19738,
            "CardID": null,
            "Discount": 10.0000,
            "DiscountID": 7516,
            "DiscountType": 3,
            "OwnerCode": null,
            "OwnerID": null,
            "OwnerName": null
        }
    ],
    "IdTemps": [
        {
            "idTemp": 431492278
        },
        {
            "idTemp": 619128041
        },
        {
            "idTemp": 1113879060
        },
        {
            "idTemp": 856863549
        }
    ],
    "ChangeDate": "2022-07-18 12:24:03",
    "ChangeDateUTC": "2022-07-18T09:24:03.71Z",
    "WaitedFor": null,
    "WaitedFrom": null,
    "EstimatedPaymentID": null,
    "EstimatedPaymentName": null,
    "CodeGUID": "6049AF6A-54D9-48E2-AA7C-B0A4D15E1081",
    "AdvancePay": 0,
    "IsUseCard": false,
    "GuestCount": 3,
    "DeliveryAddressComment": null,
    "DeliveryComment": null,
    "OpenUserID": 0,
    "idTemp": null,
    "NumType": 1,
    "NumName": "Рахунок гостя"
}



Типи даних Response
* Параметр Тип Опис
Error String [] Опис помилки, що виникла
Success Bool Успіх виконання запиту
BillType Int Тип рахунку:

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

FirstDate Datetime Дата початку надання послуг. Для рахунків бронювання обов”язковий параметр, для інших ігнорується
BillID Int ID рахунку
LastDate Datetime Дата закінчення надання послуг. Для рахунків бронювання обов”язковий параметр, для інших ігнорується
UserName String[64] Користувач що створив рахунок
PlaceCode String[32] Код місця надання послуги для рахунків бронювання, допустиме значення NULL для інших
EventName String[32] Назва заходу для рахунків бронювання, допустиме значення NULL для інших
CompanyCode String[32] Код компанії, допустиме значення NULL
CompanyName String[32] Назва компанії, допустиме значення NULL
Description String [500] Опис рахунку, допустиме значення NULL
ShortComment String [255] Короткий коментар до рахунку
Total Decimal Сума по рахунку
SubTotal Decimal Сума по рахунку без знижки
IsPrepared Boolean Ознака підготовки рахунку до закриття (встановлюється перед сплатою рахунку і його закриттям)
Printed Datetime Дата друку рахунку
Closed Datetime Дата закриття рахунку
Locked Datetime Дата блокування
IsPaid Boolean Рахунок сплачений
IsUseCard Boolean Чи додана до рахунку картка
NumType Int Вид рахунку (Null якщо немає)
GuestCount Int Кількість гостей
NumName String Назва виду рахунку (Null якщо немає)
DeliveryComment String Коментар до рахунку доставки
DeliveryAddressComment String Коментар до адреси доставки
DeliveryPersonComment String Коментар до персони
idTemp Int Тимчасовий код рахунку
ChangeDate Datetime Дата зміни
WaitedFrom Datetime Дата доставки замовлення(з)
WaitedFor Datetime Дата доставки замовлення(до)
Items BillList[] Массив опису номенклатури. Елементи масиву з наступними полями:
     | BillItemID Int ID позиції рахунку
     | ParentID Int ID-вказівник батьківської/базової позиції рахунку
     | TarifItemID Int ID номенклатури
     | ModifierID Int ID модифікатора стану (для режиму авторизації)
     | Name String [128] Назва номенклатури
     | ShortName String [32] Коротка назва номенклатури
     | Description String [500] Опис номенклатури
     | Comment String [1024] Kоментар до позиції
     | Quantity Decimal Кількість номенклатури
     | Price Decimal Ціна за одиницю номенклатури
     | SectionID Int ID відділу
     | Total Decimal Ціна позиції (після знижки или вручну тільки за авторизацією)
     | ItemType String [32] Тип суб-позиції
     | PhotoUrl String [128] Url вказівник на картинку в інтернеті
     | ComplexID Int ID комплексу
     | SubItemName String Назва номенклатури інгридієнту комплексу за замовчуванням
     | Ordered Datetime Дата замовлення позиції рахунку
     | Status Int Статус блюда:

0 – не замовлено,
1 – замовлено,
2 – прийнято в роботу,
4 – готово,
7 – готово до відвантаження

     | IsManualPrice Int Можливість застосування ручної ціни (для режиму авторизації)
     | Seat Int Номер клієнта
     | Pos Int Порядок виносу
     | BillItemTempID Int Тимчасовий код
     | TimeOut Int Через скільки хвилин винос
     | EnterpriseTaxCode String Код зведення (відповідає поєднанню підприємства і податку)
     | TypeID Int Тип номенклатури (для режиму авторизації)

0 - Надбавка
1 - Продукція (можлива не ціла кількість)
2 - Продукція (поштучно – тільки ціла кількість)
3 - Продукція (за вагою)
4 - Товар (можлива не ціла кількість)
5 - Товар (поштучно – тільки ціла кількість)
6 - Товар (за вагою)
7 - Послуга

     | ExciseStamps String [] Масив акцизних марок
Discounts DiscountList[] Масив знижок по рахунку з наступними полями (тільки після авторизації)
     | DiscountID Int ID дисконту
     | BillID Int ID рахунку
     | DiscountType Int Тип знижки:

1 - картка,
2 - по групі карток,
3 - у відсотковому вираженні,
4 - в грошовому,
5 - акційний купон

     | Applied String [128] Час застосування
     | OwnerID Int ID персони
     | OwnerName String [500] Iм'я персони
     | OwnerCode String [1024] Kод персони
     | Discount Decimal Дисконт (% або сума, залежить від DiscountType)
     | CardID Int ID дисконтної картки
IdTemps IdTemp [] Масив id Temp
     | idTemp Int Тимчасовий ID позиції при створенні в рахунку
CodeGUID String GUID-код
AdvancePay Decimal Сума передплати
BlockedUserName String Iм'я користувача що заблокував рахунок
     | BlockedStationCode String Код станції з якої заблокували рахунок
* Позначення обов’язкового параметру
Додатковий опис вхідних параметрів