Commit 33466091 authored by Jasa Digital's avatar Jasa Digital

trigger refresh pada menu saat pickup time

parent fd2ad158
import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_bloc/flutter_bloc.dart';
// bloc ini kepaksa dibuat untuk trigger refres di confirmation page, mungkin dibutuhkan juga untuk trigger di tempat lain nantinya // bloc ini kepaksa dibuat untuk trigger refres di confirmation page, mungkin dibutuhkan juga untuk trigger di tempat lain nantinya
class TriggerRefreshInConfirmationPage extends Cubit<bool> { class TriggerRefresh extends Cubit<bool> {
TriggerRefreshInConfirmationPage() : super(false); TriggerRefresh() : super(false);
void trigger(bool status) { void trigger(bool status) {
emit(status); emit(status);
......
...@@ -198,7 +198,7 @@ class _MyAppState extends State<MyApp> { ...@@ -198,7 +198,7 @@ class _MyAppState extends State<MyApp> {
BlocProvider(create: (_) => AddressUser()), BlocProvider(create: (_) => AddressUser()),
BlocProvider(create: (_) => ExpandDetailOutlet()), BlocProvider(create: (_) => ExpandDetailOutlet()),
BlocProvider(create: (_) => ChangeDeliveryPickupBloc()), BlocProvider(create: (_) => ChangeDeliveryPickupBloc()),
BlocProvider(create: (_) => TriggerRefreshInConfirmationPage()), BlocProvider(create: (_) => TriggerRefresh()),
], ],
child: MaterialApp( child: MaterialApp(
title: (widget.title == null) ? defaultTitle : widget.title, title: (widget.title == null) ? defaultTitle : widget.title,
......
...@@ -45,7 +45,7 @@ class CoreConfirm extends StatelessWidget { ...@@ -45,7 +45,7 @@ class CoreConfirm extends StatelessWidget {
double widthScreen = responsiveWidthScreen(context); double widthScreen = responsiveWidthScreen(context);
double widthRowForNote = double widthRowForNote =
MediaQuery.of(context).size.width - 20 - 12 - 80 - 20; MediaQuery.of(context).size.width - 20 - 12 - 80 - 20;
return BlocBuilder<TriggerRefreshInConfirmationPage, bool>( return BlocBuilder<TriggerRefresh, bool>(
builder: (_, trigger) { builder: (_, trigger) {
return BlocBuilder<OrdersBloc, List<Orders>>( return BlocBuilder<OrdersBloc, List<Orders>>(
builder: (ctx, listOrders) { builder: (ctx, listOrders) {
...@@ -1050,7 +1050,7 @@ class _VariantOrderState extends State<VariantOrder> { ...@@ -1050,7 +1050,7 @@ class _VariantOrderState extends State<VariantOrder> {
}; };
context.read<OrdersBloc>().insertData(insertData); context.read<OrdersBloc>().insertData(insertData);
context context
.read<TriggerRefreshInConfirmationPage>() .read<TriggerRefresh>()
.trigger(!widget.trigger); .trigger(!widget.trigger);
// setState(() {}); // setState(() {});
}, },
...@@ -1102,7 +1102,7 @@ class _VariantOrderState extends State<VariantOrder> { ...@@ -1102,7 +1102,7 @@ class _VariantOrderState extends State<VariantOrder> {
}; };
context.read<OrdersBloc>().insertData(insertData); context.read<OrdersBloc>().insertData(insertData);
context context
.read<TriggerRefreshInConfirmationPage>() .read<TriggerRefresh>()
.trigger(!widget.trigger); .trigger(!widget.trigger);
// setState(() {}); // setState(() {});
}, },
......
...@@ -25,6 +25,7 @@ import '../../bloc/branch_exist.dart'; ...@@ -25,6 +25,7 @@ import '../../bloc/branch_exist.dart';
import '../../bloc/change_delivery_pickup.dart'; import '../../bloc/change_delivery_pickup.dart';
import '../../bloc/feedback_option.dart'; import '../../bloc/feedback_option.dart';
import '../../bloc/outlet_detail.dart'; import '../../bloc/outlet_detail.dart';
import '../../bloc/trigger_refresh_in_confirmation_page.dart';
import '../../bloc/view_bill.dart'; import '../../bloc/view_bill.dart';
import '../../bloc/voucher_list.dart'; import '../../bloc/voucher_list.dart';
import '../../helper/logger.dart'; import '../../helper/logger.dart';
...@@ -1807,7 +1808,9 @@ class DeliveryPickupDetail extends StatelessWidget { ...@@ -1807,7 +1808,9 @@ class DeliveryPickupDetail extends StatelessWidget {
const SizedBox( const SizedBox(
height: 5, height: 5,
), ),
Row( BlocBuilder<TriggerRefresh, bool>(
builder: (_, trigger) {
return Row(
children: [ children: [
defaultText( defaultText(
context, context,
...@@ -1822,6 +1825,8 @@ class DeliveryPickupDetail extends StatelessWidget { ...@@ -1822,6 +1825,8 @@ class DeliveryPickupDetail extends StatelessWidget {
overFlow: TextOverflow.ellipsis, overFlow: TextOverflow.ellipsis,
), ),
], ],
);
},
), ),
const SizedBox( const SizedBox(
height: 5, height: 5,
...@@ -1832,7 +1837,9 @@ class DeliveryPickupDetail extends StatelessWidget { ...@@ -1832,7 +1837,9 @@ class DeliveryPickupDetail extends StatelessWidget {
width: 12, width: 12,
), ),
const Spacer(), const Spacer(),
Column( BlocBuilder<TriggerRefresh, bool>(
builder: (_, trigger) {
return Column(
children: [ children: [
changeOutlet(context), changeOutlet(context),
const SizedBox( const SizedBox(
...@@ -1871,13 +1878,13 @@ class DeliveryPickupDetail extends StatelessWidget { ...@@ -1871,13 +1878,13 @@ class DeliveryPickupDetail extends StatelessWidget {
DateTime.parse(dateTimeCloseOutletString); DateTime.parse(dateTimeCloseOutletString);
DateTime dateTimeOpenOutlet = DateTime dateTimeOpenOutlet =
DateTime.parse(dateTimeOpenOutletString); DateTime.parse(dateTimeOpenOutletString);
DateTime dateSelectedPickupTime = DateTime( DateTime dateSelectedPickupTime = DateTime(now.year,
now.year, now.month, now.day, value.hour, value.minute); now.month, now.day, value.hour, value.minute);
final differenceClose = final differenceClose = dateTimeCloseOutlet
dateTimeCloseOutlet.difference(dateSelectedPickupTime); .difference(dateSelectedPickupTime);
final differenceOpen = final differenceOpen = dateSelectedPickupTime
dateSelectedPickupTime.difference(dateTimeOpenOutlet); .difference(dateTimeOpenOutlet);
final differenceFromNow = final differenceFromNow =
dateSelectedPickupTime.difference(now); dateSelectedPickupTime.difference(now);
if (differenceFromNow.inMinutes < 0) { if (differenceFromNow.inMinutes < 0) {
...@@ -1921,12 +1928,14 @@ class DeliveryPickupDetail extends StatelessWidget { ...@@ -1921,12 +1928,14 @@ class DeliveryPickupDetail extends StatelessWidget {
return; return;
} }
// String timeToset = value.format(context); // String timeToset = value.format(context);
final hourString = value.hour.toString().padLeft(2, '0'); final hourString =
value.hour.toString().padLeft(2, '0');
final minuteString = final minuteString =
value.minute.toString().padLeft(2, '0'); value.minute.toString().padLeft(2, '0');
// String amPM = timeToset.split(' ')[1]; // String amPM = timeToset.split(' ')[1];
String setPickup = "$hourString:$minuteString"; String setPickup = "$hourString:$minuteString";
setPickupTime(setPickup); setPickupTime(setPickup);
context.read<TriggerRefresh>().trigger(!trigger);
context.read<ViewBillBloc>().getBill(); context.read<ViewBillBloc>().getBill();
} }
}); });
...@@ -1959,6 +1968,8 @@ class DeliveryPickupDetail extends StatelessWidget { ...@@ -1959,6 +1968,8 @@ class DeliveryPickupDetail extends StatelessWidget {
), ),
detailOutlet(context), detailOutlet(context),
], ],
);
},
) )
], ],
); );
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment