confirmation dialoge added for cancel request

design_3.0_asset_delivery_module
WaseemAbbasi22 1 week ago
parent bf4d2a3257
commit 9704c26af9

@ -1,4 +1,5 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import 'package:test_sa/controllers/providers/api/device_transfer_provider.dart'; import 'package:test_sa/controllers/providers/api/device_transfer_provider.dart';
import 'package:test_sa/extensions/context_extension.dart'; import 'package:test_sa/extensions/context_extension.dart';
import 'package:test_sa/extensions/string_extensions.dart'; import 'package:test_sa/extensions/string_extensions.dart';
@ -9,6 +10,7 @@ import 'package:test_sa/modules/asset_delivery_module/provider/asset_delivery_pr
import 'package:test_sa/modules/asset_delivery_module/provider/attachment_type_provider.dart'; import 'package:test_sa/modules/asset_delivery_module/provider/attachment_type_provider.dart';
import 'package:test_sa/new_views/common_widgets/app_lazy_loading.dart'; import 'package:test_sa/new_views/common_widgets/app_lazy_loading.dart';
import 'package:test_sa/new_views/common_widgets/single_item_drop_down_menu.dart'; import 'package:test_sa/new_views/common_widgets/single_item_drop_down_menu.dart';
import 'package:test_sa/new_views/swipe_module/dialoge/acknowledge_work_dialog.dart';
import 'package:test_sa/views/widgets/loaders/no_data_found.dart'; import 'package:test_sa/views/widgets/loaders/no_data_found.dart';
class HelperFunction { class HelperFunction {
@ -39,6 +41,29 @@ class HelperFunction {
} }
} }
static void cancelRequest({required BuildContext context, int ?itemId, int? requestId}) async {
AssetDeliveryProvider assetDeliveryProvider = Provider.of<AssetDeliveryProvider>(context, listen: false);
showDialog(
context: context,
builder: (BuildContext cxt) => AcknowledgeWorkDialog(
message: "Are you sure you want to change this request status to cancel ",
confirmButtonText: 'Ok',
cancelButtonText: 'Cancel',
onSave: () async {
showDialog(context: context, barrierDismissible: false, builder: (context) => const AppLazyLoading());
await assetDeliveryProvider.changeDeliveryStatusToCancel(itemId: itemId).then((status) async {
Navigator.pop(context);
if (status) {
Navigator.pop(context);
await assetDeliveryProvider.getAssetDeliveryTableListById(requestId: requestId);
}
});
},
onDiscard: () {},
),
);
}
static Future<Lookup?> showAttachmentTypeBottomSheet(BuildContext context) { static Future<Lookup?> showAttachmentTypeBottomSheet(BuildContext context) {
return showModalBottomSheet<Lookup?>( return showModalBottomSheet<Lookup?>(
context: context, context: context,

@ -1,3 +1,5 @@
import 'dart:developer';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:test_sa/extensions/context_extension.dart'; import 'package:test_sa/extensions/context_extension.dart';
@ -5,6 +7,7 @@ import 'package:test_sa/extensions/int_extensions.dart';
import 'package:test_sa/extensions/string_extensions.dart'; import 'package:test_sa/extensions/string_extensions.dart';
import 'package:test_sa/extensions/text_extensions.dart'; import 'package:test_sa/extensions/text_extensions.dart';
import 'package:test_sa/extensions/widget_extensions.dart'; import 'package:test_sa/extensions/widget_extensions.dart';
import 'package:test_sa/modules/asset_delivery_module/helper_function.dart';
import 'package:test_sa/modules/asset_delivery_module/models/asset_delivery_data_model.dart'; import 'package:test_sa/modules/asset_delivery_module/models/asset_delivery_data_model.dart';
import 'package:test_sa/modules/asset_delivery_module/pages/asset_delivery_stage_tab_page.dart'; import 'package:test_sa/modules/asset_delivery_module/pages/asset_delivery_stage_tab_page.dart';
import 'package:test_sa/modules/asset_delivery_module/pages/asset_delivery_table_card_view.dart'; import 'package:test_sa/modules/asset_delivery_module/pages/asset_delivery_table_card_view.dart';
@ -210,16 +213,8 @@ class _AssetDeliveryPageState extends State<AssetDeliveryPage> {
style: AppTextStyles.bodyText.copyWith(color: context.isDark ? AppColor.neutral30 : AppColor.black10), style: AppTextStyles.bodyText.copyWith(color: context.isDark ? AppColor.neutral30 : AppColor.black10),
), ),
8.height, 8.height,
//Need to verify this with backend ...
// widget.poInternal?? '-',
Text( Text(
dataModel?.isHMG == true getPOExternal(),
? dataModel?.poNumber != null
? dataModel!.poNumber.toString()
: '-'
: dataModel?.poNumber != null
? dataModel!.poNumber.toString()
: '-',
style: AppTextStyles.bodyText2.copyWith(color: context.isDark ? AppColor.neutral30 : AppColor.neutral120), style: AppTextStyles.bodyText2.copyWith(color: context.isDark ? AppColor.neutral30 : AppColor.neutral120),
), ),
8.height, 8.height,
@ -288,6 +283,20 @@ class _AssetDeliveryPageState extends State<AssetDeliveryPage> {
); );
} }
String getPOExternal() {
String poNo = '-';
if (dataModel?.isHMG == true) {
if (dataModel?.poNumber != null) {
poNo = dataModel!.poNumber.toString();
}
return poNo;
}
if (dataModel?.purchaseOrderMaster != null) {
poNo = dataModel!.purchaseOrderMaster!.poNumber.toString();
}
return poNo;
}
Widget assetDeliveryTableList({required BuildContext context, required AssetDeliveryProvider assetDeliveryProvider}) { Widget assetDeliveryTableList({required BuildContext context, required AssetDeliveryProvider assetDeliveryProvider}) {
List<AssetDeliveryTableModel> assetDeliveryTableList = assetDeliveryProvider.assetDeliveryTableList; List<AssetDeliveryTableModel> assetDeliveryTableList = assetDeliveryProvider.assetDeliveryTableList;
return assetDeliveryProvider.isDeliveryTableListLoading return assetDeliveryProvider.isDeliveryTableListLoading
@ -310,14 +319,15 @@ class _AssetDeliveryPageState extends State<AssetDeliveryPage> {
AssetDeliveryBottomSheet.changeStatusBottomSheet( AssetDeliveryBottomSheet.changeStatusBottomSheet(
context: context, context: context,
cancelStatusTap: () async { cancelStatusTap: () async {
showDialog(context: context, barrierDismissible: false, builder: (context) => const AppLazyLoading()); HelperFunction.cancelRequest(context: context, itemId: model.id, requestId: widget.requestId);
await assetDeliveryProvider.changeDeliveryStatusToCancel(itemId: model.id).then((status) async { // showDialog(context: context, barrierDismissible: false, builder: (context) => const AppLazyLoading());
Navigator.pop(context); // await assetDeliveryProvider.changeDeliveryStatusToCancel(itemId: model.id).then((status) async {
if (status) { // Navigator.pop(context);
Navigator.pop(context); // if (status) {
await assetDeliveryProvider.getAssetDeliveryTableListById(requestId: widget.requestId); // Navigator.pop(context);
} // await assetDeliveryProvider.getAssetDeliveryTableListById(requestId: widget.requestId);
}); // }
// });
}, },
statusChangeTap: () async { statusChangeTap: () async {
showDialog(context: context, barrierDismissible: false, builder: (context) => const AppLazyLoading()); showDialog(context: context, barrierDismissible: false, builder: (context) => const AppLazyLoading());

@ -9,6 +9,7 @@ import 'package:test_sa/extensions/int_extensions.dart';
import 'package:test_sa/extensions/string_extensions.dart'; import 'package:test_sa/extensions/string_extensions.dart';
import 'package:test_sa/extensions/text_extensions.dart'; import 'package:test_sa/extensions/text_extensions.dart';
import 'package:test_sa/extensions/widget_extensions.dart'; import 'package:test_sa/extensions/widget_extensions.dart';
import 'package:test_sa/helper/utils.dart';
import 'package:test_sa/models/lookup.dart'; import 'package:test_sa/models/lookup.dart';
import 'package:test_sa/modules/asset_delivery_module/helper_function.dart'; import 'package:test_sa/modules/asset_delivery_module/helper_function.dart';
import 'package:test_sa/modules/asset_delivery_module/models/asset_delivery_data_model.dart'; import 'package:test_sa/modules/asset_delivery_module/models/asset_delivery_data_model.dart';
@ -28,6 +29,7 @@ import 'package:test_sa/new_views/app_style/app_color.dart';
import 'package:test_sa/new_views/common_widgets/app_lazy_loading.dart'; import 'package:test_sa/new_views/common_widgets/app_lazy_loading.dart';
import 'package:test_sa/new_views/common_widgets/default_app_bar.dart'; import 'package:test_sa/new_views/common_widgets/default_app_bar.dart';
import 'package:test_sa/new_views/common_widgets/single_item_drop_down_menu.dart'; import 'package:test_sa/new_views/common_widgets/single_item_drop_down_menu.dart';
import 'package:test_sa/new_views/swipe_module/dialoge/acknowledge_work_dialog.dart';
import 'package:test_sa/views/widgets/date_and_time/date_picker.dart'; import 'package:test_sa/views/widgets/date_and_time/date_picker.dart';
import 'package:test_sa/views/widgets/loaders/no_data_found.dart'; import 'package:test_sa/views/widgets/loaders/no_data_found.dart';
import '../../../../new_views/common_widgets/app_filled_button.dart'; import '../../../../new_views/common_widgets/app_filled_button.dart';
@ -559,14 +561,26 @@ class _DeliveryInspectionFormViewState extends State<DeliveryInspectionFormView>
} }
void _cancelTap() async { void _cancelTap() async {
showDialog(context: context, barrierDismissible: false, builder: (context) => const AppLazyLoading()); HelperFunction.cancelRequest(context: context, itemId: widget.deliveryTableModel.id!, requestId: widget.requestModel?.id);
await assetDeliveryProvider!.changeDeliveryStatusToCancel(itemId: widget.deliveryTableModel.id).then((status) async { // showDialog(
Navigator.pop(context); // context: context,
if (status) { // builder: (BuildContext cxt) => AcknowledgeWorkDialog(
Navigator.pop(context); // message: "Are you sure you want to mark this request as cancel ",
await assetDeliveryProvider!.getAssetDeliveryTableListById(requestId: widget.requestModel?.id); // confirmButtonText: 'Ok',
} // cancelButtonText: 'Cancel',
}); // onSave: () async {
// showDialog(context: context, barrierDismissible: false, builder: (context) => const AppLazyLoading());
// await assetDeliveryProvider!.changeDeliveryStatusToCancel(itemId: widget.deliveryTableModel.id).then((status) async {
// Navigator.pop(context);
// if (status) {
// Navigator.pop(context);
// await assetDeliveryProvider!.getAssetDeliveryTableListById(requestId: widget.requestModel?.id);
// }
// });
// },
// onDiscard: () {},
// ),
// );
} }
void _saveTap() async { void _saveTap() async {

@ -171,14 +171,15 @@ class _EndUserCostCenterLIstViewState extends State<EndUserCostCenterLIstView> {
} }
void _cancelTap() async { void _cancelTap() async {
showDialog(context: context, barrierDismissible: false, builder: (context) => const AppLazyLoading()); HelperFunction.cancelRequest(context: context, itemId: widget.deliveryTableModel.id!, requestId: widget.requestModel?.id);
await assetDeliveryProvider?.changeDeliveryStatusToCancel(itemId: widget.deliveryTableModel.id).then((status) async { // showDialog(context: context, barrierDismissible: false, builder: (context) => const AppLazyLoading());
Navigator.pop(context); // await assetDeliveryProvider?.changeDeliveryStatusToCancel(itemId: widget.deliveryTableModel.id).then((status) async {
if (status) { // Navigator.pop(context);
Navigator.pop(context); // if (status) {
await assetDeliveryProvider?.getAssetDeliveryTableListById(requestId: widget.requestModel?.id); // Navigator.pop(context);
} // await assetDeliveryProvider?.getAssetDeliveryTableListById(requestId: widget.requestModel?.id);
}); // }
// });
} }
void _changeStatusTap() async { void _changeStatusTap() async {

@ -250,14 +250,15 @@ class _TechnicalInspectionLinesListViewState extends State<TechnicalInspectionLi
} }
void _cancelTap() async { void _cancelTap() async {
showDialog(context: context, barrierDismissible: false, builder: (context) => const AppLazyLoading()); HelperFunction.cancelRequest(context: context, itemId: widget.deliveryTableModel.id!, requestId: widget.requestModel?.id);
await assetDeliveryProvider?.changeDeliveryStatusToCancel(itemId: widget.deliveryTableModel.id).then((status) async { // showDialog(context: context, barrierDismissible: false, builder: (context) => const AppLazyLoading());
Navigator.pop(context); // await assetDeliveryProvider?.changeDeliveryStatusToCancel(itemId: widget.deliveryTableModel.id).then((status) async {
if (status) { // Navigator.pop(context);
Navigator.pop(context); // if (status) {
await assetDeliveryProvider?.getAssetDeliveryTableListById(requestId: widget.requestModel?.id); // Navigator.pop(context);
} // await assetDeliveryProvider?.getAssetDeliveryTableListById(requestId: widget.requestModel?.id);
}); // }
// });
} }
void _nextTap() async { void _nextTap() async {

Loading…
Cancel
Save