diff --git a/README.md b/README.md index 928832d..34a89b6 100644 --- a/README.md +++ b/README.md @@ -29,46 +29,65 @@ Aplikace sestává ze tří modulů. - `docker compose -f compose-traefik.yml up --build -d` ## TODO +- [ ] Vybraná jídla strávníků zobrazovat v samostatném sloupci +- [ ] Umožnit výběr/zadání preferovaného času odchodu na oběd + - Hodí se např. pokud má někdo schůzky +- [ ] Možnost úhrady celé útraty jednou osobou + - Základní myšlenka: jedna osoba uhradí celou útratu (v zájmu rychlosti odbavení), ostatním se automaticky vygeneruje QR kód, kterým následně uhradí svoji část útraty + - Obecně to bude problém např. pokud si někdo objedná něco navíc (pití apod.) + - [ ] Tlačítko "Uhradit" u každého řádku podniku - platí ten, kdo kliknul + - [ ] Zobrazeno bude pouze, pokud má daný uživatel nastaveno číslo účtu + - [ ] Dialog pro zadání spropitného, které se následně rozpočte rovnoměrně všem strávníkům + - [ ] Generování a zobrazení QR kódů ostatním strávníkům + - [ ] Umožnit u každého strávníka připočíst vlastní částku (např. za pití) + - [ ] Umožnit (např. zaškrtávátky) vybrat, za koho bude zaplaceno (pokud někdo bude platit zvlášť) +- [ ] Podpora pro notifikace v externích systémech (Gotify, Discord, MS Teams) + - [ ] Umožnit zadat URL/tokeny uživatelem + - [ ] Umožnit uživatelsky konfigurovat typy notifikací, které se budou odesílat + - [ ] Zavést notifikace typu "Jdeme na oběd" + - [ ] Notifikaci dostanou pouze uživatelé, kteří mají vybranou stejnou lokalitu +- [ ] Možnost náhledu na ostatní dny v týdnu (např. pomocí šipek) + - [ ] Možnost výběru oběda na následující dny v týdnu +- [ ] Vylepšit parsery restaurací + - [ ] Někdy jsou v názvech jídel přebytečné mezery kolem čárek ( , ) + - [ ] Sladovnická + - [ ] Zbytečná prvotní validace indexu, datum konkrétního dne je i v samotné tabulce s jídly, viz TODO v parseru + - [ ] U Motlíků + - [ ] Validovat, že vstupní datum je zahrnuto v rozsahu uvedeném nad tabulkou (např. '12.6.-16.6.') + - [ ] Jídelní lístek se stahuje jednou každý den, teoreticky by stačilo jednou týdně (za předpokladu, že se během týdne nemění) + - [ ] TechTower + - [ ] Validovat, že vstupní datum je zahrnuto v rozsahu uvedeném nad tabulkou (typicky 'Obědy 12. 6. - 16. 6. 2023 (každý den vždy i obědový bufet)') + - [ ] Jídelní lístek se stahuje v rámci prvního požadavku daný den, ale často se jídelní lístek na stránkách aktualizuje až v průběhu pondělního dopoledne a ten zobrazený je proto neaktuální + - Stránka neposílá hlavičku o času poslední modifikace, takže o to se nelze opřít + - Nevím aktuálně jak řešit jinak, než častějším scrapováním celé stránky +- [ ] Nasazení nové verze v Docker smaže veškerá data (protože data.json není vystrčený ven z kontejneru) + - [ ] Zavést složku /data +- [ ] Mazat z databáze data z minulosti, aktuálně je to k ničemu +- [ ] Skripty pro snadné spuštění vývoje na Windows (ekvivalent ./run_dev.sh) +- [ ] Implementovat Pizza day + - [ ] Zobrazit upozornění před smazáním/zamknutím/odemknutím pizza day + - [ ] Pizzy se samy budou při naklikání přidávat do košíku + - [ ] Nutno nejprve vyřešit předávání PHPSESSIONID cookie na pizzachefie.cz pomocí fetch() + - [ ] Ceny krabic za pizzu jsou napevno v kódu - problém, pokud se někdy změní + - [ ] QR kód objednávat už po objednání + - [x] Umožnit uzamčení objednávek zakladatelem + - [x] Možnost uložení čísla účtu + - [x] Automatické generování a zobrazení QR kódů + - [x] https://qr-platba.cz/pro-vyvojare/restful-api/ + - [x] Zobrazovat celkovou cenu objednávky pod tabulkou objednávek + - [x] Umožnit přidat k objednávce poznámku (např. "bez oliv") + - [x] Negenerovat QR kód pro objednávajícího - [x] Umožnit smazání aktuální volby "popelnicí", místo nutnosti vybrat prázdnou položku v selectu - [x] Přívětivější možnost odhlašování - [x] Vyřešit responzivní design pro použití na mobilu - [x] Vyndat URL na Food API do .env - [x] Neselhat při nedostupnosti nebo chybě z Food API - [x] Dokončit docker-compose pro kompletní funkčnost -- [x] Implementovat Pizza day - - [x] Umožnit uzamčení objednávek zakladatelem - - [x] Možnost uložení čísla účtu - - [x] Automatické generování a zobrazení QR kódů - - [x] https://qr-platba.cz/pro-vyvojare/restful-api/ - - [x] Zobrazovat celkovou cenu objednávky pod tabulkou objednávek - - [ ] Zobrazit upozornění před smazáním/zamknutím/odemknutím pizza day - - [x] Umožnit přidat k objednávce poznámku (např. "bez oliv") - - [x] Negenerovat QR kód pro objednávajícího - - [ ] Pizzy se samy budou při naklikání přidávat do košíku - - [ ] Nutno nejprve vyřešit předávání PHPSESSIONID cookie na pizzachefie.cz pomocí fetch() - - [ ] Ceny krabic za pizzu jsou napevno v kódu - problém, pokud se někdy změní -- [ ] Předvyplnění poslední vybrané hodnoty občas nefunguje, viz komentář -- [ ] Nasazení nové verze v Docker smaže veškerá data (protože data.json není venku) - [x] Vylepšit dokumentaci projektu - [x] Popsat závislosti, co je nutné provést před vývojem a postup spuštění pro vývoj - [x] Popsat dostupné env - [x] Přesunout autentizaci na server (JWT?) - [x] Zavést .env.template a přidat .env do .gitignore - [x] Zkrášlit dialog pro vyplnění čísla účtu, vypadá mizerně -- [ ] Podpora pro notifikace v externích systémech (Gotify, Discord, MS Teams) - - [ ] Umožnit zadat URL/tokeny uživatelem - - [ ] Umožnit uživatelsky konfigurovat typy notifikací, které se budou odesílat -- [ ] Skripty pro snadné spuštění vývoje na Windows (ekvivalent ./run_dev.sh) -- [ ] Možnost náhledu na jiné dny v týdnu (např. pomocí šipek) - - [ ] Možnost zadat si oběd dopředu na následující dny v týdnu - [x] Zbavit se Food API, potřebnou funkcionalitu zahrnout do serveru -- [x] Vyřešit API mezi serverem a klientem, aby nebyl v obou projektech duplicitní kód (viz types.ts a Types.tsx) -- [ ] Mazat z databáze předchozí dny, aktuálně je to k ničemu -- [ ] Vylepšit parsery restaurací - - [ ] Sladovnická - - [ ] Zbytečná prvotní validace indexu, datum konkrétního dne je i v samotné tabulce s jídly, viz TODO v parseru - - [ ] U Motlíků - - [ ] Validovat, že vstupní datum je zahrnuto v rozsahu uvedeném nad tabulkou (např. '12.6.-16.6.') - - [ ] Jídelní lístek se stahuje jednou každý den, stačilo by to jednou týdně ("ID" by mohlo být číslo týdne v roce, místo celého datumu) - - [ ] TechTower - - [ ] Validovat, že vstupní datum je zahrnuto v rozsahu uvedeném nad tabulkou (typicky 'Obědy 12. 6. - 16. 6. 2023 (každý den vždy i obědový bufet)') \ No newline at end of file +- [x] Vyřešit API mezi serverem a klientem, aby nebyl v obou projektech duplicitní kód (viz types.ts a Types.tsx) \ No newline at end of file