79 lines
2.5 KiB
Markdown
79 lines
2.5 KiB
Markdown
# Krok 07 - Wizard - Segmentácia biznisu (Krok 1)
|
|
|
|
## Kontext projektu
|
|
Prvým krokom wizardu je výber kategórie podnikania. Tento výber ovplyvňuje ďalšie otázky (Smart answers) a obsah, ktorý AI vygeneruje.
|
|
|
|
## Pred implementáciou si preštuduj
|
|
- `docs/wizard.md` - Sekcia 2 (Krok 1 - Segmentácia biznisu).
|
|
|
|
## Cieľ
|
|
Implementovať UI pre výber kategórie a podkategórie podnikania a uloženie týchto dát na backend.
|
|
|
|
## Požadované zmeny
|
|
1. Vytvorenie súboru `data/categories.json` s definíciou kategórií (Gastro, Krása, Remeslá, atď.) a ich podkategórií.
|
|
2. Na frontende (`wizard.js`):
|
|
- Načítanie kategórií (môže byť hardcoded v JS alebo načítané cez API).
|
|
- Zobrazenie kategórií ako "radio cards" (vizuálne boxy s ikonou/názvom).
|
|
- Po výbere kategórie zobrazenie podkategórií (napr. ako chips alebo dropdown).
|
|
- Pole pre vlastný popis, ak používateľ zvolí "Iné".
|
|
- Volanie `saveStep` pri prechode na ďalší krok.
|
|
3. Na backende (`ajax.php`):
|
|
- Implementácia akcie `saveStep`.
|
|
- Validácia, že vybraná kategória a podkategória sú platné.
|
|
- Uloženie do `wizard_data.business_category`.
|
|
|
|
## Implementačné pravidlá
|
|
- Používaj moderné UI prvky (napr. CSS Grid pre radio cards).
|
|
- Zabezpeč plynulú interakciu pri zmene kategórie (reset podkategórií).
|
|
|
|
## Súbory ktoré je potrebné vytvoriť
|
|
- `data/categories.json`
|
|
|
|
## Súbory ktoré je potrebné upraviť
|
|
- `public/js/wizard.js` (logika pre Krok 1)
|
|
- `public/index.html` (DOM pre Krok 1)
|
|
- `public/ajax.php` (implementácia `saveStep`)
|
|
|
|
## API a dátové štruktúry
|
|
Payload pre `saveStep`:
|
|
```json
|
|
{
|
|
"step": 1,
|
|
"data": {
|
|
"business_category": {
|
|
"group": "gastro",
|
|
"subcategory": "restaurant",
|
|
"custom_description": null
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
## Frontend požiadavky
|
|
- Atraktívne zobrazenie kategórií.
|
|
- Intuitívny výber podkategórie.
|
|
|
|
## Backend požiadavky
|
|
- Validácia vstupov.
|
|
|
|
## Testovací scenár
|
|
1. Vyber kategóriu "Gastro".
|
|
2. Vyber podkategóriu "Reštaurácia".
|
|
3. Klikni na "Pokračovať".
|
|
4. Over v JSONe projektu v `data/projects/`, či sa dáta správne uložili.
|
|
5. Skús zvoliť "Iné" a napísať vlastný text.
|
|
|
|
## Definition of Done
|
|
- Používateľ vie vybrať segment biznisu.
|
|
- Dáta sa správne ukladajú na server.
|
|
- UI reaguje na výbery používateľa.
|
|
|
|
## Obmedzenia
|
|
- Nepoužívaj externé UI knižnice (napr. Vuetify, Material UI).
|
|
|
|
## Výstup
|
|
- zoznam vytvorených súborov
|
|
- zoznam upravených súborov
|
|
- stručné zhrnutie vykonaných zmien
|
|
- prípadné otvorené problémy
|