fix order, update qr

This commit is contained in:
Phuoc Nguyen
2025-12-01 15:28:07 +07:00
parent 250c453413
commit e62c466155
7 changed files with 56 additions and 205 deletions

View File

@@ -91,55 +91,6 @@ class OrderSearchQuery extends _$OrderSearchQuery {
}
}
/// Filtered Orders Provider
///
/// Filters orders by selected status and search query.
@riverpod
Future<List<Order>> filteredOrders(Ref ref) async {
final ordersAsync = ref.watch(ordersProvider);
final selectedStatus = ref.watch(selectedOrderStatusProvider);
final searchQuery = ref.watch(orderSearchQueryProvider);
return ordersAsync.when(
data: (orders) {
var filtered = orders;
// Filter by status
if (selectedStatus != null) {
filtered = filtered
.where((order) => order.status == selectedStatus)
.toList();
}
// Filter by search query
if (searchQuery.isNotEmpty) {
filtered = filtered
.where(
(order) => order.name.toLowerCase().contains(
searchQuery.toLowerCase(),
),
)
.toList();
}
// Sort by transaction date (newest first)
filtered.sort((a, b) {
try {
final aDate = DateTime.parse(a.transactionDate);
final bDate = DateTime.parse(b.transactionDate);
return bDate.compareTo(aDate);
} catch (e) {
return 0; // Keep original order if parsing fails
}
});
return filtered;
},
loading: () => [],
error: (error, stack) => [],
);
}
/// Orders Count by Status Provider
///
/// Returns count of orders for each status.

View File

@@ -205,56 +205,6 @@ abstract class _$OrderSearchQuery extends $Notifier<String> {
}
}
/// Filtered Orders Provider
///
/// Filters orders by selected status and search query.
@ProviderFor(filteredOrders)
const filteredOrdersProvider = FilteredOrdersProvider._();
/// Filtered Orders Provider
///
/// Filters orders by selected status and search query.
final class FilteredOrdersProvider
extends
$FunctionalProvider<
AsyncValue<List<Order>>,
List<Order>,
FutureOr<List<Order>>
>
with $FutureModifier<List<Order>>, $FutureProvider<List<Order>> {
/// Filtered Orders Provider
///
/// Filters orders by selected status and search query.
const FilteredOrdersProvider._()
: super(
from: null,
argument: null,
retry: null,
name: r'filteredOrdersProvider',
isAutoDispose: true,
dependencies: null,
$allTransitiveDependencies: null,
);
@override
String debugGetCreateSourceHash() => _$filteredOrdersHash();
@$internal
@override
$FutureProviderElement<List<Order>> $createElement(
$ProviderPointer pointer,
) => $FutureProviderElement(pointer);
@override
FutureOr<List<Order>> create(Ref ref) {
return filteredOrders(ref);
}
}
String _$filteredOrdersHash() => r'04c5c87d7138b66987c8b45f878d445026ec8e19';
/// Orders Count by Status Provider
///
/// Returns count of orders for each status.