Úhrada za všechny jednou osobou #29

Open
opened 2026-02-04 14:28:03 +01:00 by batmanisko · 0 comments
Member

Feature: Single-Person Payment for Everyone

FeatureRequest enum: SINGLE_PAYMENT
Description: Možnost úhrady v podniku za všechny jednou osobou a následné generování QR ostatním

Implementation Notes

One person pays the entire bill at the restaurant (for speed), then QR codes are automatically generated for other diners to reimburse their share.

Key files to modify:

  • server/src/qr.ts – Generate reimbursement QR codes for each diner
  • server/src/pizza.ts – Adapt payment logic for group payment scenarios
  • client/src/App.tsx – Add "Pay for all" button and reimbursement UI

Detailed sub-tasks from TODO.md:

  • "Pay" button on each restaurant row – the person who clicks pays for everyone
    • Only shown if the user has a bank account number configured
  • Dialog for entering a tip amount, which gets split evenly among all diners
  • Generate and display QR codes for other diners to reimburse the payer
  • Allow each diner to add a custom amount (e.g., for drinks)
  • Allow selecting which diners are included in the group payment (checkboxes to exclude someone paying separately)

Approach:

  1. Add a "Pay for all" action per restaurant in the daily view
  2. Open a dialog showing all diners, their meals, and amounts
  3. Allow tip input and per-person surcharges
  4. Calculate each person's share and generate QR codes targeting the payer's account
  5. Display QR codes to each respective user on their next page load
## Feature: Single-Person Payment for Everyone **FeatureRequest enum:** `SINGLE_PAYMENT` **Description:** Možnost úhrady v podniku za všechny jednou osobou a následné generování QR ostatním ### Implementation Notes One person pays the entire bill at the restaurant (for speed), then QR codes are automatically generated for other diners to reimburse their share. **Key files to modify:** - `server/src/qr.ts` – Generate reimbursement QR codes for each diner - `server/src/pizza.ts` – Adapt payment logic for group payment scenarios - `client/src/App.tsx` – Add "Pay for all" button and reimbursement UI **Detailed sub-tasks from TODO.md:** - [ ] "Pay" button on each restaurant row – the person who clicks pays for everyone - [ ] Only shown if the user has a bank account number configured - [ ] Dialog for entering a tip amount, which gets split evenly among all diners - [ ] Generate and display QR codes for other diners to reimburse the payer - [ ] Allow each diner to add a custom amount (e.g., for drinks) - [ ] Allow selecting which diners are included in the group payment (checkboxes to exclude someone paying separately) **Approach:** 1. Add a "Pay for all" action per restaurant in the daily view 2. Open a dialog showing all diners, their meals, and amounts 3. Allow tip input and per-person surcharges 4. Calculate each person's share and generate QR codes targeting the payer's account 5. Display QR codes to each respective user on their next page load
batmanisko added the Vylepšení label 2026-02-04 14:30:09 +01:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Marbes/Luncher#29