Lokace — Locations¶
Správa hierarchické struktury lokací (budovy, patra, místnosti, sklady…).
Base path: /api/locations
Endpointy¶
POST /api/locations — Vytvoření lokace¶
| Pole | Typ | Popis |
|---|---|---|
name |
string | Název lokace |
code |
string? | Kód / zkratka |
parentLocationId |
long? | Nadřazená lokace (null = kořen) |
Response 201 Created — vytvořená lokace.
GET /api/locations — Seznam všech lokací¶
Vrátí plochý seznam všech lokací (bez hierarchického uspořádání).
GET /api/locations/{id} — Detail lokace¶
| Parametr | Výchozí | Popis |
|---|---|---|
includeChilds |
false |
Zahrnout podlokace |
Response 200 OK:
{
"oid": 5,
"name": "2. patro",
"code": "2NP",
"parentLocationId": 1,
"parentLocation": { "oid": 1, "name": "Budova A" },
"childLocations": [
{ "oid": 6, "name": "Kancelář 201", "code": "K201" },
{ "oid": 7, "name": "Kancelář 202", "code": "K202" }
]
}
GET /api/locations/findByName¶
PUT /api/locations/{id} — Aktualizace lokace¶
PUT /api/locations/5
Content-Type: application/json
{
"oid": 5,
"name": "2. patro — přejmenováno",
"code": "2NP",
"parentLocationId": 1
}
GET /api/locations/{id}/articles — Majetek na lokaci¶
Vrátí seznam majetku (Article) evidovaného na dané lokaci přes ArticleLocation.
Datový model Location¶
| Pole | Typ | Popis |
|---|---|---|
OID |
long | Primární klíč |
Name |
string | Název lokace |
Code |
string? | Kód / zkratka |
ParentLocationId |
long? | FK → Location (self-reference, null = kořenová lokace) |
ParentLocation |
Location? | Navigační vlastnost na nadřazenou lokaci |
ChildLocations |
List\<Location> | Navigační vlastnost na podlokace |
Příklad hierarchie¶
Budova A (OID: 1, ParentLocationId: null)
├─ Přízemí (OID: 2, ParentLocationId: 1)
│ ├─ Recepce (OID: 3, ParentLocationId: 2)
│ └─ Zasedací místnost (OID: 4, ParentLocationId: 2)
└─ 2. patro (OID: 5, ParentLocationId: 1)
├─ Kancelář 201 (OID: 6, ParentLocationId: 5)
└─ Kancelář 202 (OID: 7, ParentLocationId: 5)