GET_PS_KAIN

Aprašymas

Prekių/paslaugų kainų, kainynų, akcijų bei nuolaidų informacijos gavimas.

Vienoje vietoje suformuotos visos prekės galimos kainos ir nuolaidos. Jas galima parinkinėti pagal prioritetą, kaip jas parinkinėja Rivile GAMA sistema arba savo nuožiūra suderinus su klientu. Pvz. mažiausia kaina ir didžiausia galima nuolaida klientui.

Specifikacija

Address

POST https://api.manorivile.lt/client/v2

Header
  • ApiKey : Privalomas. Unikalus API raktas išduodamas užsakant paslaugą
  • Content-Type : Privalomas. Kokiu formatu paduodami parametrai ir duomenys (request):
    • application/xml
    • application/json
  • Accept: Neprivalomas. Gražinamo rezultato (response) formatas
    • application/xml(default)
    • application/json (veikia nuo Manorivile-Gateway-1.1.0 versijos)
Body
  • method : GET_PS_KAIN
  • params :
    • bar_kodas: barkodas. Neprivaloma
    • kodas_ps: prekė kodas. Neprivaloma
    • kodas_us: matavimo vieneto kodas. Neprivaloma
    • kodas_is: padalinio kodas. Neprivaloma
    • kodas_ks: kliento kodas. Neprivaloma
    • fil : filtravimo sąlyga. T-SQL tipo where sąlygos užklausa iš lentelės N37 nenurodant pačio where tag'o. Neprivaloma

Prekių sąrašas pagal kliento kodą kodas_ks nefiltruojamas.

Sutartinių kainų gavimui būtina naudoti prekės ir kliento filtrus kodas_ps ir kodas_ks.

pvz Content-Type=application/xml:

<body>
    <method>GET_PS_KAIN</method>
    <params>
        <kodas_ps>PR001</kodas_ps>
        <fil>N37_PAK_TIPAS=1</fil>
    </params> 
</body>

pvz Content-Type=application/json:

{
    "method": "GET_PS_KAIN",
    "params": {
        "kodas_ps":"PR001",
        "fil":"N37_PAK_TIPAS=1"
    }
}
Response (status 200 OK)

Grąžinama informacija XML formate tarp tag'ų <RET_DOK>..</RET_DOK>. Jeigu įrašų nerasta pagal užduotas sąlygas, tuomet gražinama status=200 bei tuščias tag'as

pvz Accept=application/xml:

<RET_DOK>
    <KAINOS>
        <Row_number>1</Row_number>
        <kodas_ps>PR001       </kodas_ps>
        <kodas_us>PAK         </kodas_us>
        <kodas_is>999999999999</kodas_is>
        <bar_kodas>000000000012</bar_kodas>
        <kaina>1.0000</kaina>
        <kain_tipas>KAIN_I33    </kain_tipas>
        <prioritetas>4</prioritetas>
    </KAINOS>
    <KAINOS>
        <Row_number>2</Row_number>
        <kodas_ps>PR001       </kodas_ps>
        <kodas_us>VNT         </kodas_us>
        <kodas_is>999999999999</kodas_is>
        <bar_kodas>477904525150</bar_kodas>
        <kaina>1.5840</kaina>
        <kain_tipas>KAIN_I33    </kain_tipas>
        <prioritetas>4</prioritetas>
    </KAINOS>
</RET_DOK>

pvz Accept=application/json:

{
    "KAINOS": [
        {
            "Row_number": 1,
            "kodas_ps": "PR001",
            "kodas_us": "PAK",
            "kodas_is": 999999999999,
            "bar_kodas": "000000000012",
            "kaina": 1,
            "kain_tipas": "KAIN_I33",
            "prioritetas": 4
        },
        {
            "Row_number": 2,
            "kodas_ps": "PR001",
            "kodas_us": "VNT",
            "kodas_is": 999999999999,
            "bar_kodas": 477904525150,
            "kaina": 1.584,
            "kain_tipas": "KAIN_I33",
            "prioritetas": 4
        }
    ]
}
Response (status 502)

Nepaleistas MANO Rivile Gateway arba kitaip sutrikusi jo veikla

