Úlohy (Kanban)

Modul pre správu úloh vo forme kanban boardu. Úlohy sú organizované v kategóriách (projektoch), kde každá kategória má vlastné stĺpce (stages) a úlohy sa presúvajú medzi nimi.

Kategórie (projekty)

Zoznam kategórií

GET /api/task/categories

Oprávnenie: TASK_LIST

Vráti zoznam všetkých kategórií (kanban boardov).

Stĺpce kategórie

GET /api/task/{category_uuid}/stages

Oprávnenie: TASK_LIST

Vráti zoznam stĺpcov (stages) pre danú kategóriu vrátane názvov, farieb a poradia.

Používatelia v kategórii

GET /api/task/{category_uuid}/users

Oprávnenie: TASK_LIST

Vráti zoznam používateľov priradených ku kategórii.


Úlohy v stĺpci

GET /api/task/stage/{stage_uuid}/tasks

Oprávnenie: TASK_LIST

Filtre:

Parameter Typ Popis
assigned_user_uuid string (uuid) Filtrovať podľa priradeného používateľa
per_page integer Počet záznamov na stránku (default: 10)

Odpoveď: Stránkovaný zoznam úloh v danom stĺpci.


Vytvorenie úlohy

POST /api/task/{category_uuid}

Oprávnenie: TASK_CREATE

Parameter Typ Povinný Popis
title string áno Názov úlohy (max. 255 znakov)
stage_uuid string (uuid) nie UUID stĺpca (ak nie je zadaný, použije sa predvolený)

Detail úlohy

GET /api/task/{task_uuid}

Oprávnenie: TASK_DETAIL

Vráti kompletné údaje o úlohe vrátane:

  • Priradený používateľ
  • Prílohy (súbory)
  • Počet komentárov
  • Priradené podúlohy
  • Rodičovská úloha
  • Pokuty (fines)
  • Stav deadlinu

Úprava názvu úlohy

PUT /api/task/{task_uuid}/title

Oprávnenie: TASK_UPDATE

Parameter Typ Povinný Popis
title string áno Nový názov

Úprava popisu úlohy

PUT /api/task/{task_uuid}/content

Oprávnenie: TASK_UPDATE

Parameter Typ Povinný Popis
description string nie Text popisu úlohy

Presunutie úlohy (kanban)

PUT /api/task/{task_uuid}/stage

Oprávnenie: TASK_UPDATE_POSITION

Parameter Typ Povinný Popis
stage_uuid string (uuid) áno UUID cieľového stĺpca
position integer nie Pozícia v stĺpci (min. 0)

Priradenie používateľa

PUT /api/task/{task_uuid}/assign-user

Oprávnenie: TASK_ASSIGN_USER

Parameter Typ Povinný Popis
user string (uuid) nie UUID používateľa (null = odstrániť priradenie)

Priradenie podúlohy

PUT /api/task/{task_uuid}/assign-task

Oprávnenie: TASK_ASSIGN_TASK

Vytvorí novú úlohu a priradí ju ako podúlohu.

Parameter Typ Povinný Popis
task_category_uuid string (uuid) áno UUID kategórie pre novú úlohu
title string áno Názov podúlohy (max. 255 znakov)

Nastavenie deadlinu

PUT /api/task/{task_uuid}/deadline

Oprávnenie: TASK_DEADLINE

Parameter Typ Povinný Popis
deadline_at string nie Deadline (formát: Y-m-d H:i, null = zrušiť deadline)

Správa príloh

Pridanie súboru k úlohe

POST /api/task/{task_uuid}/file

Oprávnenie: TASK_UPDATE

Parameter Typ Povinný Popis
file file áno Súbor na priloženie

Stiahnutie ZIP archívu príloh

POST /api/task/{task_uuid}/file/zip

Oprávnenie: TASK_DETAIL

Parameter Typ Povinný Popis
files array áno Zoznam UUID médií na stiahnutie
files.* string (uuid) áno UUID média

Odpoveď: ZIP súbor s vybranými prílohami.

Zmazanie prílohy

DELETE /api/task/{task_uuid}/file/{media_uuid}

Oprávnenie: TASK_UPDATE


Zmazanie úlohy

DELETE /api/task/{task_uuid}

Oprávnenie: TASK_DELETE


Integrácie — vytváranie úloh externými aplikáciami

Externé aplikácie (napr. e-catalog) môžu vytvárať úlohy cez dedikovaný integračný endpoint mimo bežnej Sanctum autentifikácie.

Endpoint: POST /api/integrations/tasks

Autentifikácia: statický header X-Api-Key zhodný s konfiguráciou INTEGRATIONS_API_KEY. Bez správneho kľúča server vráti 401. Ak kľúč nie je nakonfigurovaný, vráti 503.

Payload:

{
  "category_name": "Obchod",
  "assigned_role": "SEKRE",
  "title": "E Katalog - Objednávka #2026-00001",
  "description": "<html ...>"
}

Správanie:

  • Vyhľadá TaskCategory podľa name. Ak neexistuje → 404.
  • Vyhľadá prvého používateľa s danou rolou (najnižšie id). Ak žiaden → 404.
  • Vyhľadá prvý stage kategórie podľa sort_order.
  • Vytvorí úlohu so zadaným title a description, kde creator_id aj assigned_user_id sú nastavené na nájdeného používateľa.
  • deadline_at sa automaticky nastaví na 30 dní od vytvorenia.

Použitie: v súčasnosti používa e-catalog na automatické vytvorenie úlohy v kategórii „Obchod" pri vytvorení objednávky.