batmanisko 7772db8e63 feat: úhrada za všechny jednou osobou (issue #29, SINGLE_PAYMENT)
Přidává možnost, aby jeden strávník zaplatil celý účet v restauraci a ostatní
obdrželi QR kód pro refundaci.

Prerekvizita — podpora více QR kódů na (příjemce, den):
- PendingQr.id (UUID) nahrazuje deduplikaci podle data; každý QR má vlastní klíč
- QR obrázky uloženy do Redis/storage (base64) místo tmpdir — přežijí redeploy
- GET /api/qr vyžaduje ?id= parametr; dismissQr přijímá {id} místo {date}

Feature:
- Ikona 'Zaplatit za všechny' v choices-table pro každou LunchChoice (kromě
  PIZZA/NEOBEDVAM/ROZHODUJI); viditelná jen při ≥2 strávnících a vyplněném účtu
- PayForAllModal: tabulka strávníků s prefillovanými cenami z menu, příplatky
  per-diner, celkové dýško rozpočtené rovnoměrně, generování QR přes POST /api/qr/generate
- parsePriceCzk() helper pro parsing 'N Kč' → number

Co se nemění: POST /api/qr/generate API kontrakt, PizzaOrder.hasQr boolean

Co se mění v OpenAPI: PendingQr.id (required), getPizzaQr ?id param, dismissQr body

Co-Authored-By: opmrdkazkrtkaus <opmrdkazkrtkaus@melancholik.eu>
2026-04-28 22:40:09 +02:00
2025-03-05 21:19:33 +01:00
2026-03-04 10:36:14 +01:00
2026-03-04 10:35:13 +01:00
2025-03-03 10:20:41 +01:00
2025-03-05 21:05:21 +01:00
2025-08-04 17:27:03 +02:00
2024-02-26 20:34:14 +01:00

Luncher

Aplikace pro profesionální management obědů.

Aplikace sestává ze tří modulů.

  • types
    • OpenAPI definice společných typů, generované přes openapi-ts
  • server
  • client

Spuštění pro vývoj

Závislosti

Klient/server

Spuštění na *nix platformách

  • Nainstalovat závislosti viz předchozí bod
  • Zkopírovat server/.env.template do server/.env.development a upravit dle potřeby
  • Vygenerovat společné TypeScript typy
    • cd types && yarn install && yarn openapi-ts
  • Server
    • cd server && yarn install && export NODE_ENV=development && yarn startReload
  • Klient
    • cd client && yarn install && yarn start

Sestavení a spuštění produkční verze v Docker

Závislosti

Spuštění

  • docker compose up --build -d

Spuštení s traefik

  • docker compose -f compose-traefik.yml up --build -d

TODO

Dostupné zde.

S
Description
Aplikace pro profesionální management obědů.
Readme 11 MiB
Languages
TypeScript 90.7%
SCSS 6.9%
CSS 0.7%
JavaScript 0.6%
Dockerfile 0.6%
Other 0.5%