<?xml version='1.0' encoding='UTF-8'?>
<RET_DOK>
    <id/>
    <durationMs>0</durationMs>
    <errorMessage>Rivile GAMA database is unavailable. Please check if the gateway is running and is set up correctly.</errorMessage>
</RET_DOK>
Response (status 504)

Laiku nebuvo gautas Rivile API užklausos atsakymas, pavyzdžiui, apkrauta GAMA duomenų bazė

<?xml version='1.0' encoding='UTF-8'?>
<RET_DOK>
    <id/>
    <durationMs>0</durationMs>
    <errorMessage>No response received from client gateway</errorMessage>
</RET_DOK>

PHP pvz

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
      'ApiKey: uUCz6UD.sKVrjaWRDJAH1c7l4qL2nOoN2K0jARkvuHDdYsss',
      'Content-Type: application/json',
      ]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, '{
    "method": "GET_PS_KAIN",
    "params": {
        "kodas_ps": "1"
    }
}');
$response = curl_exec($ch);
curl_close($ch);

Lentelės

PS_KAIN

Prekių/paslaugų kainų, kainynų, akcijų bei nuolaidų lentelė

Laukas Tipas Aprašymas Pastabos
BAR_KODAS C(40) Bar kodas
KODAS_PS C(12) Prekės kodas
KODAS_US C(12) Matavimo vienetas
KODAS_IS C(12) Padalinys
KAINA N(12,4) Kaina / nuolaida (nuolaidos procentas)
KIEKIS N(14,3) Nuo kurio kiekio
KAINA2 N(12,4) Kaina-2 / nuolaida-2 (nuolaidos procentas)
KIEKIS2 N(14,3) Nuo kurio kiekio-2
KAINA3 N(12,4) Kaina-3 / nuolaida-3 (nuolaidos procentas)
KIEKIS3 N(14,3) Nuo kurio kiekio-3
KAINA4 N(12,4) Kaina-4 / nuolaida-4 (nuolaidos procentas)
KIEKIS4 N(14,3) Nuo kurio kiekio-4
KAIN_TIPAS C(12) Kainų / nuolaidų tipas (aprašymas žemiau)
KAIN_KODAS C(12) Kainų / nuolaidų kodas pagal tipą
PRIORITETAS N(1,0) Prioritetas Rivile GAMA sistemoje
PRADZIA T Kainų / nuolaidų galiojimo pradžia
PABAIGA T Kainų / nuolaidų galiojimo pabaiga

KAIN_TIPAS – kainų nuolaidų tipo galimos reikšmės:

  • KAIN_N13 – akcijų kainos. KAIN_KODAS reikšmė bus eilutės numeris aprašantis prekės akciją.
  • KAIN_I33 – padalinio kainos (mažmeninės)
  • KAIN_N32 – kainynų kainos (didmeninės). KAIN_KODAS reikšmė bus kainyno kodas (A, B, C,...)
  • KAIN_N52 – sutartinė kaina nurodytam klientui. KAIN_KODAS reikšmė bus sutarties kodas Rivile GAMA sistemoje
  • KAIN_G_N52 – sutartinė prekių grupės kaina nurodytam klientui. KAIN_KODAS reikšmė bus sutarties kodas Rivile GAMA sistemoje
  • NUOL_N13 – akcijų nuolaidos. KAIN_KODAS reikšmė bus eilutės numeris aprašantis prekės akciją.
  • NUOL_I33 – padalinio nuolaidos (mažmeninės)
  • NUOL_N31 – nuolaidos matrica aprašyta prekei. KAIN_KODAS reikšmė suformuota sekančiai – yyyyyyxxxxxx, kur yyyyyy – kliento nuolaidos kodas (char 6), xxxxxx – prekės nuolaidos kodas (char 6). Jei klientas nenurodytas, tai yyyyyy visada bus tarpai.
  • NUOL_N52 – Sutartinė nuolaida nurodytam klientui. KAIN_KODAS reikšmė bus sutarties kodas Rivile GAMA sistemoje
  • NUOL_G_N52 – Sutartinė prekių grupės nuolaida nurodytam klientui. KAIN_KODAS reikšmė bus sutarties kodas Rivile GAMA sistemoje