App
Tento dokument popisuje funkcni chovani webove aplikace shift-planner-app.
Cil aplikace:
- denne sbirat provozni data po skladech
- zobrazit obsazenost smen (
plannedvsexpected) - umoznit rucni i automaticke rizeni zamykani smen
Obrazovky
Obrazovka 1 - Zadani ocekavani
Formular pro zadani denniho stavu skladu.

- tlacitko
Do CMEvraci uzivatele do CME Zmenit denprepne datum formulare- prvni otevreni zobrazuje prazdny formular pro aktualni den
Obrazovka 2 - Potvrzeni zadani stavu

Upravit datavraci na editaci stejneho skladu a dne s predvyplnenymi hodnotami
Obrazovka 3 - Historie stavu
Mesicni prehled ulozenych zaznamu.

Obrazovka 4 - Editace konkretniho dne a skladu
Formular pro upravu starsich zaznamu.

- po
Ulozit datase hodnoty opravdu prepisou - navrat bez ulozeni neprovadi zmenu
Obrazovka 5 - Shift locking
Kalendar pro konfiguraci auto-locku po dnech.

Obsah:
- vyber skladu
- mesicni kalendar
- stav dne
Povoleno/Zakazano - klik na den okamzite prepne
auto_shift_lock_enabled
Dulezite:
- tento pohled nemeni lock v CME
- meni pouze lokalni nastaveni auto-locku (
sp-shift-lock-YYYY-MM.csv)
Obrazovka 6 - Obsazenost smen
Kalendar s obsazenosti smen a rucnim lock/unlock v CME.

Obsah:
- vyber skladu
- mesicni kalendar
Obsazeno(celkem) + rozpadR/OOcekavano- ikona
🔒pouze pro zamcene smeny
Pravidla:
- klik na den vola lock/unlock v CME pres
planovac_den_id Obsazenoje z APInaplanovane_hodinyOcekavanoje z CME DB (expedice_prehled_plan, typ planu3)- pri nedostupnosti API/DB se stranka vykresli, chybejici hodnoty zustanou
0
Datovy model

Kanonicke nazvy jednotek jsou pallet a roll_cage.
Vstupni validace:
- prazdne pole =>
0 - cele cislo v rozsahu
0-1000
Ukladani dat
Data jsou ukladana do CSV po mesicich, UTF-8.
sp-daily-balance-YYYY-MM.csvsp-shift-lock-YYYY-MM.csvsp-shift-occupancy-YYYY-MM.csvsp-warehouse.csv(ciselnik skladu)
Aktualni ciselnik skladu (source of truth je data/sp-warehouse.csv):
| warehouse_id | name | CME_ID |
|---|---|---|
| 1 | Jablonec | 6 |
| 2 | Liberec B | 1 |
| 3 | Liberec A | 8 |
| 4 | Ceska Lipa | 3 |
| 5 | Ostrava | 9 |
Konfigurace CME DB je v cme-db.ini.
Nasazeni a runtime
Aplikace se nasazuje podle pravidel serveru.
Adresarova struktura na serveru:
/home/agent/shift-planner
├── data
├── logs
└── conf
Lokalni beh:
- data mount:
./data - logs mount:
./target/logs - conf mount:
./conf(u app/jobs jako/app/conf)
Logovani
Jednotna konvence:
- aktivni log:
logs/<module_name>.log - rotace po
100 MB - historie:
logs/<module_name>.0001.log,0002, ...
CME authentication mock
Pro vyvoj je pripraven samostatny modul cme-authentication-mock, ktery implementuje Simple Auth Protocol.
Out of scope
- role/permission model nad ramec loginu
- specialni pravidla pro svatky
- pokrocile IAM funkce (MFA, OIDC/OAuth2 kompatibilita)