Přes REST API lze ceníkovým položkám přiřadit jejich stav. Slouží k tomu vlastnost stavy na evidenci cenik a princip je stejný jako u štítků — jde o relaci emulovanou jako textová položka.
ℹ️ Zadávají se kódy stavů z číselníku typ-stavu-ceniku. Neexistující kód API odmítne s 400 a kódem importXmlNeexistujeStav — Neexistuje stav s kódem …
Přidání stavu
Stav přiřadíte metodou PUT nebo POST na endpoint evidence ceníku:
PUT https://demo.flexibee.eu/c/demo/cenik.xml
<?xml version="1.0" encoding="utf-8"?>
<winstrom version="1.0">
<cenik>
<id>code:POLOZKA</id>
<stavy>AKCE</stavy>
</cenik>
</winstrom>
Nebo v JSON:
{
"winstrom":{
"@version":"1.0",
"cenik":[
{
"id":"code:POLOZKA",
"stavy":"AKCE"
}
]
}
}
Více stavů naráz
Pro přiřazení více stavů oddělte jejich kódy čárkou:
<?xml version="1.0" encoding="utf-8"?>
<winstrom version="1.0">
<cenik>
<id>code:POLOZKA</id>
<stavy>AKCE,NOVINKA</stavy>
</cenik>
</winstrom>
📝 Při čtení vrací API stavy oddělené čárkou a mezerou a v pořadí podle číselníku, ne v tom, v jakém jste je poslali — například NOVINKA, AKCE.
Změna a zrušení stavů
Bez dalšího atributu import stavy jen přidává — dosud přiřazené stavy zůstanou a prázdný element <stavy></stavy> je nezruší. Chcete-li stávající stavy nahradit nebo zrušit, přidejte atribut removeAll="true".
Nahrazení celého seznamu stavů:
<winstrom version="1.0">
<cenik>
<id>code:POLOZKA</id>
<stavy removeAll="true">VÝPRODEJ</stavy>
</cenik>
</winstrom>
Zrušení všech stavů:
<winstrom version="1.0">
<cenik>
<id>code:POLOZKA</id>
<stavy removeAll="true"></stavy>
</cenik>
</winstrom>
V JSON se atribut zapisuje jako samostatná vlastnost stavy@removeAll:
{
"winstrom":{
"@version":"1.0",
"cenik":[
{
"id":"code:POLOZKA",
"stavy@removeAll":"true",
"stavy":"NOVINKA"
}
]
}
}
