feat(orders): recent orders view with receipt / kitchen / bar reprint
CI/CD / CI · API (dotnet build + test) (push) Successful in 41s
CI/CD / CI · Admin API (dotnet build) (push) Successful in 30s
CI/CD / CI · Dashboard (tsc) (push) Successful in 1m10s
CI/CD / CI · Admin Web (tsc) (push) Successful in 38s
CI/CD / CI · Website (tsc) (push) Successful in 46s
CI/CD / CI · Koja (tsc) (push) Successful in 50s
CI/CD / Deploy · all services (push) Successful in 3m34s
CI/CD / CI · API (dotnet build + test) (push) Successful in 41s
CI/CD / CI · Admin API (dotnet build) (push) Successful in 30s
CI/CD / CI · Dashboard (tsc) (push) Successful in 1m10s
CI/CD / CI · Admin Web (tsc) (push) Successful in 38s
CI/CD / CI · Website (tsc) (push) Successful in 46s
CI/CD / CI · Koja (tsc) (push) Successful in 50s
CI/CD / Deploy · all services (push) Successful in 3m34s
Adds a "سفارشها" (Orders) nav page listing closed orders by day (date + branch filter, paged), each with reprint actions: - چاپ فاکتور → customer receipt - فیش آشپزخانه → kitchen ticket (all stations) - one button per print station (e.g. Bar) → reprints only that station's items Backend: the kitchen print endpoint gains an optional ?stationId= to reprint a single station; PrintKitchenTicketAsync filters its station groups accordingly (NO_STATION_ITEMS when that station has nothing on the order). Nav gated by ViewOrders (visible to branch staff too). fa/en/ar strings added. Note: local backend build couldn't run (NU1301 — NuGet restore network timeout); dashboard typecheck is clean and the C# changes are minimal — CI builds via the Nexus mirror. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -118,6 +118,7 @@
|
||||
"menu": "القائمة",
|
||||
"crm": "العملاء",
|
||||
"coupons": "القسائم",
|
||||
"orders": "الطلبات",
|
||||
"inventory": "المخزون",
|
||||
"hr": "الموارد البشرية",
|
||||
"reports": "التقارير",
|
||||
@@ -333,6 +334,9 @@
|
||||
"posDeviceHint": "عند الدفع بالبطاقة، يُرسل المبلغ عبر HTTP (POST /pay) إلى الجهاز على الشبكة المحلية.",
|
||||
"posDeviceIp": "عنوان IP لجهاز نقطة البيع",
|
||||
"testSent": "تم إرسال الاختبار إلى الطابعة.",
|
||||
"sent": "تم الإرسال إلى الطابعة.",
|
||||
"noStationItems": "لا توجد أصناف لهذه المحطة في هذا الطلب.",
|
||||
"printFailed": "فشلت الطباعة.",
|
||||
"stations": {
|
||||
"title": "محطات طباعة المطبخ والبار",
|
||||
"subtitle": "امنح كل قسم تحضير طابعته الخاصة ووجّه فئات القائمة إليها.",
|
||||
@@ -1086,6 +1090,23 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"recentOrders": {
|
||||
"title": "الطلبات الأخيرة",
|
||||
"subtitle": "تصفّح الطلبات المغلقة وأعد طباعة فاتورة العميل وتذاكر المطبخ/البار.",
|
||||
"date": "التاريخ",
|
||||
"branch": "الفرع",
|
||||
"allBranches": "كل الفروع",
|
||||
"empty": "لا توجد طلبات لهذا اليوم.",
|
||||
"loadFailed": "تعذّر تحميل الطلبات.",
|
||||
"retry": "إعادة المحاولة",
|
||||
"prevPage": "السابق",
|
||||
"nextPage": "التالي",
|
||||
"table": "الطاولة",
|
||||
"statusPaid": "مدفوع",
|
||||
"statusCancelled": "ملغى",
|
||||
"receipt": "الفاتورة",
|
||||
"kitchen": "تذكرة المطبخ"
|
||||
},
|
||||
"notifications": {
|
||||
"title": "الإشعارات",
|
||||
"pageTitle": "الإشعارات",
|
||||
|
||||
@@ -129,6 +129,7 @@
|
||||
"crm": "CRM",
|
||||
"coupons": "Coupons",
|
||||
"menu": "Menu",
|
||||
"orders": "Orders",
|
||||
"inventory": "Inventory",
|
||||
"hr": "HR",
|
||||
"reports": "Reports",
|
||||
@@ -352,6 +353,9 @@
|
||||
"posDeviceHint": "On card payment, the amount is sent via HTTP (POST /pay) to the device on your LAN.",
|
||||
"posDeviceIp": "POS device IP address",
|
||||
"testSent": "Test sent to the printer.",
|
||||
"sent": "Sent to the printer.",
|
||||
"noStationItems": "This order has no items for that station.",
|
||||
"printFailed": "Print failed.",
|
||||
"stations": {
|
||||
"title": "Kitchen & bar print stations",
|
||||
"subtitle": "Give each prep area its own printer and route menu categories to it.",
|
||||
@@ -1146,6 +1150,23 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"recentOrders": {
|
||||
"title": "Recent orders",
|
||||
"subtitle": "Browse closed orders and reprint the customer receipt and the kitchen / bar tickets.",
|
||||
"date": "Date",
|
||||
"branch": "Branch",
|
||||
"allBranches": "All branches",
|
||||
"empty": "No orders for this day.",
|
||||
"loadFailed": "Could not load orders.",
|
||||
"retry": "Retry",
|
||||
"prevPage": "Previous",
|
||||
"nextPage": "Next",
|
||||
"table": "Table",
|
||||
"statusPaid": "Paid",
|
||||
"statusCancelled": "Cancelled",
|
||||
"receipt": "Receipt",
|
||||
"kitchen": "Kitchen ticket"
|
||||
},
|
||||
"notifications": {
|
||||
"title": "Notifications",
|
||||
"pageTitle": "Notifications",
|
||||
|
||||
@@ -129,6 +129,7 @@
|
||||
"crm": "مشتریان",
|
||||
"coupons": "کوپنها",
|
||||
"menu": "منو",
|
||||
"orders": "سفارشها",
|
||||
"inventory": "انبار",
|
||||
"hr": "منابع انسانی",
|
||||
"reports": "گزارشها",
|
||||
@@ -352,6 +353,9 @@
|
||||
"posDeviceHint": "هنگام پرداخت کارتی، مبلغ به آدرس HTTP دستگاه ارسال میشود (POST /pay).",
|
||||
"posDeviceIp": "آدرس IP دستگاه پوز",
|
||||
"testSent": "تست به پرینتر ارسال شد.",
|
||||
"sent": "به پرینتر ارسال شد.",
|
||||
"noStationItems": "این سفارش آیتمی برای این ایستگاه ندارد.",
|
||||
"printFailed": "چاپ ناموفق بود.",
|
||||
"stations": {
|
||||
"title": "ایستگاههای چاپ آشپزخانه و بار",
|
||||
"subtitle": "برای هر بخش آمادهسازی یک پرینتر جدا بگذارید و دستههای منو را به آن وصل کنید.",
|
||||
@@ -1147,6 +1151,23 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"recentOrders": {
|
||||
"title": "سفارشهای اخیر",
|
||||
"subtitle": "سفارشهای بستهشده را ببینید و فاکتور مشتری و فیش آشپزخانه/بار را دوباره چاپ کنید.",
|
||||
"date": "تاریخ",
|
||||
"branch": "شعبه",
|
||||
"allBranches": "همه شعب",
|
||||
"empty": "سفارشی برای این روز نیست.",
|
||||
"loadFailed": "بارگذاری سفارشها ناموفق بود.",
|
||||
"retry": "تلاش مجدد",
|
||||
"prevPage": "قبلی",
|
||||
"nextPage": "بعدی",
|
||||
"table": "میز",
|
||||
"statusPaid": "پرداختشده",
|
||||
"statusCancelled": "لغوشده",
|
||||
"receipt": "فاکتور",
|
||||
"kitchen": "فیش آشپزخانه"
|
||||
},
|
||||
"notifications": {
|
||||
"title": "اعلانها",
|
||||
"pageTitle": "اعلانها",
|
||||
|
||||
Reference in New Issue
Block a user