dev #1

Merged
aefril merged 128 commits from dev into main 2025-08-13 17:19:48 +00:00
9 changed files with 824 additions and 114 deletions
Showing only changes of commit ee38b6218f - Show all commits

View File

@ -418,7 +418,7 @@ class OrderRemoteDatasource {
'order_item_id': item.id, 'order_item_id': item.id,
"refund_quantity": item.quantity, "refund_quantity": item.quantity,
"refund_amount": item.totalPrice, "refund_amount": item.totalPrice,
"reason": "Item was cold" "reason": ""
}) })
.toList(), .toList(),
'reason': reason, 'reason': reason,
@ -447,4 +447,52 @@ class OrderRemoteDatasource {
return const Left('Terjadi kesalahan tak terduga'); return const Left('Terjadi kesalahan tak terduga');
} }
} }
Future<Either<String, bool>> voidOrder({
required String orderId,
required String reason,
String type = "ITEM", // TYPE: ALL, ITEM
required List<OrderItem> orderItems,
}) async {
final authData = await AuthLocalDataSource().getAuthData();
final url = '${Variables.baseUrl}/api/v1/orders/void';
try {
final response = await dio.post(
url,
data: {
'order_id': orderId,
'type': orderItems.isEmpty ? "ALL" : type,
'reason': reason,
"items": orderItems
.map((item) => {
'order_item_id': item.id,
"quantity": item.quantity,
})
.toList(),
},
options: Options(
headers: {
'Authorization': 'Bearer ${authData.token}',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
),
);
if (response.statusCode == 200) {
return Right(true);
} else {
return const Left('Gagal refund');
}
} on DioException catch (e) {
final errorMessage = e.response?.data['message'] ?? 'Kesalahan jaringan';
log("đź’Ą Dio error: ${e.message}");
log("đź’Ą Dio response: ${e.response?.data}");
return Left(errorMessage);
} catch (e) {
log("đź’Ą Unexpected error: $e");
return const Left('Terjadi kesalahan tak terduga');
}
}
} }

View File

