Funkcie na prácu so zariadeniami. Vytvorenie prenájmu pre zariadenie a k nemu všetky požadované záznamy v databáze.
Rozhranie dodáva zoznam typov zariadeni.
Príklad odpovede:
{
"items": [
{
"id_typ": 1,
"typ": "Typ 1",
"Row#": "1"
},
{
"id_typ": 2,
"typ": "Typ 2",
"Row#": "2"
}
],
"paging": {
"offset": 0,
"limit": 100,
"maximum": 61
}
}
Rozhranie dodáva zoznam stavov zariadeni.
Príklad odpovede:
{
"items": [
{
"id_stav": 1,
"stav": "Na sklade",
"Row#": "1"
},
{
"id_stav": 2,
"stav": "V servise",
"Row#": "2"
}
],
"paging": {
"offset": 0,
"limit": 100,
"maximum": 61
}
}
Rozhranie dodáva zoznam zariadeni.
Príklad odpovede:
{
"items": [
{
"id_equipment": 1,
"cislo": "Z001",
"nazov": "Zariadenie 1",
"Row#": "1"
},
{
"id_equipment": 2,
"cislo": "Z002",
"nazov": "Zariadenie 2",
"Row#": "2"
}
],
"paging": {
"offset": 0,
"limit": 100,
"maximum": 61
}
}
Rozhranie vytvorí nové zariadenie.
Príklad odoslanej požiadavky:
{
"cislo": "Z001",
"nazov": "Zariadenie 1"
}
Rozhranie potvrdí vytvorenie zariadenia, alebo vypíše chybu, že zariadenie s daným číslom už existuje.
Rozhranie aktualizuje zoznam zariadeni.
Príklad odoslanej požiadavky:
[
{
"cislo": "Z001",
"nazov": "Zariadenie 1"
},
{
"cislo": "Z002",
"nazov": "Zariadenie 2"
}
]
Rozhranie potvrdí vytvorenie zariadení tak, že vráti počet vytvorených zariadení.
Príklad odpovede:
{
"count": 2
}
Rozhranie vytvorí prenájom pre zariadenie a k nemu všetky požadované záznamy v databáze. Pod pojmom zariadenie sa v tomto prípade myslí napríklad konkrétny box, ktorý sa prenajíma. Môže to byť aj iný druh zariadenia, napríklad vozík, atď.
Popis logiky:
zariadenie.cislo sa vyhľadá zariadenie. Ak neexistuje, vytvorí sa. V odpovedi sa vráti id_equipment. Ak nie je tento field v požiadavke, tak sa nevytvorí ani prenájom a vráti sa chyba.firma.ico sa vyhľadá firma. Ak neexistuje, vytvorí sa. V odpovedi sa vráti id_firma. Keďže je súčasťou procesu aj fakturácia, tak sa skontroluje aj firma.dic, firma.dph, firma.oreg, firma.psc, firma.mesto, firma.ulica, firma.stat.osoba.priezvisko a osoba.meno sa vyhľadá osoba. Ak neexistuje, vytvorí sa. V odpovedi sa vráti id_osoba. Keďže je súčasťou procesu aj fakturácia, tak sa skontroluje aj osoba.psc, osoba.mesto, osoba.ulica, osoba.stat.id_spis. Názov spisu identický s názvom prenájmu. Toto je len informatívny údaj, v Optivuse slúži na vytvorenie kontajnera, ktorý celý tento prenájom zastrešuje.id_objednavka. Objednávky sa vytvárajú ako jednoriadkové, pričom riadkom objednávky je daný prenájom.id_faktura. Ak je v prenájme uhradene true, tak sa faktúra označí ako uhradená. Ak prichádza požiadavka z prostredia, ktoré vyberá platby, treba toto nastaviť na true, aby aj v Optivuse bola faktúra označená ako uhradená a bola k nej priradená platba.id_prenajom. Toto je len informatívny údaj, v Optivuse slúži na vytvorenie prenájmu a jeho sledovanie vo vzťahu k zariadeniu.Dôležité poznámky:
zariadenie.cislo, tak sa nevytvorí ani prenájom a vráti sa chyba.prenajom.datum_od alebo prenajom.datum_do, tak sa nevytvorí ani prenájom a vráti sa chyba.prenajom.datum_vystavenia alebo prenajom.datum_splatnosti alebo prenajom.datum_dodania, tak sa nevytvorí ani prenájom a vráti sa chyba. Pri týchto troch dátumoch si treba uvedomiť, že sa jedná o dátumy fakturácie a dodania tovaru/služby. Tieto dátumy sú povinné pre vytvorenie faktúry. Dôležité je správne stanovenie dátumu dodania.prenajom.cena alebo prenajom.dph alebo prenajom.mnozstvo alebo prenajom.mj, tak sa nevytvorí ani prenájom a vráti sa chyba. Hodnota DPH sa kontroluje na platnosť voči číselníku DPH v Optivuse. Ak nie je v požiadavke platná hodnota DPH, tak sa nevytvorí ani prenájom.prenajom.uhradene na true. To v programe vytvorí faktúru v stave uhradená a priradí k nej platbu.prenajom.popis, tak sa nevytvorí ani prenájom a vráti sa chyba.Príklad odoslanej požiadavky:
{
"zariadenie": {
"cislo": "Z001",
"nazov": "Zariadenie 1"
},
"firma": {
"ico": "12345678",
"nazov": "Firma 1",
"psc": "12345",
"mesto": "Mesto",
"ulica": "Ulica",
"stat": "Slovensko",
"dic": "DIČ",
"dph": "IČ DPH",
"oreg": "Údaje z obchodného registra",
"email": "[EMAIL_ADDRESS]",
"tel": "123456789"
},
"osoba": {
"priezvisko": "Priezvisko",
"meno": "Meno",
"email": "[EMAIL_ADDRESS]",
"tel": "123456789",
"mobil": "123456789",
"psc": "12345",
"mesto": "Mesto",
"ulica": "Ulica",
"stat": "Slovensko"
},
"prenajom": {
"datum_od": "2026-04-02",
"datum_do": "2026-04-03",
"popis": "Popis prenájmu. Z tohto popisu sa vytvorí riadok na faktúre.",
"cena": 100,
"dph": 23,
"mnozstvo": 1,
"mj": "ks",
"datum_vystavenia": "2026-04-01",
"datum_splatnosti": "2026-04-01",
"datum_dodania": "2026-04-01",
"uhradene": true
}
}
Rozhranie potvrdí vytvorenie prenájmu a vráti ID vytvoreného prenájmu.
Príklad odpovede:
{
"id_equipment": 1,
"id_firma": 1,
"id_osoba": 1,
"id_prenajom": 1,
"id_spis": 1,
"id_objednavka": 1,
"id_faktura": 1
}
Rozhranie vytvorí PDF faktúru k prenájmu zariadenia. Predchádzajúce rozhranie /interface/{db}/eshop/v1/equipment/rent vytvorí prenájom a faktúru interne v databáze, ale nevytvorí PDF faktúru. Toto rozhranie je volané z prostredia, ktoré potrebuje PDF faktúru a pomocou neho ju vygeneruje. Presný vzhľad faktúry je daný šablónou v Optivuse.
Upozornenie:
Momentálne je táto funkcia v testovacej fáze. Vykoná len všetky validačné testy. Odpovedá iba fiktívnou faktúrou. V budúcnosti bude odpovedať reálnou faktúrou.
Popis logiky:
Musíte zadať ID prenájmu alebo faktúry, ktoré ste získali z predošlej požiadavky. id_faktura má prednosť. Ak zadáte len id_prenajom, tak rozhranie vyhľadá faktúru podľa prenájmu. Ak nenájde ani jedno, tak vráti chybu.
Formátovanie:
format, tak sa vráti PDF faktúra. Konvertovaná cez Gotenberg v binárnej podobe.format, tak sa vráti faktúra v danom formáte.
Šablóna:
Šablóna sa navrhuje priamo v programe Optivus v databáze. Túto šablónu si požiadavka na vytvorenie reportu faktúry môže použiť. Ak nie uvedené, akú šablónu cez API potrebujete, tak sa použije prednastavená šablóna faktura_optivus. Môžete si vynútiť inú šablónu pomocou parametra template. To sa hodí napríklad pri testovaní novej šablóny, aby nebol existujúci proces ohrozený.
Príklad odoslanej požiadavky
{
"id_prenajom": 25,
"id_faktura": 26,
"format": "pdf|json|html",
"template": "nazov_sablony (nepovinné)"
}
Príklad chybovej odpovede:
{
"error": "Nie je možné identifikovať faktúru podľa prenájmu(25)."
}
Príklad odpovede vo formáte JSON:
{
"pdf": "base64 encoded pdf...",
}