feat: New Open Tab dialog with search and optional customer email. Drinks are now grouped per order. Payments trigger cha-ching and money rain.

This commit is contained in:
2026-10-28 02:11:32 +01:00
parent 1aee0541c4
commit 29ceb51177
41 changed files with 2771 additions and 812 deletions
+5 -1
View File
@@ -7,6 +7,7 @@ class ClosedTabItem {
final int unitPriceInCents;
final DateTime? purchasedAt;
final DateTime? removedAt;
final String? orderId;
ClosedTabItem({
required this.id,
@@ -17,6 +18,7 @@ class ClosedTabItem {
required this.unitPriceInCents,
this.purchasedAt,
this.removedAt,
this.orderId,
});
bool get isRemoved => removedAt != null;
@@ -34,7 +36,8 @@ class ClosedTabItem {
quantity == other.quantity &&
unitPriceInCents == other.unitPriceInCents &&
purchasedAt == other.purchasedAt &&
removedAt == other.removedAt;
removedAt == other.removedAt &&
orderId == other.orderId;
@override
int get hashCode => Object.hash(
@@ -46,5 +49,6 @@ class ClosedTabItem {
unitPriceInCents,
purchasedAt,
removedAt,
orderId,
);
}