Majetek — Articles¶
Správa hmotného majetku (artikly). Obsahuje CRUD operace, vyhledávání podle různých kritérií a správu lokací majetku.
Base path: /api/articles
Endpointy¶
POST /api/articles — Vytvoření majetku¶
Request body — objekt Article:
{
"code": "NTB-001",
"name": "Notebook Dell XPS 15",
"categoryId": 1,
"typeId": 2,
"stateId": 1,
"price": 35000.00,
"serialNumber": "SN123456",
"rfId": null,
"userId": 5,
"responsibleUserId": 3,
"isDisposal": false
}
Response 201 Created — vytvořený Article s přiděleným OID.
PUT /api/articles/{id} — Aktualizace majetku¶
Request body — stejná struktura jako POST, OID musí odpovídat {id}.
Response: 200 OK | 400 Bad Request (neshodná ID) | 404 Not Found
GET /api/articles — Seznam všech majetků¶
Response 200 OK — pole objektů Article.
Výkon
Endpoint vrací kompletní seznam. Pro velké databáze zvažte filtrované endpointy níže.
GET /api/articles/{id} — Detail majetku¶
Response 200 OK:
{
"oid": 42,
"code": "NTB-001",
"name": "Notebook Dell XPS 15",
"category": { "oid": 1, "name": "Výpočetní technika" },
"type": { "oid": 2, "name": "Notebook" },
"state": { "oid": 1, "name": "V provozu" },
"price": 35000.00,
"serialNumber": "SN123456",
"rfId": null,
"userId": 5,
"responsibleUserId": 3,
"isDisposal": false,
"disposalDT": null
}
Response 404 pokud majetek neexistuje.
GET /api/articles/getbycode — Vyhledání dle kódu¶
Vrátí majetek s přesně odpovídajícím kódem.
GET /api/articles/{id}/locations — Lokace majetku¶
Response 200 OK — seznam ArticleLocation objektů:
[
{
"oid": 10,
"articleId": 42,
"locationId": 5,
"location": { "oid": 5, "name": "Kancelář 201", "code": "K201" },
"quantity": 1
}
]
Filtrované vyhledávání¶
Všechny find* endpointy přijímají parametr filterOp (viz Filtrační operátory).
GET /api/articles/findById¶
GET /api/articles/findByCode¶
GET /api/articles/findBySerialNo¶
GET /api/articles/findByRFID¶
GET /api/articles/findByName¶
Datový model Article¶
| Pole | Typ | Popis |
|---|---|---|
OID |
long | Primární klíč |
Code |
string | Inventární číslo / kód |
Name |
string | Název majetku |
CategoryId |
long | FK → ArticleCategory |
TypeId |
long | FK → ArticleType |
StateId |
long | FK → ArticleState |
Price |
decimal | Pořizovací cena |
SerialNumber |
string? | Výrobní číslo |
RfId |
string? | RFID tag |
UserId |
long? | FK → User (přiřazený uživatel) |
ResponsibleUserId |
long? | FK → User (odpovědná osoba) |
IsDisposal |
bool | Příznak navržení k vyřazení |
DisposalDT |
DateTime? | Datum vyřazení |
DisposalMethodId |
long? | FK → ArticleDisposalMethod |
DisposalReasonId |
long? | FK → ArticleDisposalReason |
Deleted |
bool | Soft delete |
CreatedDT / ModifiedDT |
DateTime | Audit timestamps |
CreatedBy / ModifiedBy |
string | Audit uživatel |