asdasdasd

This commit is contained in:
Phuoc Nguyen
2025-10-29 16:12:37 +07:00
parent cb4df363ab
commit c12869b01f
11 changed files with 394 additions and 51 deletions

View File

@@ -52,11 +52,13 @@ class ProductsNotifier extends StateNotifier<ProductsState> {
/// [warehouseId] - The ID of the warehouse
/// [warehouseName] - The name of the warehouse (for display)
/// [type] - The operation type ('import' or 'export')
/// [forceRefresh] - If true, bypass cache and fetch from API
Future<void> loadProducts(
int warehouseId,
String warehouseName,
String type,
) async {
String type, {
bool forceRefresh = false,
}) async {
// Set loading state
state = state.copyWith(
isLoading: true,
@@ -66,8 +68,12 @@ class ProductsNotifier extends StateNotifier<ProductsState> {
operationType: type,
);
// Call the use case
final result = await getProductsUseCase(warehouseId, type);
// Call the use case with forceRefresh flag
final result = await getProductsUseCase(
warehouseId,
type,
forceRefresh: forceRefresh,
);
// Handle the result
result.fold(
@@ -95,13 +101,14 @@ class ProductsNotifier extends StateNotifier<ProductsState> {
state = const ProductsState();
}
/// Refresh products
/// Refresh products - forces fetch from API
Future<void> refreshProducts() async {
if (state.warehouseId != null) {
await loadProducts(
state.warehouseId!,
state.warehouseName ?? '',
state.operationType,
forceRefresh: true, // Always force refresh when explicitly requested
);
}
}