From ab2d7d7be544a0aed9b712845bf9a0440c71c3a0 Mon Sep 17 00:00:00 2001 From: Efril Date: Sun, 26 Apr 2026 22:31:26 +0700 Subject: [PATCH] fix void --- lib/application/void/void_form/void_form_bloc.dart | 8 ++++++-- pubspec.lock | 2 +- pubspec.yaml | 1 + 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/lib/application/void/void_form/void_form_bloc.dart b/lib/application/void/void_form/void_form_bloc.dart index c7407fc..3a9169d 100644 --- a/lib/application/void/void_form/void_form_bloc.dart +++ b/lib/application/void/void_form/void_form_bloc.dart @@ -1,4 +1,5 @@ import 'package:bloc/bloc.dart'; +import 'package:collection/collection.dart'; import 'package:dartz/dartz.dart' hide Order; import 'package:freezed_annotation/freezed_annotation.dart'; import 'package:injectable/injectable.dart' hide Order; @@ -49,9 +50,10 @@ class VoidFormBloc extends Bloc { // Recalculate total price int newTotal = 0; for (var entry in newQuantities.entries) { - final item = state.pendingItems.firstWhere( + final item = state.pendingItems.firstWhereOrNull( (item) => item.id == entry.key, ); + if (item == null) continue; newTotal += item.unitPrice.toInt() * entry.value; } @@ -71,10 +73,12 @@ class VoidFormBloc extends Bloc { if (state.voidType.isItem) { state.selectedItemQuantities.forEach((itemId, voidQty) { - final originalItem = state.order.orderItems.firstWhere( + final originalItem = state.order.orderItems.firstWhereOrNull( (item) => item.id == itemId, ); + if (originalItem == null) return; + voidItems.add( OrderItem( id: originalItem.id, diff --git a/pubspec.lock b/pubspec.lock index 93232ec..f6cad54 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -226,7 +226,7 @@ packages: source: hosted version: "4.11.0" collection: - dependency: transitive + dependency: "direct main" description: name: collection sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" diff --git a/pubspec.yaml b/pubspec.yaml index 921ba28..f77be5d 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -44,6 +44,7 @@ dependencies: esc_pos_utils_plus: ^2.0.4 table_calendar: ^3.1.2 synchronized: ^3.4.0 + collection: ^1.19.1 dev_dependencies: flutter_test: