From 456432050d47d6c729afbdab83718773bb8d98ce Mon Sep 17 00:00:00 2001 From: Sikander Saleem Date: Tue, 22 Jul 2025 10:41:16 +0300 Subject: [PATCH] timezone header added, update ppm error flow improvement. --- lib/controllers/api_routes/api_manager.dart | 1 + lib/controllers/providers/api/ppm_provider.dart | 10 ++++++---- .../ppm_wo/update_ppm/ppm_external_details_form.dart | 4 ++++ .../pm_module/ppm_wo/update_ppm/update_ppm.dart | 10 +++++----- 4 files changed, 16 insertions(+), 9 deletions(-) diff --git a/lib/controllers/api_routes/api_manager.dart b/lib/controllers/api_routes/api_manager.dart index ab6d5808..64ee3010 100644 --- a/lib/controllers/api_routes/api_manager.dart +++ b/lib/controllers/api_routes/api_manager.dart @@ -19,6 +19,7 @@ class ApiManager { Map get _headers => { 'Content-Type': 'application/json', + 'X-Timezone-Offset': DateTime.now().timeZoneOffset.toString().split(".").first, if (user != null) 'Authorization': 'Bearer ${user!.token}', if (assetGroup != null) 'AssetGroup': assetGroup!.id.toString(), }; diff --git a/lib/controllers/providers/api/ppm_provider.dart b/lib/controllers/providers/api/ppm_provider.dart index 62ec2d75..900f88bc 100644 --- a/lib/controllers/providers/api/ppm_provider.dart +++ b/lib/controllers/providers/api/ppm_provider.dart @@ -182,21 +182,23 @@ class PpmProvider extends ChangeNotifier { } } - Future updateVisitByEngineer({required int status}) async { + Future updateVisitByEngineer({required int status}) async { isLoading = true; Response response; try { response = await ApiManager.instance.post(URLs.updateVisitByEngineer, body: planPreventiveVisit!.toJson(status: status)); - print('response i got is ${response.body}'); stateCode = response.statusCode; isLoading = false; notifyListeners(); - return response.statusCode; + if (stateCode == 200) { + return true; + } + return false; } catch (error) { isLoading = false; stateCode = -1; notifyListeners(); - return -1; + return false; } } diff --git a/lib/modules/pm_module/ppm_wo/update_ppm/ppm_external_details_form.dart b/lib/modules/pm_module/ppm_wo/update_ppm/ppm_external_details_form.dart index 95d7496f..b689b26a 100644 --- a/lib/modules/pm_module/ppm_wo/update_ppm/ppm_external_details_form.dart +++ b/lib/modules/pm_module/ppm_wo/update_ppm/ppm_external_details_form.dart @@ -190,6 +190,10 @@ class _ExternalDetailItemState extends State { ), child: Icon(Icons.add, color: context.isDark ? null : AppColor.neutral60), ).onPress(() async { + if(widget.model.supplier==null) { + "Please select supplier".showToast; + return; + } SuppEngineerWorkOrders? suppEngineer = (await showModalBottomSheet( context: context, useSafeArea: true, diff --git a/lib/modules/pm_module/ppm_wo/update_ppm/update_ppm.dart b/lib/modules/pm_module/ppm_wo/update_ppm/update_ppm.dart index 20a66f47..16899bb9 100644 --- a/lib/modules/pm_module/ppm_wo/update_ppm/update_ppm.dart +++ b/lib/modules/pm_module/ppm_wo/update_ppm/update_ppm.dart @@ -16,6 +16,7 @@ import 'package:test_sa/new_views/app_style/app_color.dart'; import 'package:test_sa/new_views/common_widgets/app_filled_button.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 'ppm_calibration_tools_form.dart'; import 'ppm_external_details_form.dart'; import 'ppm_pm_check_list_form.dart'; @@ -74,16 +75,15 @@ class _UpdatePpmState extends State with TickerProviderStateMixin { ); }); - await ppmProvider.updateVisitByEngineer(status: status).whenComplete(() { - if (status == 1) { + await ppmProvider.updateVisitByEngineer(status: status).then((success) { + Navigator.pop(context); + if (success) { AllRequestsProvider allRequestsProvider = Provider.of(context, listen: false); allRequestsProvider.reset(); allRequestsProvider.getAllRequests(context, typeTransaction: 4); ppmProvider.ppmPlanAttachments = []; + Navigator.pop(context); } - // allRequestsProvider.recurrentWoData?.recurrentWoTimerModel=null; - Navigator.pop(context); - Navigator.pop(context); }); } }