@ -134,7 +134,7 @@ class OrderFormBloc extends Bloc<OrderFormEvent, OrderFormState> {
); );
on<_ToggleItem>((event, emit) { on<_ToggleItem>((event, emit) {
state.maybeWhen( state.maybeWhen(
loaded: (order, selectedItems, _) { loaded: (order, selectedItems, totalVoidOrRefund, _) {
final newList = [...selectedItems]; final newList = [...selectedItems];
final exists = newList.any((e) => e.id == event.item.id); final exists = newList.any((e) => e.id == event.item.id);
@ -158,7 +158,7 @@ class OrderFormBloc extends Bloc<OrderFormEvent, OrderFormState> {
on<_ToggleSelectAll>((event, emit) { on<_ToggleSelectAll>((event, emit) {
state.maybeWhen( state.maybeWhen(
loaded: (order, _, __) { loaded: (order, _, totalVoidOrRefund, __) {
final items = event.selectAll final items = event.selectAll
? (order.orderItems ?? <OrderItem>[]) ? (order.orderItems ?? <OrderItem>[])
: <OrderItem>[]; : <OrderItem>[];
@ -187,5 +187,20 @@ class OrderFormBloc extends Bloc<OrderFormEvent, OrderFormState> {
(success) => emit(_SuccessMsg()), (success) => emit(_SuccessMsg()),
); );
}); });
on<_VoidOrder>((event, emit) async {
emit(const OrderFormState.loading());
final result = await _orderRemoteDatasource.voidOrder(
orderId: event.orderId,
reason: event.reason,
orderItems: event.items,
);
result.fold(
(error) => emit(_Error(error)),
(success) => emit(_SuccessMsg()),
);
});
} }
} }

View File

@ -30,6 +30,9 @@ mixin _$OrderFormEvent {
required TResult Function( required TResult Function(
List<OrderItem> items, String orderId, String reason) List<OrderItem> items, String orderId, String reason)
refund, refund,
required TResult Function(
List<OrderItem> items, String orderId, String reason)
voidOrder,
required TResult Function(OrderItem item) toggleItem, required TResult Function(OrderItem item) toggleItem,
required TResult Function(bool selectAll) toggleSelectAll, required TResult Function(bool selectAll) toggleSelectAll,
}) => }) =>
@ -46,6 +49,8 @@ mixin _$OrderFormEvent {
TResult? Function(List<ProductQuantity> items, String orderId)? addToOrder, TResult? Function(List<ProductQuantity> items, String orderId)? addToOrder,
TResult? Function(List<OrderItem> items, String orderId, String reason)? TResult? Function(List<OrderItem> items, String orderId, String reason)?
refund, refund,
TResult? Function(List<OrderItem> items, String orderId, String reason)?
voidOrder,
TResult? Function(OrderItem item)? toggleItem, TResult? Function(OrderItem item)? toggleItem,
TResult? Function(bool selectAll)? toggleSelectAll, TResult? Function(bool selectAll)? toggleSelectAll,
}) => }) =>
@ -62,6 +67,8 @@ mixin _$OrderFormEvent {
TResult Function(List<ProductQuantity> items, String orderId)? addToOrder, TResult Function(List<ProductQuantity> items, String orderId)? addToOrder,
TResult Function(List<OrderItem> items, String orderId, String reason)? TResult Function(List<OrderItem> items, String orderId, String reason)?
refund, refund,
TResult Function(List<OrderItem> items, String orderId, String reason)?
voidOrder,
TResult Function(OrderItem item)? toggleItem, TResult Function(OrderItem item)? toggleItem,
TResult Function(bool selectAll)? toggleSelectAll, TResult Function(bool selectAll)? toggleSelectAll,
required TResult orElse(), required TResult orElse(),
@ -74,6 +81,7 @@ mixin _$OrderFormEvent {
required TResult Function(_CreateWithPaymentMethod value) createWithPayment, required TResult Function(_CreateWithPaymentMethod value) createWithPayment,
required TResult Function(_AddToOrder value) addToOrder, required TResult Function(_AddToOrder value) addToOrder,
required TResult Function(_Refund value) refund, required TResult Function(_Refund value) refund,
required TResult Function(_VoidOrder value) voidOrder,
required TResult Function(_ToggleItem value) toggleItem, required TResult Function(_ToggleItem value) toggleItem,
required TResult Function(_ToggleSelectAll value) toggleSelectAll, required TResult Function(_ToggleSelectAll value) toggleSelectAll,
}) => }) =>
@ -85,6 +93,7 @@ mixin _$OrderFormEvent {
TResult? Function(_CreateWithPaymentMethod value)? createWithPayment, TResult? Function(_CreateWithPaymentMethod value)? createWithPayment,
TResult? Function(_AddToOrder value)? addToOrder, TResult? Function(_AddToOrder value)? addToOrder,
TResult? Function(_Refund value)? refund, TResult? Function(_Refund value)? refund,
TResult? Function(_VoidOrder value)? voidOrder,
TResult? Function(_ToggleItem value)? toggleItem, TResult? Function(_ToggleItem value)? toggleItem,
TResult? Function(_ToggleSelectAll value)? toggleSelectAll, TResult? Function(_ToggleSelectAll value)? toggleSelectAll,
}) => }) =>
@ -96,6 +105,7 @@ mixin _$OrderFormEvent {
TResult Function(_CreateWithPaymentMethod value)? createWithPayment, TResult Function(_CreateWithPaymentMethod value)? createWithPayment,
TResult Function(_AddToOrder value)? addToOrder, TResult Function(_AddToOrder value)? addToOrder,
TResult Function(_Refund value)? refund, TResult Function(_Refund value)? refund,
TResult Function(_VoidOrder value)? voidOrder,
TResult Function(_ToggleItem value)? toggleItem, TResult Function(_ToggleItem value)? toggleItem,
TResult Function(_ToggleSelectAll value)? toggleSelectAll, TResult Function(_ToggleSelectAll value)? toggleSelectAll,
required TResult orElse(), required TResult orElse(),
@ -204,6 +214,9 @@ class _$StartedImpl implements _Started {
required TResult Function( required TResult Function(
List<OrderItem> items, String orderId, String reason) List<OrderItem> items, String orderId, String reason)
refund, refund,
required TResult Function(
List<OrderItem> items, String orderId, String reason)
voidOrder,
required TResult Function(OrderItem item) toggleItem, required TResult Function(OrderItem item) toggleItem,
required TResult Function(bool selectAll) toggleSelectAll, required TResult Function(bool selectAll) toggleSelectAll,
}) { }) {
@ -223,6 +236,8 @@ class _$StartedImpl implements _Started {
TResult? Function(List<ProductQuantity> items, String orderId)? addToOrder, TResult? Function(List<ProductQuantity> items, String orderId)? addToOrder,
TResult? Function(List<OrderItem> items, String orderId, String reason)? TResult? Function(List<OrderItem> items, String orderId, String reason)?
refund, refund,
TResult? Function(List<OrderItem> items, String orderId, String reason)?
voidOrder,
TResult? Function(OrderItem item)? toggleItem, TResult? Function(OrderItem item)? toggleItem,
TResult? Function(bool selectAll)? toggleSelectAll, TResult? Function(bool selectAll)? toggleSelectAll,
}) { }) {
@ -242,6 +257,8 @@ class _$StartedImpl implements _Started {
TResult Function(List<ProductQuantity> items, String orderId)? addToOrder, TResult Function(List<ProductQuantity> items, String orderId)? addToOrder,
TResult Function(List<OrderItem> items, String orderId, String reason)? TResult Function(List<OrderItem> items, String orderId, String reason)?
refund, refund,
TResult Function(List<OrderItem> items, String orderId, String reason)?
voidOrder,
TResult Function(OrderItem item)? toggleItem, TResult Function(OrderItem item)? toggleItem,
TResult Function(bool selectAll)? toggleSelectAll, TResult Function(bool selectAll)? toggleSelectAll,
required TResult orElse(), required TResult orElse(),
@ -260,6 +277,7 @@ class _$StartedImpl implements _Started {
required TResult Function(_CreateWithPaymentMethod value) createWithPayment, required TResult Function(_CreateWithPaymentMethod value) createWithPayment,
required TResult Function(_AddToOrder value) addToOrder, required TResult Function(_AddToOrder value) addToOrder,
required TResult Function(_Refund value) refund, required TResult Function(_Refund value) refund,
required TResult Function(_VoidOrder value) voidOrder,
required TResult Function(_ToggleItem value) toggleItem, required TResult Function(_ToggleItem value) toggleItem,
required TResult Function(_ToggleSelectAll value) toggleSelectAll, required TResult Function(_ToggleSelectAll value) toggleSelectAll,
}) { }) {
@ -274,6 +292,7 @@ class _$StartedImpl implements _Started {
TResult? Function(_CreateWithPaymentMethod value)? createWithPayment, TResult? Function(_CreateWithPaymentMethod value)? createWithPayment,
TResult? Function(_AddToOrder value)? addToOrder, TResult? Function(_AddToOrder value)? addToOrder,
TResult? Function(_Refund value)? refund, TResult? Function(_Refund value)? refund,
TResult? Function(_VoidOrder value)? voidOrder,
TResult? Function(_ToggleItem value)? toggleItem, TResult? Function(_ToggleItem value)? toggleItem,
TResult? Function(_ToggleSelectAll value)? toggleSelectAll, TResult? Function(_ToggleSelectAll value)? toggleSelectAll,
}) { }) {
@ -288,6 +307,7 @@ class _$StartedImpl implements _Started {
TResult Function(_CreateWithPaymentMethod value)? createWithPayment, TResult Function(_CreateWithPaymentMethod value)? createWithPayment,
TResult Function(_AddToOrder value)? addToOrder, TResult Function(_AddToOrder value)? addToOrder,
TResult Function(_Refund value)? refund, TResult Function(_Refund value)? refund,
TResult Function(_VoidOrder value)? voidOrder,
TResult Function(_ToggleItem value)? toggleItem, TResult Function(_ToggleItem value)? toggleItem,
TResult Function(_ToggleSelectAll value)? toggleSelectAll, TResult Function(_ToggleSelectAll value)? toggleSelectAll,
required TResult orElse(), required TResult orElse(),
@ -437,6 +457,9 @@ class _$CreateImpl implements _Create {
required TResult Function( required TResult Function(
List<OrderItem> items, String orderId, String reason) List<OrderItem> items, String orderId, String reason)
refund, refund,
required TResult Function(
List<OrderItem> items, String orderId, String reason)
voidOrder,
required TResult Function(OrderItem item) toggleItem, required TResult Function(OrderItem item) toggleItem,
required TResult Function(bool selectAll) toggleSelectAll, required TResult Function(bool selectAll) toggleSelectAll,
}) { }) {
@ -456,6 +479,8 @@ class _$CreateImpl implements _Create {
TResult? Function(List<ProductQuantity> items, String orderId)? addToOrder, TResult? Function(List<ProductQuantity> items, String orderId)? addToOrder,
TResult? Function(List<OrderItem> items, String orderId, String reason)? TResult? Function(List<OrderItem> items, String orderId, String reason)?
refund, refund,
TResult? Function(List<OrderItem> items, String orderId, String reason)?
voidOrder,
TResult? Function(OrderItem item)? toggleItem, TResult? Function(OrderItem item)? toggleItem,
TResult? Function(bool selectAll)? toggleSelectAll, TResult? Function(bool selectAll)? toggleSelectAll,
}) { }) {
@ -475,6 +500,8 @@ class _$CreateImpl implements _Create {
TResult Function(List<ProductQuantity> items, String orderId)? addToOrder, TResult Function(List<ProductQuantity> items, String orderId)? addToOrder,
TResult Function(List<OrderItem> items, String orderId, String reason)? TResult Function(List<OrderItem> items, String orderId, String reason)?
refund, refund,
TResult Function(List<OrderItem> items, String orderId, String reason)?
voidOrder,
TResult Function(OrderItem item)? toggleItem, TResult Function(OrderItem item)? toggleItem,
TResult Function(bool selectAll)? toggleSelectAll, TResult Function(bool selectAll)? toggleSelectAll,
required TResult orElse(), required TResult orElse(),
@ -493,6 +520,7 @@ class _$CreateImpl implements _Create {
required TResult Function(_CreateWithPaymentMethod value) createWithPayment, required TResult Function(_CreateWithPaymentMethod value) createWithPayment,
required TResult Function(_AddToOrder value) addToOrder, required TResult Function(_AddToOrder value) addToOrder,
required TResult Function(_Refund value) refund, required TResult Function(_Refund value) refund,
required TResult Function(_VoidOrder value) voidOrder,
required TResult Function(_ToggleItem value) toggleItem, required TResult Function(_ToggleItem value) toggleItem,
required TResult Function(_ToggleSelectAll value) toggleSelectAll, required TResult Function(_ToggleSelectAll value) toggleSelectAll,
}) { }) {
@ -507,6 +535,7 @@ class _$CreateImpl implements _Create {
TResult? Function(_CreateWithPaymentMethod value)? createWithPayment, TResult? Function(_CreateWithPaymentMethod value)? createWithPayment,
TResult? Function(_AddToOrder value)? addToOrder, TResult? Function(_AddToOrder value)? addToOrder,
TResult? Function(_Refund value)? refund, TResult? Function(_Refund value)? refund,
TResult? Function(_VoidOrder value)? voidOrder,
TResult? Function(_ToggleItem value)? toggleItem, TResult? Function(_ToggleItem value)? toggleItem,
TResult? Function(_ToggleSelectAll value)? toggleSelectAll, TResult? Function(_ToggleSelectAll value)? toggleSelectAll,
}) { }) {
@ -521,6 +550,7 @@ class _$CreateImpl implements _Create {
TResult Function(_CreateWithPaymentMethod value)? createWithPayment, TResult Function(_CreateWithPaymentMethod value)? createWithPayment,
TResult Function(_AddToOrder value)? addToOrder, TResult Function(_AddToOrder value)? addToOrder,
TResult Function(_Refund value)? refund, TResult Function(_Refund value)? refund,
TResult Function(_VoidOrder value)? voidOrder,
TResult Function(_ToggleItem value)? toggleItem, TResult Function(_ToggleItem value)? toggleItem,
TResult Function(_ToggleSelectAll value)? toggleSelectAll, TResult Function(_ToggleSelectAll value)? toggleSelectAll,
required TResult orElse(), required TResult orElse(),
@ -692,6 +722,9 @@ class _$CreateWithPaymentMethodImpl implements _CreateWithPaymentMethod {
required TResult Function( required TResult Function(
List<OrderItem> items, String orderId, String reason) List<OrderItem> items, String orderId, String reason)
refund, refund,
required TResult Function(
List<OrderItem> items, String orderId, String reason)
voidOrder,
required TResult Function(OrderItem item) toggleItem, required TResult Function(OrderItem item) toggleItem,
required TResult Function(bool selectAll) toggleSelectAll, required TResult Function(bool selectAll) toggleSelectAll,
}) { }) {
@ -712,6 +745,8 @@ class _$CreateWithPaymentMethodImpl implements _CreateWithPaymentMethod {
TResult? Function(List<ProductQuantity> items, String orderId)? addToOrder, TResult? Function(List<ProductQuantity> items, String orderId)? addToOrder,
TResult? Function(List<OrderItem> items, String orderId, String reason)? TResult? Function(List<OrderItem> items, String orderId, String reason)?
refund, refund,
TResult? Function(List<OrderItem> items, String orderId, String reason)?
voidOrder,
TResult? Function(OrderItem item)? toggleItem, TResult? Function(OrderItem item)? toggleItem,
TResult? Function(bool selectAll)? toggleSelectAll, TResult? Function(bool selectAll)? toggleSelectAll,
}) { }) {
@ -732,6 +767,8 @@ class _$CreateWithPaymentMethodImpl implements _CreateWithPaymentMethod {
TResult Function(List<ProductQuantity> items, String orderId)? addToOrder, TResult Function(List<ProductQuantity> items, String orderId)? addToOrder,
TResult Function(List<OrderItem> items, String orderId, String reason)? TResult Function(List<OrderItem> items, String orderId, String reason)?
refund, refund,
TResult Function(List<OrderItem> items, String orderId, String reason)?
voidOrder,
TResult Function(OrderItem item)? toggleItem, TResult Function(OrderItem item)? toggleItem,
TResult Function(bool selectAll)? toggleSelectAll, TResult Function(bool selectAll)? toggleSelectAll,
required TResult orElse(), required TResult orElse(),
@ -751,6 +788,7 @@ class _$CreateWithPaymentMethodImpl implements _CreateWithPaymentMethod {
required TResult Function(_CreateWithPaymentMethod value) createWithPayment, required TResult Function(_CreateWithPaymentMethod value) createWithPayment,
required TResult Function(_AddToOrder value) addToOrder, required TResult Function(_AddToOrder value) addToOrder,
required TResult Function(_Refund value) refund, required TResult Function(_Refund value) refund,
required TResult Function(_VoidOrder value) voidOrder,
required TResult Function(_ToggleItem value) toggleItem, required TResult Function(_ToggleItem value) toggleItem,
required TResult Function(_ToggleSelectAll value) toggleSelectAll, required TResult Function(_ToggleSelectAll value) toggleSelectAll,
}) { }) {
@ -765,6 +803,7 @@ class _$CreateWithPaymentMethodImpl implements _CreateWithPaymentMethod {
TResult? Function(_CreateWithPaymentMethod value)? createWithPayment, TResult? Function(_CreateWithPaymentMethod value)? createWithPayment,
TResult? Function(_AddToOrder value)? addToOrder, TResult? Function(_AddToOrder value)? addToOrder,
TResult? Function(_Refund value)? refund, TResult? Function(_Refund value)? refund,
TResult? Function(_VoidOrder value)? voidOrder,
TResult? Function(_ToggleItem value)? toggleItem, TResult? Function(_ToggleItem value)? toggleItem,
TResult? Function(_ToggleSelectAll value)? toggleSelectAll, TResult? Function(_ToggleSelectAll value)? toggleSelectAll,
}) { }) {
@ -779,6 +818,7 @@ class _$CreateWithPaymentMethodImpl implements _CreateWithPaymentMethod {
TResult Function(_CreateWithPaymentMethod value)? createWithPayment, TResult Function(_CreateWithPaymentMethod value)? createWithPayment,
TResult Function(_AddToOrder value)? addToOrder, TResult Function(_AddToOrder value)? addToOrder,
TResult Function(_Refund value)? refund, TResult Function(_Refund value)? refund,
TResult Function(_VoidOrder value)? voidOrder,
TResult Function(_ToggleItem value)? toggleItem, TResult Function(_ToggleItem value)? toggleItem,
TResult Function(_ToggleSelectAll value)? toggleSelectAll, TResult Function(_ToggleSelectAll value)? toggleSelectAll,
required TResult orElse(), required TResult orElse(),
@ -909,6 +949,9 @@ class _$AddToOrderImpl implements _AddToOrder {
required TResult Function( required TResult Function(
List<OrderItem> items, String orderId, String reason) List<OrderItem> items, String orderId, String reason)
refund, refund,
required TResult Function(
List<OrderItem> items, String orderId, String reason)
voidOrder,
required TResult Function(OrderItem item) toggleItem, required TResult Function(OrderItem item) toggleItem,
required TResult Function(bool selectAll) toggleSelectAll, required TResult Function(bool selectAll) toggleSelectAll,
}) { }) {
@ -928,6 +971,8 @@ class _$AddToOrderImpl implements _AddToOrder {
TResult? Function(List<ProductQuantity> items, String orderId)? addToOrder, TResult? Function(List<ProductQuantity> items, String orderId)? addToOrder,
TResult? Function(List<OrderItem> items, String orderId, String reason)? TResult? Function(List<OrderItem> items, String orderId, String reason)?
refund, refund,
TResult? Function(List<OrderItem> items, String orderId, String reason)?
voidOrder,
TResult? Function(OrderItem item)? toggleItem, TResult? Function(OrderItem item)? toggleItem,
TResult? Function(bool selectAll)? toggleSelectAll, TResult? Function(bool selectAll)? toggleSelectAll,
}) { }) {
@ -947,6 +992,8 @@ class _$AddToOrderImpl implements _AddToOrder {
TResult Function(List<ProductQuantity> items, String orderId)? addToOrder, TResult Function(List<ProductQuantity> items, String orderId)? addToOrder,
TResult Function(List<OrderItem> items, String orderId, String reason)? TResult Function(List<OrderItem> items, String orderId, String reason)?
refund, refund,
TResult Function(List<OrderItem> items, String orderId, String reason)?
voidOrder,
TResult Function(OrderItem item)? toggleItem, TResult Function(OrderItem item)? toggleItem,
TResult Function(bool selectAll)? toggleSelectAll, TResult Function(bool selectAll)? toggleSelectAll,
required TResult orElse(), required TResult orElse(),
@ -965,6 +1012,7 @@ class _$AddToOrderImpl implements _AddToOrder {
required TResult Function(_CreateWithPaymentMethod value) createWithPayment, required TResult Function(_CreateWithPaymentMethod value) createWithPayment,
required TResult Function(_AddToOrder value) addToOrder, required TResult Function(_AddToOrder value) addToOrder,
required TResult Function(_Refund value) refund, required TResult Function(_Refund value) refund,
required TResult Function(_VoidOrder value) voidOrder,
required TResult Function(_ToggleItem value) toggleItem, required TResult Function(_ToggleItem value) toggleItem,
required TResult Function(_ToggleSelectAll value) toggleSelectAll, required TResult Function(_ToggleSelectAll value) toggleSelectAll,
}) { }) {
@ -979,6 +1027,7 @@ class _$AddToOrderImpl implements _AddToOrder {
TResult? Function(_CreateWithPaymentMethod value)? createWithPayment, TResult? Function(_CreateWithPaymentMethod value)? createWithPayment,
TResult? Function(_AddToOrder value)? addToOrder, TResult? Function(_AddToOrder value)? addToOrder,
TResult? Function(_Refund value)? refund, TResult? Function(_Refund value)? refund,
TResult? Function(_VoidOrder value)? voidOrder,
TResult? Function(_ToggleItem value)? toggleItem, TResult? Function(_ToggleItem value)? toggleItem,
TResult? Function(_ToggleSelectAll value)? toggleSelectAll, TResult? Function(_ToggleSelectAll value)? toggleSelectAll,
}) { }) {
@ -993,6 +1042,7 @@ class _$AddToOrderImpl implements _AddToOrder {
TResult Function(_CreateWithPaymentMethod value)? createWithPayment, TResult Function(_CreateWithPaymentMethod value)? createWithPayment,
TResult Function(_AddToOrder value)? addToOrder, TResult Function(_AddToOrder value)? addToOrder,
TResult Function(_Refund value)? refund, TResult Function(_Refund value)? refund,
TResult Function(_VoidOrder value)? voidOrder,
TResult Function(_ToggleItem value)? toggleItem, TResult Function(_ToggleItem value)? toggleItem,
TResult Function(_ToggleSelectAll value)? toggleSelectAll, TResult Function(_ToggleSelectAll value)? toggleSelectAll,
required TResult orElse(), required TResult orElse(),
@ -1126,6 +1176,9 @@ class _$RefundImpl implements _Refund {
required TResult Function( required TResult Function(
List<OrderItem> items, String orderId, String reason) List<OrderItem> items, String orderId, String reason)
refund, refund,
required TResult Function(
List<OrderItem> items, String orderId, String reason)
voidOrder,
required TResult Function(OrderItem item) toggleItem, required TResult Function(OrderItem item) toggleItem,
required TResult Function(bool selectAll) toggleSelectAll, required TResult Function(bool selectAll) toggleSelectAll,
}) { }) {
@ -1145,6 +1198,8 @@ class _$RefundImpl implements _Refund {
TResult? Function(List<ProductQuantity> items, String orderId)? addToOrder, TResult? Function(List<ProductQuantity> items, String orderId)? addToOrder,
TResult? Function(List<OrderItem> items, String orderId, String reason)? TResult? Function(List<OrderItem> items, String orderId, String reason)?
refund, refund,
TResult? Function(List<OrderItem> items, String orderId, String reason)?
voidOrder,
TResult? Function(OrderItem item)? toggleItem, TResult? Function(OrderItem item)? toggleItem,
TResult? Function(bool selectAll)? toggleSelectAll, TResult? Function(bool selectAll)? toggleSelectAll,
}) { }) {
@ -1164,6 +1219,8 @@ class _$RefundImpl implements _Refund {
TResult Function(List<ProductQuantity> items, String orderId)? addToOrder, TResult Function(List<ProductQuantity> items, String orderId)? addToOrder,
TResult Function(List<OrderItem> items, String orderId, String reason)? TResult Function(List<OrderItem> items, String orderId, String reason)?
refund, refund,
TResult Function(List<OrderItem> items, String orderId, String reason)?
voidOrder,
TResult Function(OrderItem item)? toggleItem, TResult Function(OrderItem item)? toggleItem,
TResult Function(bool selectAll)? toggleSelectAll, TResult Function(bool selectAll)? toggleSelectAll,
required TResult orElse(), required TResult orElse(),
@ -1182,6 +1239,7 @@ class _$RefundImpl implements _Refund {
required TResult Function(_CreateWithPaymentMethod value) createWithPayment, required TResult Function(_CreateWithPaymentMethod value) createWithPayment,
required TResult Function(_AddToOrder value) addToOrder, required TResult Function(_AddToOrder value) addToOrder,
required TResult Function(_Refund value) refund, required TResult Function(_Refund value) refund,
required TResult Function(_VoidOrder value) voidOrder,
required TResult Function(_ToggleItem value) toggleItem, required TResult Function(_ToggleItem value) toggleItem,
required TResult Function(_ToggleSelectAll value) toggleSelectAll, required TResult Function(_ToggleSelectAll value) toggleSelectAll,
}) { }) {
@ -1196,6 +1254,7 @@ class _$RefundImpl implements _Refund {
TResult? Function(_CreateWithPaymentMethod value)? createWithPayment, TResult? Function(_CreateWithPaymentMethod value)? createWithPayment,
TResult? Function(_AddToOrder value)? addToOrder, TResult? Function(_AddToOrder value)? addToOrder,
TResult? Function(_Refund value)? refund, TResult? Function(_Refund value)? refund,
TResult? Function(_VoidOrder value)? voidOrder,
TResult? Function(_ToggleItem value)? toggleItem, TResult? Function(_ToggleItem value)? toggleItem,
TResult? Function(_ToggleSelectAll value)? toggleSelectAll, TResult? Function(_ToggleSelectAll value)? toggleSelectAll,
}) { }) {
@ -1210,6 +1269,7 @@ class _$RefundImpl implements _Refund {
TResult Function(_CreateWithPaymentMethod value)? createWithPayment, TResult Function(_CreateWithPaymentMethod value)? createWithPayment,
TResult Function(_AddToOrder value)? addToOrder, TResult Function(_AddToOrder value)? addToOrder,
TResult Function(_Refund value)? refund, TResult Function(_Refund value)? refund,
TResult Function(_VoidOrder value)? voidOrder,
TResult Function(_ToggleItem value)? toggleItem, TResult Function(_ToggleItem value)? toggleItem,
TResult Function(_ToggleSelectAll value)? toggleSelectAll, TResult Function(_ToggleSelectAll value)? toggleSelectAll,
required TResult orElse(), required TResult orElse(),
@ -1238,6 +1298,235 @@ abstract class _Refund implements OrderFormEvent {
throw _privateConstructorUsedError; throw _privateConstructorUsedError;
} }
/// @nodoc
abstract class _$$VoidOrderImplCopyWith<$Res> {
factory _$$VoidOrderImplCopyWith(
_$VoidOrderImpl value, $Res Function(_$VoidOrderImpl) then) =
__$$VoidOrderImplCopyWithImpl<$Res>;
@useResult
$Res call({List<OrderItem> items, String orderId, String reason});
}
/// @nodoc
class __$$VoidOrderImplCopyWithImpl<$Res>
extends _$OrderFormEventCopyWithImpl<$Res, _$VoidOrderImpl>
implements _$$VoidOrderImplCopyWith<$Res> {
__$$VoidOrderImplCopyWithImpl(
_$VoidOrderImpl _value, $Res Function(_$VoidOrderImpl) _then)
: super(_value, _then);
/// Create a copy of OrderFormEvent
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? items = null,
Object? orderId = null,
Object? reason = null,
}) {
return _then(_$VoidOrderImpl(
items: null == items
? _value._items
: items // ignore: cast_nullable_to_non_nullable
as List<OrderItem>,
orderId: null == orderId
? _value.orderId
: orderId // ignore: cast_nullable_to_non_nullable
as String,
reason: null == reason
? _value.reason
: reason // ignore: cast_nullable_to_non_nullable
as String,
));
}
}
/// @nodoc
class _$VoidOrderImpl implements _VoidOrder {
const _$VoidOrderImpl(
{required final List<OrderItem> items,
required this.orderId,
required this.reason})
: _items = items;
final List<OrderItem> _items;
@override
List<OrderItem> get items {
if (_items is EqualUnmodifiableListView) return _items;
// ignore: implicit_dynamic_type
return EqualUnmodifiableListView(_items);
}
@override
final String orderId;
@override
final String reason;
@override
String toString() {
return 'OrderFormEvent.voidOrder(items: $items, orderId: $orderId, reason: $reason)';
}
@override
bool operator ==(Object other) {
return identical(this, other) ||
(other.runtimeType == runtimeType &&
other is _$VoidOrderImpl &&
const DeepCollectionEquality().equals(other._items, _items) &&
(identical(other.orderId, orderId) || other.orderId == orderId) &&
(identical(other.reason, reason) || other.reason == reason));
}
@override
int get hashCode => Object.hash(runtimeType,
const DeepCollectionEquality().hash(_items), orderId, reason);
/// Create a copy of OrderFormEvent
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@override
@pragma('vm:prefer-inline')
_$$VoidOrderImplCopyWith<_$VoidOrderImpl> get copyWith =>
__$$VoidOrderImplCopyWithImpl<_$VoidOrderImpl>(this, _$identity);
@override
@optionalTypeArgs
TResult when<TResult extends Object?>({
required TResult Function(Order order) started,
required TResult Function(List<ProductQuantity> items, String customerName,
OrderType orderType, TableModel table)
create,
required TResult Function(List<ProductQuantity> items, String customerName,
OrderType orderType, TableModel table, PaymentMethod paymentMethod)
createWithPayment,
required TResult Function(List<ProductQuantity> items, String orderId)
addToOrder,
required TResult Function(
List<OrderItem> items, String orderId, String reason)
refund,
required TResult Function(
List<OrderItem> items, String orderId, String reason)
voidOrder,
required TResult Function(OrderItem item) toggleItem,
required TResult Function(bool selectAll) toggleSelectAll,
}) {
return voidOrder(items, orderId, reason);
}
@override
@optionalTypeArgs
TResult? whenOrNull<TResult extends Object?>({
TResult? Function(Order order)? started,
TResult? Function(List<ProductQuantity> items, String customerName,
OrderType orderType, TableModel table)?
create,
TResult? Function(List<ProductQuantity> items, String customerName,
OrderType orderType, TableModel table, PaymentMethod paymentMethod)?
createWithPayment,
TResult? Function(List<ProductQuantity> items, String orderId)? addToOrder,
TResult? Function(List<OrderItem> items, String orderId, String reason)?
refund,
TResult? Function(List<OrderItem> items, String orderId, String reason)?
voidOrder,
TResult? Function(OrderItem item)? toggleItem,
TResult? Function(bool selectAll)? toggleSelectAll,
}) {
return voidOrder?.call(items, orderId, reason);
}
@override
@optionalTypeArgs
TResult maybeWhen<TResult extends Object?>({
TResult Function(Order order)? started,
TResult Function(List<ProductQuantity> items, String customerName,
OrderType orderType, TableModel table)?
create,
TResult Function(List<ProductQuantity> items, String customerName,
OrderType orderType, TableModel table, PaymentMethod paymentMethod)?
createWithPayment,
TResult Function(List<ProductQuantity> items, String orderId)? addToOrder,
TResult Function(List<OrderItem> items, String orderId, String reason)?
refund,
TResult Function(List<OrderItem> items, String orderId, String reason)?
voidOrder,
TResult Function(OrderItem item)? toggleItem,
TResult Function(bool selectAll)? toggleSelectAll,
required TResult orElse(),
}) {
if (voidOrder != null) {
return voidOrder(items, orderId, reason);
}
return orElse();
}
@override
@optionalTypeArgs
TResult map<TResult extends Object?>({
required TResult Function(_Started value) started,
required TResult Function(_Create value) create,
required TResult Function(_CreateWithPaymentMethod value) createWithPayment,
required TResult Function(_AddToOrder value) addToOrder,
required TResult Function(_Refund value) refund,
required TResult Function(_VoidOrder value) voidOrder,
required TResult Function(_ToggleItem value) toggleItem,
required TResult Function(_ToggleSelectAll value) toggleSelectAll,
}) {
return voidOrder(this);
}
@override
@optionalTypeArgs
TResult? mapOrNull<TResult extends Object?>({
TResult? Function(_Started value)? started,
TResult? Function(_Create value)? create,
TResult? Function(_CreateWithPaymentMethod value)? createWithPayment,
TResult? Function(_AddToOrder value)? addToOrder,
TResult? Function(_Refund value)? refund,
TResult? Function(_VoidOrder value)? voidOrder,
TResult? Function(_ToggleItem value)? toggleItem,
TResult? Function(_ToggleSelectAll value)? toggleSelectAll,
}) {
return voidOrder?.call(this);
}
@override
@optionalTypeArgs
TResult maybeMap<TResult extends Object?>({
TResult Function(_Started value)? started,
TResult Function(_Create value)? create,
TResult Function(_CreateWithPaymentMethod value)? createWithPayment,
TResult Function(_AddToOrder value)? addToOrder,
TResult Function(_Refund value)? refund,
TResult Function(_VoidOrder value)? voidOrder,
TResult Function(_ToggleItem value)? toggleItem,
TResult Function(_ToggleSelectAll value)? toggleSelectAll,
required TResult orElse(),
}) {
if (voidOrder != null) {
return voidOrder(this);
}
return orElse();
}
}
abstract class _VoidOrder implements OrderFormEvent {
const factory _VoidOrder(
{required final List<OrderItem> items,
required final String orderId,
required final String reason}) = _$VoidOrderImpl;
List<OrderItem> get items;
String get orderId;
String get reason;
/// Create a copy of OrderFormEvent
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
_$$VoidOrderImplCopyWith<_$VoidOrderImpl> get copyWith =>
throw _privateConstructorUsedError;
}
/// @nodoc /// @nodoc
abstract class _$$ToggleItemImplCopyWith<$Res> { abstract class _$$ToggleItemImplCopyWith<$Res> {
factory _$$ToggleItemImplCopyWith( factory _$$ToggleItemImplCopyWith(
@ -1318,6 +1607,9 @@ class _$ToggleItemImpl implements _ToggleItem {
required TResult Function( required TResult Function(
List<OrderItem> items, String orderId, String reason) List<OrderItem> items, String orderId, String reason)
refund, refund,
required TResult Function(
List<OrderItem> items, String orderId, String reason)
voidOrder,
required TResult Function(OrderItem item) toggleItem, required TResult Function(OrderItem item) toggleItem,
required TResult Function(bool selectAll) toggleSelectAll, required TResult Function(bool selectAll) toggleSelectAll,
}) { }) {
@ -1337,6 +1629,8 @@ class _$ToggleItemImpl implements _ToggleItem {
TResult? Function(List<ProductQuantity> items, String orderId)? addToOrder, TResult? Function(List<ProductQuantity> items, String orderId)? addToOrder,
TResult? Function(List<OrderItem> items, String orderId, String reason)? TResult? Function(List<OrderItem> items, String orderId, String reason)?
refund, refund,
TResult? Function(List<OrderItem> items, String orderId, String reason)?
voidOrder,
TResult? Function(OrderItem item)? toggleItem, TResult? Function(OrderItem item)? toggleItem,
TResult? Function(bool selectAll)? toggleSelectAll, TResult? Function(bool selectAll)? toggleSelectAll,
}) { }) {
@ -1356,6 +1650,8 @@ class _$ToggleItemImpl implements _ToggleItem {
TResult Function(List<ProductQuantity> items, String orderId)? addToOrder, TResult Function(List<ProductQuantity> items, String orderId)? addToOrder,
TResult Function(List<OrderItem> items, String orderId, String reason)? TResult Function(List<OrderItem> items, String orderId, String reason)?
refund, refund,
TResult Function(List<OrderItem> items, String orderId, String reason)?
voidOrder,
TResult Function(OrderItem item)? toggleItem, TResult Function(OrderItem item)? toggleItem,
TResult Function(bool selectAll)? toggleSelectAll, TResult Function(bool selectAll)? toggleSelectAll,
required TResult orElse(), required TResult orElse(),
@ -1374,6 +1670,7 @@ class _$ToggleItemImpl implements _ToggleItem {
required TResult Function(_CreateWithPaymentMethod value) createWithPayment, required TResult Function(_CreateWithPaymentMethod value) createWithPayment,
required TResult Function(_AddToOrder value) addToOrder, required TResult Function(_AddToOrder value) addToOrder,
required TResult Function(_Refund value) refund, required TResult Function(_Refund value) refund,
required TResult Function(_VoidOrder value) voidOrder,
required TResult Function(_ToggleItem value) toggleItem, required TResult Function(_ToggleItem value) toggleItem,
required TResult Function(_ToggleSelectAll value) toggleSelectAll, required TResult Function(_ToggleSelectAll value) toggleSelectAll,
}) { }) {
@ -1388,6 +1685,7 @@ class _$ToggleItemImpl implements _ToggleItem {
TResult? Function(_CreateWithPaymentMethod value)? createWithPayment, TResult? Function(_CreateWithPaymentMethod value)? createWithPayment,
TResult? Function(_AddToOrder value)? addToOrder, TResult? Function(_AddToOrder value)? addToOrder,
TResult? Function(_Refund value)? refund, TResult? Function(_Refund value)? refund,
TResult? Function(_VoidOrder value)? voidOrder,
TResult? Function(_ToggleItem value)? toggleItem, TResult? Function(_ToggleItem value)? toggleItem,
TResult? Function(_ToggleSelectAll value)? toggleSelectAll, TResult? Function(_ToggleSelectAll value)? toggleSelectAll,
}) { }) {
@ -1402,6 +1700,7 @@ class _$ToggleItemImpl implements _ToggleItem {
TResult Function(_CreateWithPaymentMethod value)? createWithPayment, TResult Function(_CreateWithPaymentMethod value)? createWithPayment,
TResult Function(_AddToOrder value)? addToOrder, TResult Function(_AddToOrder value)? addToOrder,
TResult Function(_Refund value)? refund, TResult Function(_Refund value)? refund,
TResult Function(_VoidOrder value)? voidOrder,
TResult Function(_ToggleItem value)? toggleItem, TResult Function(_ToggleItem value)? toggleItem,
TResult Function(_ToggleSelectAll value)? toggleSelectAll, TResult Function(_ToggleSelectAll value)? toggleSelectAll,
required TResult orElse(), required TResult orElse(),
@ -1507,6 +1806,9 @@ class _$ToggleSelectAllImpl implements _ToggleSelectAll {
required TResult Function( required TResult Function(
List<OrderItem> items, String orderId, String reason) List<OrderItem> items, String orderId, String reason)
refund, refund,
required TResult Function(
List<OrderItem> items, String orderId, String reason)
voidOrder,
required TResult Function(OrderItem item) toggleItem, required TResult Function(OrderItem item) toggleItem,
required TResult Function(bool selectAll) toggleSelectAll, required TResult Function(bool selectAll) toggleSelectAll,
}) { }) {
@ -1526,6 +1828,8 @@ class _$ToggleSelectAllImpl implements _ToggleSelectAll {
TResult? Function(List<ProductQuantity> items, String orderId)? addToOrder, TResult? Function(List<ProductQuantity> items, String orderId)? addToOrder,
TResult? Function(List<OrderItem> items, String orderId, String reason)? TResult? Function(List<OrderItem> items, String orderId, String reason)?
refund, refund,
TResult? Function(List<OrderItem> items, String orderId, String reason)?
voidOrder,
TResult? Function(OrderItem item)? toggleItem, TResult? Function(OrderItem item)? toggleItem,
TResult? Function(bool selectAll)? toggleSelectAll, TResult? Function(bool selectAll)? toggleSelectAll,
}) { }) {
@ -1545,6 +1849,8 @@ class _$ToggleSelectAllImpl implements _ToggleSelectAll {
TResult Function(List<ProductQuantity> items, String orderId)? addToOrder, TResult Function(List<ProductQuantity> items, String orderId)? addToOrder,
TResult Function(List<OrderItem> items, String orderId, String reason)? TResult Function(List<OrderItem> items, String orderId, String reason)?
refund, refund,
TResult Function(List<OrderItem> items, String orderId, String reason)?
voidOrder,
TResult Function(OrderItem item)? toggleItem, TResult Function(OrderItem item)? toggleItem,
TResult Function(bool selectAll)? toggleSelectAll, TResult Function(bool selectAll)? toggleSelectAll,
required TResult orElse(), required TResult orElse(),
@ -1563,6 +1869,7 @@ class _$ToggleSelectAllImpl implements _ToggleSelectAll {
required TResult Function(_CreateWithPaymentMethod value) createWithPayment, required TResult Function(_CreateWithPaymentMethod value) createWithPayment,
required TResult Function(_AddToOrder value) addToOrder, required TResult Function(_AddToOrder value) addToOrder,
required TResult Function(_Refund value) refund, required TResult Function(_Refund value) refund,
required TResult Function(_VoidOrder value) voidOrder,
required TResult Function(_ToggleItem value) toggleItem, required TResult Function(_ToggleItem value) toggleItem,
required TResult Function(_ToggleSelectAll value) toggleSelectAll, required TResult Function(_ToggleSelectAll value) toggleSelectAll,
}) { }) {
@ -1577,6 +1884,7 @@ class _$ToggleSelectAllImpl implements _ToggleSelectAll {
TResult? Function(_CreateWithPaymentMethod value)? createWithPayment, TResult? Function(_CreateWithPaymentMethod value)? createWithPayment,
TResult? Function(_AddToOrder value)? addToOrder, TResult? Function(_AddToOrder value)? addToOrder,
TResult? Function(_Refund value)? refund, TResult? Function(_Refund value)? refund,
TResult? Function(_VoidOrder value)? voidOrder,
TResult? Function(_ToggleItem value)? toggleItem, TResult? Function(_ToggleItem value)? toggleItem,
TResult? Function(_ToggleSelectAll value)? toggleSelectAll, TResult? Function(_ToggleSelectAll value)? toggleSelectAll,
}) { }) {
@ -1591,6 +1899,7 @@ class _$ToggleSelectAllImpl implements _ToggleSelectAll {
TResult Function(_CreateWithPaymentMethod value)? createWithPayment, TResult Function(_CreateWithPaymentMethod value)? createWithPayment,
TResult Function(_AddToOrder value)? addToOrder, TResult Function(_AddToOrder value)? addToOrder,
TResult Function(_Refund value)? refund, TResult Function(_Refund value)? refund,
TResult Function(_VoidOrder value)? voidOrder,
TResult Function(_ToggleItem value)? toggleItem, TResult Function(_ToggleItem value)? toggleItem,
TResult Function(_ToggleSelectAll value)? toggleSelectAll, TResult Function(_ToggleSelectAll value)? toggleSelectAll,
required TResult orElse(), required TResult orElse(),
@ -1620,8 +1929,8 @@ mixin _$OrderFormState {
TResult when<TResult extends Object?>({ TResult when<TResult extends Object?>({
required TResult Function() initial, required TResult Function() initial,
required TResult Function() loading, required TResult Function() loading,
required TResult Function( required TResult Function(Order order, List<OrderItem> selectedItems,
Order order, List<OrderItem> selectedItems, bool isAllSelected) int totalVoidOrRefund, bool isAllSelected)
loaded, loaded,
required TResult Function(Order order) success, required TResult Function(Order order) success,
required TResult Function() successMsg, required TResult Function() successMsg,
@ -1632,8 +1941,8 @@ mixin _$OrderFormState {
TResult? whenOrNull<TResult extends Object?>({ TResult? whenOrNull<TResult extends Object?>({
TResult? Function()? initial, TResult? Function()? initial,
TResult? Function()? loading, TResult? Function()? loading,
TResult? Function( TResult? Function(Order order, List<OrderItem> selectedItems,
Order order, List<OrderItem> selectedItems, bool isAllSelected)? int totalVoidOrRefund, bool isAllSelected)?
loaded, loaded,
TResult? Function(Order order)? success, TResult? Function(Order order)? success,
TResult? Function()? successMsg, TResult? Function()? successMsg,
@ -1644,8 +1953,8 @@ mixin _$OrderFormState {
TResult maybeWhen<TResult extends Object?>({ TResult maybeWhen<TResult extends Object?>({
TResult Function()? initial, TResult Function()? initial,
TResult Function()? loading, TResult Function()? loading,
TResult Function( TResult Function(Order order, List<OrderItem> selectedItems,
Order order, List<OrderItem> selectedItems, bool isAllSelected)? int totalVoidOrRefund, bool isAllSelected)?
loaded, loaded,
TResult Function(Order order)? success, TResult Function(Order order)? success,
TResult Function()? successMsg, TResult Function()? successMsg,
@ -1750,8 +2059,8 @@ class _$InitialImpl implements _Initial {
TResult when<TResult extends Object?>({ TResult when<TResult extends Object?>({
required TResult Function() initial, required TResult Function() initial,
required TResult Function() loading, required TResult Function() loading,
required TResult Function( required TResult Function(Order order, List<OrderItem> selectedItems,
Order order, List<OrderItem> selectedItems, bool isAllSelected) int totalVoidOrRefund, bool isAllSelected)
loaded, loaded,
required TResult Function(Order order) success, required TResult Function(Order order) success,
required TResult Function() successMsg, required TResult Function() successMsg,
@ -1765,8 +2074,8 @@ class _$InitialImpl implements _Initial {
TResult? whenOrNull<TResult extends Object?>({ TResult? whenOrNull<TResult extends Object?>({
TResult? Function()? initial, TResult? Function()? initial,
TResult? Function()? loading, TResult? Function()? loading,
TResult? Function( TResult? Function(Order order, List<OrderItem> selectedItems,
Order order, List<OrderItem> selectedItems, bool isAllSelected)? int totalVoidOrRefund, bool isAllSelected)?
loaded, loaded,
TResult? Function(Order order)? success, TResult? Function(Order order)? success,
TResult? Function()? successMsg, TResult? Function()? successMsg,
@ -1780,8 +2089,8 @@ class _$InitialImpl implements _Initial {
TResult maybeWhen<TResult extends Object?>({ TResult maybeWhen<TResult extends Object?>({
TResult Function()? initial, TResult Function()? initial,
TResult Function()? loading, TResult Function()? loading,
TResult Function( TResult Function(Order order, List<OrderItem> selectedItems,
Order order, List<OrderItem> selectedItems, bool isAllSelected)? int totalVoidOrRefund, bool isAllSelected)?
loaded, loaded,
TResult Function(Order order)? success, TResult Function(Order order)? success,
TResult Function()? successMsg, TResult Function()? successMsg,
@ -1885,8 +2194,8 @@ class _$LoadingImpl implements _Loading {
TResult when<TResult extends Object?>({ TResult when<TResult extends Object?>({
required TResult Function() initial, required TResult Function() initial,
required TResult Function() loading, required TResult Function() loading,
required TResult Function( required TResult Function(Order order, List<OrderItem> selectedItems,
Order order, List<OrderItem> selectedItems, bool isAllSelected) int totalVoidOrRefund, bool isAllSelected)
loaded, loaded,
required TResult Function(Order order) success, required TResult Function(Order order) success,
required TResult Function() successMsg, required TResult Function() successMsg,
@ -1900,8 +2209,8 @@ class _$LoadingImpl implements _Loading {
TResult? whenOrNull<TResult extends Object?>({ TResult? whenOrNull<TResult extends Object?>({
TResult? Function()? initial, TResult? Function()? initial,
TResult? Function()? loading, TResult? Function()? loading,
TResult? Function( TResult? Function(Order order, List<OrderItem> selectedItems,
Order order, List<OrderItem> selectedItems, bool isAllSelected)? int totalVoidOrRefund, bool isAllSelected)?
loaded, loaded,
TResult? Function(Order order)? success, TResult? Function(Order order)? success,
TResult? Function()? successMsg, TResult? Function()? successMsg,
@ -1915,8 +2224,8 @@ class _$LoadingImpl implements _Loading {
TResult maybeWhen<TResult extends Object?>({ TResult maybeWhen<TResult extends Object?>({
TResult Function()? initial, TResult Function()? initial,
TResult Function()? loading, TResult Function()? loading,
TResult Function( TResult Function(Order order, List<OrderItem> selectedItems,
Order order, List<OrderItem> selectedItems, bool isAllSelected)? int totalVoidOrRefund, bool isAllSelected)?
loaded, loaded,
TResult Function(Order order)? success, TResult Function(Order order)? success,
TResult Function()? successMsg, TResult Function()? successMsg,
@ -1983,7 +2292,11 @@ abstract class _$$LoadedImplCopyWith<$Res> {
_$LoadedImpl value, $Res Function(_$LoadedImpl) then) = _$LoadedImpl value, $Res Function(_$LoadedImpl) then) =
__$$LoadedImplCopyWithImpl<$Res>; __$$LoadedImplCopyWithImpl<$Res>;
@useResult @useResult
$Res call({Order order, List<OrderItem> selectedItems, bool isAllSelected}); $Res call(
{Order order,
List<OrderItem> selectedItems,
int totalVoidOrRefund,
bool isAllSelected});
} }
/// @nodoc /// @nodoc
@ -2001,6 +2314,7 @@ class __$$LoadedImplCopyWithImpl<$Res>
$Res call({ $Res call({
Object? order = null, Object? order = null,
Object? selectedItems = null, Object? selectedItems = null,
Object? totalVoidOrRefund = null,
Object? isAllSelected = null, Object? isAllSelected = null,
}) { }) {
return _then(_$LoadedImpl( return _then(_$LoadedImpl(
@ -2012,6 +2326,10 @@ class __$$LoadedImplCopyWithImpl<$Res>
? _value._selectedItems ? _value._selectedItems
: selectedItems // ignore: cast_nullable_to_non_nullable : selectedItems // ignore: cast_nullable_to_non_nullable
as List<OrderItem>, as List<OrderItem>,
totalVoidOrRefund: null == totalVoidOrRefund
? _value.totalVoidOrRefund
: totalVoidOrRefund // ignore: cast_nullable_to_non_nullable
as int,
isAllSelected: null == isAllSelected isAllSelected: null == isAllSelected
? _value.isAllSelected ? _value.isAllSelected
: isAllSelected // ignore: cast_nullable_to_non_nullable : isAllSelected // ignore: cast_nullable_to_non_nullable
@ -2026,6 +2344,7 @@ class _$LoadedImpl implements _Loaded {
const _$LoadedImpl( const _$LoadedImpl(
{required this.order, {required this.order,
final List<OrderItem> selectedItems = const [], final List<OrderItem> selectedItems = const [],
this.totalVoidOrRefund = 0,
this.isAllSelected = false}) this.isAllSelected = false})
: _selectedItems = selectedItems; : _selectedItems = selectedItems;
@ -2040,13 +2359,16 @@ class _$LoadedImpl implements _Loaded {
return EqualUnmodifiableListView(_selectedItems); return EqualUnmodifiableListView(_selectedItems);
} }
@override
@JsonKey()
final int totalVoidOrRefund;
@override @override
@JsonKey() @JsonKey()
final bool isAllSelected; final bool isAllSelected;
@override @override
String toString() { String toString() {
return 'OrderFormState.loaded(order: $order, selectedItems: $selectedItems, isAllSelected: $isAllSelected)'; return 'OrderFormState.loaded(order: $order, selectedItems: $selectedItems, totalVoidOrRefund: $totalVoidOrRefund, isAllSelected: $isAllSelected)';
} }
@override @override
@ -2057,13 +2379,19 @@ class _$LoadedImpl implements _Loaded {
(identical(other.order, order) || other.order == order) && (identical(other.order, order) || other.order == order) &&
const DeepCollectionEquality() const DeepCollectionEquality()
.equals(other._selectedItems, _selectedItems) && .equals(other._selectedItems, _selectedItems) &&
(identical(other.totalVoidOrRefund, totalVoidOrRefund) ||
other.totalVoidOrRefund == totalVoidOrRefund) &&
(identical(other.isAllSelected, isAllSelected) || (identical(other.isAllSelected, isAllSelected) ||
other.isAllSelected == isAllSelected)); other.isAllSelected == isAllSelected));
} }
@override @override
int get hashCode => Object.hash(runtimeType, order, int get hashCode => Object.hash(
const DeepCollectionEquality().hash(_selectedItems), isAllSelected); runtimeType,
order,
const DeepCollectionEquality().hash(_selectedItems),
totalVoidOrRefund,
isAllSelected);
/// Create a copy of OrderFormState /// Create a copy of OrderFormState
/// with the given fields replaced by the non-null parameter values. /// with the given fields replaced by the non-null parameter values.
@ -2078,14 +2406,14 @@ class _$LoadedImpl implements _Loaded {
TResult when<TResult extends Object?>({ TResult when<TResult extends Object?>({
required TResult Function() initial, required TResult Function() initial,
required TResult Function() loading, required TResult Function() loading,
required TResult Function( required TResult Function(Order order, List<OrderItem> selectedItems,
Order order, List<OrderItem> selectedItems, bool isAllSelected) int totalVoidOrRefund, bool isAllSelected)
loaded, loaded,
required TResult Function(Order order) success, required TResult Function(Order order) success,
required TResult Function() successMsg, required TResult Function() successMsg,
required TResult Function(String message) error, required TResult Function(String message) error,
}) { }) {
return loaded(order, selectedItems, isAllSelected); return loaded(order, selectedItems, totalVoidOrRefund, isAllSelected);
} }
@override @override
@ -2093,14 +2421,14 @@ class _$LoadedImpl implements _Loaded {
TResult? whenOrNull<TResult extends Object?>({ TResult? whenOrNull<TResult extends Object?>({
TResult? Function()? initial, TResult? Function()? initial,
TResult? Function()? loading, TResult? Function()? loading,
TResult? Function( TResult? Function(Order order, List<OrderItem> selectedItems,
Order order, List<OrderItem> selectedItems, bool isAllSelected)? int totalVoidOrRefund, bool isAllSelected)?
loaded, loaded,
TResult? Function(Order order)? success, TResult? Function(Order order)? success,
TResult? Function()? successMsg, TResult? Function()? successMsg,
TResult? Function(String message)? error, TResult? Function(String message)? error,
}) { }) {
return loaded?.call(order, selectedItems, isAllSelected); return loaded?.call(order, selectedItems, totalVoidOrRefund, isAllSelected);
} }
@override @override
@ -2108,8 +2436,8 @@ class _$LoadedImpl implements _Loaded {
TResult maybeWhen<TResult extends Object?>({ TResult maybeWhen<TResult extends Object?>({
TResult Function()? initial, TResult Function()? initial,
TResult Function()? loading, TResult Function()? loading,
TResult Function( TResult Function(Order order, List<OrderItem> selectedItems,
Order order, List<OrderItem> selectedItems, bool isAllSelected)? int totalVoidOrRefund, bool isAllSelected)?
loaded, loaded,
TResult Function(Order order)? success, TResult Function(Order order)? success,
TResult Function()? successMsg, TResult Function()? successMsg,
@ -2117,7 +2445,7 @@ class _$LoadedImpl implements _Loaded {
required TResult orElse(), required TResult orElse(),
}) { }) {
if (loaded != null) { if (loaded != null) {
return loaded(order, selectedItems, isAllSelected); return loaded(order, selectedItems, totalVoidOrRefund, isAllSelected);
} }
return orElse(); return orElse();
} }
@ -2170,10 +2498,12 @@ abstract class _Loaded implements OrderFormState {
const factory _Loaded( const factory _Loaded(
{required final Order order, {required final Order order,
final List<OrderItem> selectedItems, final List<OrderItem> selectedItems,
final int totalVoidOrRefund,
final bool isAllSelected}) = _$LoadedImpl; final bool isAllSelected}) = _$LoadedImpl;
Order get order; Order get order;
List<OrderItem> get selectedItems; List<OrderItem> get selectedItems;
int get totalVoidOrRefund;
bool get isAllSelected; bool get isAllSelected;
/// Create a copy of OrderFormState /// Create a copy of OrderFormState
@ -2253,8 +2583,8 @@ class _$SuccessImpl implements _Success {
TResult when<TResult extends Object?>({ TResult when<TResult extends Object?>({
required TResult Function() initial, required TResult Function() initial,
required TResult Function() loading, required TResult Function() loading,
required TResult Function( required TResult Function(Order order, List<OrderItem> selectedItems,
Order order, List<OrderItem> selectedItems, bool isAllSelected) int totalVoidOrRefund, bool isAllSelected)
loaded, loaded,
required TResult Function(Order order) success, required TResult Function(Order order) success,
required TResult Function() successMsg, required TResult Function() successMsg,
@ -2268,8 +2598,8 @@ class _$SuccessImpl implements _Success {
TResult? whenOrNull<TResult extends Object?>({ TResult? whenOrNull<TResult extends Object?>({
TResult? Function()? initial, TResult? Function()? initial,
TResult? Function()? loading, TResult? Function()? loading,
TResult? Function( TResult? Function(Order order, List<OrderItem> selectedItems,
Order order, List<OrderItem> selectedItems, bool isAllSelected)? int totalVoidOrRefund, bool isAllSelected)?
loaded, loaded,
TResult? Function(Order order)? success, TResult? Function(Order order)? success,
TResult? Function()? successMsg, TResult? Function()? successMsg,
@ -2283,8 +2613,8 @@ class _$SuccessImpl implements _Success {
TResult maybeWhen<TResult extends Object?>({ TResult maybeWhen<TResult extends Object?>({
TResult Function()? initial, TResult Function()? initial,
TResult Function()? loading, TResult Function()? loading,
TResult Function( TResult Function(Order order, List<OrderItem> selectedItems,
Order order, List<OrderItem> selectedItems, bool isAllSelected)? int totalVoidOrRefund, bool isAllSelected)?
loaded, loaded,
TResult Function(Order order)? success, TResult Function(Order order)? success,
TResult Function()? successMsg, TResult Function()? successMsg,
@ -2396,8 +2726,8 @@ class _$SuccessMsgImpl implements _SuccessMsg {
TResult when<TResult extends Object?>({ TResult when<TResult extends Object?>({
required TResult Function() initial, required TResult Function() initial,
required TResult Function() loading, required TResult Function() loading,
required TResult Function( required TResult Function(Order order, List<OrderItem> selectedItems,
Order order, List<OrderItem> selectedItems, bool isAllSelected) int totalVoidOrRefund, bool isAllSelected)
loaded, loaded,
required TResult Function(Order order) success, required TResult Function(Order order) success,
required TResult Function() successMsg, required TResult Function() successMsg,
@ -2411,8 +2741,8 @@ class _$SuccessMsgImpl implements _SuccessMsg {
TResult? whenOrNull<TResult extends Object?>({ TResult? whenOrNull<TResult extends Object?>({
TResult? Function()? initial, TResult? Function()? initial,
TResult? Function()? loading, TResult? Function()? loading,
TResult? Function( TResult? Function(Order order, List<OrderItem> selectedItems,
Order order, List<OrderItem> selectedItems, bool isAllSelected)? int totalVoidOrRefund, bool isAllSelected)?
loaded, loaded,
TResult? Function(Order order)? success, TResult? Function(Order order)? success,
TResult? Function()? successMsg, TResult? Function()? successMsg,
@ -2426,8 +2756,8 @@ class _$SuccessMsgImpl implements _SuccessMsg {
TResult maybeWhen<TResult extends Object?>({ TResult maybeWhen<TResult extends Object?>({
TResult Function()? initial, TResult Function()? initial,
TResult Function()? loading, TResult Function()? loading,
TResult Function( TResult Function(Order order, List<OrderItem> selectedItems,
Order order, List<OrderItem> selectedItems, bool isAllSelected)? int totalVoidOrRefund, bool isAllSelected)?
loaded, loaded,
TResult Function(Order order)? success, TResult Function(Order order)? success,
TResult Function()? successMsg, TResult Function()? successMsg,
@ -2558,8 +2888,8 @@ class _$ErrorImpl implements _Error {
TResult when<TResult extends Object?>({ TResult when<TResult extends Object?>({
required TResult Function() initial, required TResult Function() initial,
required TResult Function() loading, required TResult Function() loading,
required TResult Function( required TResult Function(Order order, List<OrderItem> selectedItems,
Order order, List<OrderItem> selectedItems, bool isAllSelected) int totalVoidOrRefund, bool isAllSelected)
loaded, loaded,
required TResult Function(Order order) success, required TResult Function(Order order) success,
required TResult Function() successMsg, required TResult Function() successMsg,
@ -2573,8 +2903,8 @@ class _$ErrorImpl implements _Error {
TResult? whenOrNull<TResult extends Object?>({ TResult? whenOrNull<TResult extends Object?>({
TResult? Function()? initial, TResult? Function()? initial,
TResult? Function()? loading, TResult? Function()? loading,
TResult? Function( TResult? Function(Order order, List<OrderItem> selectedItems,
Order order, List<OrderItem> selectedItems, bool isAllSelected)? int totalVoidOrRefund, bool isAllSelected)?
loaded, loaded,
TResult? Function(Order order)? success, TResult? Function(Order order)? success,
TResult? Function()? successMsg, TResult? Function()? successMsg,
@ -2588,8 +2918,8 @@ class _$ErrorImpl implements _Error {
TResult maybeWhen<TResult extends Object?>({ TResult maybeWhen<TResult extends Object?>({
TResult Function()? initial, TResult Function()? initial,
TResult Function()? loading, TResult Function()? loading,
TResult Function( TResult Function(Order order, List<OrderItem> selectedItems,
Order order, List<OrderItem> selectedItems, bool isAllSelected)? int totalVoidOrRefund, bool isAllSelected)?
loaded, loaded,
TResult Function(Order order)? success, TResult Function(Order order)? success,
TResult Function()? successMsg, TResult Function()? successMsg,

View File

@ -25,6 +25,11 @@ class OrderFormEvent with _$OrderFormEvent {
required String orderId, required String orderId,
required String reason, required String reason,
}) = _Refund; }) = _Refund;
const factory OrderFormEvent.voidOrder({
required List<OrderItem> items,
required String orderId,
required String reason,
}) = _VoidOrder;
const factory OrderFormEvent.toggleItem(OrderItem item) = _ToggleItem; const factory OrderFormEvent.toggleItem(OrderItem item) = _ToggleItem;
const factory OrderFormEvent.toggleSelectAll(bool selectAll) = const factory OrderFormEvent.toggleSelectAll(bool selectAll) =
_ToggleSelectAll; _ToggleSelectAll;

View File

@ -7,6 +7,7 @@ class OrderFormState with _$OrderFormState {
const factory OrderFormState.loaded({ const factory OrderFormState.loaded({
required Order order, required Order order,
@Default([]) List<OrderItem> selectedItems, @Default([]) List<OrderItem> selectedItems,
@Default(0) int totalVoidOrRefund,
@Default(false) bool isAllSelected, @Default(false) bool isAllSelected,
}) = _Loaded; }) = _Loaded;
const factory OrderFormState.success(Order order) = _Success; const factory OrderFormState.success(Order order) = _Success;

View File

@ -5,6 +5,7 @@ import 'package:enaklo_pos/core/components/flushbar.dart';
import 'package:enaklo_pos/core/components/spaces.dart'; import 'package:enaklo_pos/core/components/spaces.dart';
import 'package:enaklo_pos/core/constants/colors.dart'; import 'package:enaklo_pos/core/constants/colors.dart';
import 'package:enaklo_pos/core/extensions/build_context_ext.dart'; import 'package:enaklo_pos/core/extensions/build_context_ext.dart';
import 'package:enaklo_pos/core/extensions/date_time_ext.dart';
import 'package:enaklo_pos/core/extensions/string_ext.dart'; import 'package:enaklo_pos/core/extensions/string_ext.dart';
import 'package:enaklo_pos/data/models/response/order_response_model.dart'; import 'package:enaklo_pos/data/models/response/order_response_model.dart';
import 'package:enaklo_pos/presentation/home/bloc/order_form/order_form_bloc.dart'; import 'package:enaklo_pos/presentation/home/bloc/order_form/order_form_bloc.dart';
@ -30,29 +31,87 @@ class _RefundDialogState extends State<RefundDialog> {
return CustomModalDialog( return CustomModalDialog(
title: 'Refund', title: 'Refund',
subtitle: 'Pengembalian dana', subtitle: 'Pengembalian dana',
minWidth: context.deviceWidth * 0.5,
contentPadding: contentPadding:
const EdgeInsets.symmetric(horizontal: 16.0, vertical: 24.0), const EdgeInsets.symmetric(horizontal: 16.0, vertical: 24.0),
child: Column( child: Column(
children: [ children: [
Column( Row(
crossAxisAlignment: CrossAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [ children: [
Text('No. Pesanan'),
Text( Text(
'Pesanan yang akan di refund', widget.order.orderNumber ?? '',
style: const TextStyle( style: TextStyle(
color: AppColors.black,
fontSize: 14, fontSize: 14,
fontWeight: FontWeight.w600, fontWeight: FontWeight.w600,
color: AppColors.black,
), ),
), ),
SpaceHeight(12), ],
Column( ),
children: widget.selectedItems SpaceHeight(8),
.map((item) => _item(context, item)) Row(
.toList(), mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Text('Tanggal'),
Text(
(widget.order.createdAt ?? DateTime.now()).toFormattedDate2(),
style: TextStyle(
color: AppColors.black,
fontSize: 14,
fontWeight: FontWeight.w600,
),
), ),
], ],
), ),
SpaceHeight(8),
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Text('Tagihan'),
Text(
widget.selectedItems.isEmpty
? widget.order.totalAmount.toString().currencyFormatRpV2
: widget.selectedItems
.fold(
0,
(sum, item) =>
sum +
((item.unitPrice ?? 0) * (item.quantity ?? 0)),
)
.toString()
.currencyFormatRpV2,
style: TextStyle(
color: AppColors.black,
fontSize: 14,
fontWeight: FontWeight.w600,
),
),
],
),
Padding(
padding: const EdgeInsets.only(top: 16),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
'Pesanan yang akan di refund',
style: const TextStyle(
fontSize: 14,
fontWeight: FontWeight.w600,
color: AppColors.black,
),
),
SpaceHeight(12),
Column(
children: widget.selectedItems
.map((item) => _item(context, item))
.toList(),
),
],
),
),
SpaceHeight(16), SpaceHeight(16),
CustomTextField( CustomTextField(
controller: _reasonController, controller: _reasonController,

View File

@ -0,0 +1,204 @@
import 'package:enaklo_pos/core/components/buttons.dart';
import 'package:enaklo_pos/core/components/custom_modal_dialog.dart';
import 'package:enaklo_pos/core/components/custom_text_field.dart';
import 'package:enaklo_pos/core/components/flushbar.dart';
import 'package:enaklo_pos/core/components/spaces.dart';
import 'package:enaklo_pos/core/constants/colors.dart';
import 'package:enaklo_pos/core/extensions/build_context_ext.dart';
import 'package:enaklo_pos/core/extensions/date_time_ext.dart';
import 'package:enaklo_pos/core/extensions/string_ext.dart';
import 'package:enaklo_pos/data/models/response/order_response_model.dart';
import 'package:enaklo_pos/presentation/home/bloc/order_form/order_form_bloc.dart';
import 'package:enaklo_pos/presentation/sales/blocs/order_loader/order_loader_bloc.dart';
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
class VoidDialog extends StatefulWidget {
final Order order;
final List<OrderItem> selectedItems;
const VoidDialog(
{super.key, required this.order, required this.selectedItems});
@override
State<VoidDialog> createState() => _VoidDialogState();
}
class _VoidDialogState extends State<VoidDialog> {
final TextEditingController _reasonController = TextEditingController();
@override
Widget build(BuildContext context) {
return CustomModalDialog(
title: 'Void',
minWidth: context.deviceWidth * 0.5,
contentPadding:
const EdgeInsets.symmetric(horizontal: 16.0, vertical: 24.0),
child: Column(
children: [
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Text('No. Pesanan'),
Text(
widget.order.orderNumber ?? '',
style: TextStyle(
color: AppColors.black,
fontSize: 14,
fontWeight: FontWeight.w600,
),
),
],
),
SpaceHeight(8),
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Text('Tanggal'),
Text(
(widget.order.createdAt ?? DateTime.now()).toFormattedDate2(),
style: TextStyle(
color: AppColors.black,
fontSize: 14,
fontWeight: FontWeight.w600,
),
),
],
),
SpaceHeight(8),
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Text('Tagihan'),
Text(
widget.selectedItems.isEmpty
? widget.order.totalAmount.toString().currencyFormatRpV2
: widget.selectedItems
.fold(
0,
(sum, item) =>
sum +
((item.unitPrice ?? 0) * (item.quantity ?? 0)),
)
.toString()
.currencyFormatRpV2,
style: TextStyle(
color: AppColors.black,
fontSize: 14,
fontWeight: FontWeight.w600,
),
),
],
),
if (widget.selectedItems.isNotEmpty)
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
'Pesanan yang akan di void',
style: const TextStyle(
fontSize: 14,
fontWeight: FontWeight.w600,
color: AppColors.black,
),
),
SpaceHeight(12),
Column(
children: widget.selectedItems
.map((item) => _item(context, item))
.toList(),
),
],
),
SpaceHeight(16),
CustomTextField(
controller: _reasonController,
label: 'Alasan',
),
SpaceHeight(24),
BlocListener<OrderFormBloc, OrderFormState>(
listener: (context, state) {
state.maybeWhen(
orElse: () {},
successMsg: () {
context.pop();
AppFlushbar.showSuccess(context, 'Void berhasil!');
context
.read<OrderLoaderBloc>()
.add(OrderLoaderEvent.getByStatus('pending'));
},
error: (msg) {
AppFlushbar.showError(context, msg);
},
);
},
child: BlocBuilder<OrderFormBloc, OrderFormState>(
builder: (context, state) {
return state.maybeWhen(
orElse: () => Button.filled(
onPressed: () {
context.read<OrderFormBloc>().add(
OrderFormEvent.voidOrder(
orderId: widget.order.id ?? '',
reason: _reasonController.text,
items: widget.selectedItems,
),
);
},
label: 'Refund',
),
loading: () => Center(
child: const CircularProgressIndicator(),
),
);
},
),
),
],
),
);
}
Row _item(
BuildContext context,
OrderItem product,
) {
return Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
SizedBox(
width: context.deviceWidth * 0.1,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
product.productName ?? '',
style: const TextStyle(
fontSize: 14,
fontWeight: FontWeight.w600,
),
),
Text(
(product.unitPrice ?? 0).toString().currencyFormatRpV2,
style: const TextStyle(
fontSize: 14,
),
),
],
),
),
Text(
'X${product.quantity}',
style: const TextStyle(
fontSize: 14,
),
),
Text(
(product.totalPrice ?? 0).toString().currencyFormatRpV2,
style: const TextStyle(
fontSize: 14,
),
),
],
);
}
}

View File

@ -7,6 +7,7 @@ import 'package:enaklo_pos/presentation/sales/blocs/day_sales/day_sales_bloc.dar
import 'package:enaklo_pos/presentation/sales/blocs/order_loader/order_loader_bloc.dart'; import 'package:enaklo_pos/presentation/sales/blocs/order_loader/order_loader_bloc.dart';
import 'package:enaklo_pos/presentation/sales/dialog/payment_dialog.dart'; import 'package:enaklo_pos/presentation/sales/dialog/payment_dialog.dart';
import 'package:enaklo_pos/presentation/sales/dialog/refund_dialog.dart'; import 'package:enaklo_pos/presentation/sales/dialog/refund_dialog.dart';
import 'package:enaklo_pos/presentation/sales/dialog/void_dialog.dart';
import 'package:enaklo_pos/presentation/sales/widgets/sales_detail.dart'; import 'package:enaklo_pos/presentation/sales/widgets/sales_detail.dart';
import 'package:enaklo_pos/presentation/sales/widgets/sales_list_order.dart'; import 'package:enaklo_pos/presentation/sales/widgets/sales_list_order.dart';
import 'package:enaklo_pos/presentation/sales/widgets/sales_order_information.dart'; import 'package:enaklo_pos/presentation/sales/widgets/sales_order_information.dart';
@ -171,11 +172,29 @@ class _SalesPageState extends State<SalesPage> {
order: orderDetail, order: orderDetail,
actionWidget: [ actionWidget: [
if (widget.status == 'pending') ...[ if (widget.status == 'pending') ...[
Button.outlined( BlocBuilder<OrderFormBloc, OrderFormState>(
onPressed: () {}, builder: (context, state) {
label: 'Void', return state.maybeWhen(
icon: Icon(Icons.undo), orElse: () => Button.outlined(
), onPressed: () {},
label: 'Void',
icon: Icon(Icons.undo),
),
loaded: (order, selectedItems,
totalVoidOrRefund, isAllSelected) =>
Button.outlined(
onPressed: () => showDialog(
context: context,
builder: (context) => VoidDialog(
order: orderDetail!,
selectedItems: selectedItems,
),
),
label: 'Void',
icon: Icon(Icons.undo),
),
);
}),
SpaceWidth(8), SpaceWidth(8),
Button.outlined( Button.outlined(
onPressed: () => showDialog( onPressed: () => showDialog(
@ -197,14 +216,13 @@ class _SalesPageState extends State<SalesPage> {
label: 'Refund', label: 'Refund',
icon: Icon(Icons.autorenew), icon: Icon(Icons.autorenew),
), ),
loaded: loaded: (order, selectedItems,
(order, selectedItems, isAllSelected) => totalVoidOrRefund, isAllSelected) =>
Button.outlined( Button.outlined(
onPressed: () { onPressed: () {
if (selectedItems.isEmpty) { if (selectedItems.isEmpty) {
AppFlushbar.showError(context, AppFlushbar.showError(context,
'Silahkan pilih item yang ingin di refund.'); 'Silahkan pilih item yang ingin di refund.');
return; return;
} }

View File

@ -23,7 +23,8 @@ class SalesListOrder extends StatelessWidget {
builder: (context, state) { builder: (context, state) {
return state.maybeWhen( return state.maybeWhen(
orElse: () => const SizedBox.shrink(), orElse: () => const SizedBox.shrink(),
loaded: (orderX, selectedItems, isAllSelected) => Column( loaded: (orderX, selectedItems, totalVoidOrRefund, isAllSelected) =>
Column(
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: [ children: [
Container( Container(
@ -83,54 +84,83 @@ class SalesListOrder extends StatelessWidget {
return Padding( return Padding(
padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 16) padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 16)
.copyWith(top: 0), .copyWith(top: 0),
child: Row( child: Column(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [ children: [
SizedBox( Align(
width: context.deviceWidth * 0.2, alignment: Alignment.centerRight,
child: Row( child: Text(
children: [ product.status == "pending"
Checkbox( ? "Pending"
value: isSelected, : product.status == "cancelled"
activeColor: AppColors.primary, ? "Batal"
onChanged: (_) { : product.status == 'refund'
context ? "Refund"
.read<OrderFormBloc>() : "Selesai",
.add(OrderFormEvent.toggleItem(product)); style: TextStyle(
}, fontSize: 10,
), fontWeight: FontWeight.w600,
Column( color: product.status == "pending"
crossAxisAlignment: CrossAxisAlignment.start, ? Colors.blue
: product.status == "cancelled"
? Colors.red
: product.status == 'refund'
? Colors.red
: Colors.green,
),
),
),
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
SizedBox(
width: context.deviceWidth * 0.2,
child: Row(
children: [ children: [
Text( Checkbox(
product.productName ?? '', value: isSelected,
style: const TextStyle( activeColor: AppColors.primary,
fontSize: 14, onChanged: (_) {
fontWeight: FontWeight.w600, context
), .read<OrderFormBloc>()
.add(OrderFormEvent.toggleItem(product));
},
), ),
Text( Column(
(product.unitPrice ?? 0).toString().currencyFormatRpV2, crossAxisAlignment: CrossAxisAlignment.start,
style: const TextStyle( children: [
fontSize: 14, Text(
), product.productName ?? '',
style: const TextStyle(
fontSize: 14,
fontWeight: FontWeight.w600,
),
),
Text(
(product.unitPrice ?? 0)
.toString()
.currencyFormatRpV2,
style: const TextStyle(
fontSize: 14,
),
),
],
), ),
], ],
), ),
], ),
), Text(
), 'X${product.quantity}',
Text( style: const TextStyle(
'X${product.quantity}', fontSize: 14,
style: const TextStyle( ),
fontSize: 14, ),
), Text(
), (product.totalPrice ?? 0).toString().currencyFormatRpV2,
Text( style: const TextStyle(
(product.totalPrice ?? 0).toString().currencyFormatRpV2, fontSize: 14,
style: const TextStyle( ),
fontSize: 14, ),
), ],
), ),
], ],
), ),