order detail

This commit is contained in:
Phuoc Nguyen
2025-10-27 15:01:34 +07:00
parent c941d6d983
commit 7ce4239772
4 changed files with 1124 additions and 71 deletions

View File

@@ -10,6 +10,7 @@ import 'package:worker/features/cart/presentation/pages/cart_page.dart';
import 'package:worker/features/favorites/presentation/pages/favorites_page.dart'; import 'package:worker/features/favorites/presentation/pages/favorites_page.dart';
import 'package:worker/features/loyalty/presentation/pages/rewards_page.dart'; import 'package:worker/features/loyalty/presentation/pages/rewards_page.dart';
import 'package:worker/features/main/presentation/pages/main_scaffold.dart'; import 'package:worker/features/main/presentation/pages/main_scaffold.dart';
import 'package:worker/features/orders/presentation/pages/order_detail_page.dart';
import 'package:worker/features/orders/presentation/pages/orders_page.dart'; import 'package:worker/features/orders/presentation/pages/orders_page.dart';
import 'package:worker/features/orders/presentation/pages/payment_detail_page.dart'; import 'package:worker/features/orders/presentation/pages/payment_detail_page.dart';
import 'package:worker/features/orders/presentation/pages/payments_page.dart'; import 'package:worker/features/orders/presentation/pages/payments_page.dart';
@@ -119,6 +120,19 @@ class AppRouter {
), ),
), ),
// Order Detail Route
GoRoute(
path: RouteNames.orderDetail,
name: RouteNames.orderDetail,
pageBuilder: (context, state) {
final orderId = state.pathParameters['id'];
return MaterialPage(
key: state.pageKey,
child: OrderDetailPage(orderId: orderId ?? ''),
);
},
),
// Payments Route // Payments Route
GoRoute( GoRoute(
path: RouteNames.payments, path: RouteNames.payments,

File diff suppressed because it is too large Load Diff

View File

@@ -107,15 +107,7 @@ class _OrdersPageState extends ConsumerState<OrdersPage> {
return OrderCard( return OrderCard(
order: order, order: order,
onTap: () { onTap: () {
// TODO: Navigate to order detail page context.push('/orders/${order.orderId}');
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(
content: Text(
'Order ${order.orderNumber} tapped',
),
duration: const Duration(seconds: 1),
),
);
}, },
); );
}, },

View File

@@ -45,15 +45,6 @@ class OrderCard extends StatelessWidget {
clipBehavior: Clip.antiAlias, clipBehavior: Clip.antiAlias,
child: InkWell( child: InkWell(
onTap: onTap, onTap: onTap,
child: Container(
decoration: BoxDecoration(
border: Border(
left: BorderSide(
color: _getStatusColor(order.status),
width: 4,
),
),
),
child: Padding( child: Padding(
padding: const EdgeInsets.all(16), padding: const EdgeInsets.all(16),
child: Column( child: Column(
@@ -115,7 +106,6 @@ class OrderCard extends StatelessWidget {
), ),
), ),
), ),
),
); );
} }