From 375a4eab84d84be1c56ef1672c7f44b35a7d0635 Mon Sep 17 00:00:00 2001 From: Sikander Saleem Date: Tue, 2 Jan 2024 12:24:01 +0300 Subject: [PATCH 1/4] progress view improvement --- .../progress_fragment.dart | 21 ++++++++++++------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/lib/new_views/pages/land_page/dashboard_fragments/progress_fragment.dart b/lib/new_views/pages/land_page/dashboard_fragments/progress_fragment.dart index b19dac6d..4866cf96 100644 --- a/lib/new_views/pages/land_page/dashboard_fragments/progress_fragment.dart +++ b/lib/new_views/pages/land_page/dashboard_fragments/progress_fragment.dart @@ -13,20 +13,27 @@ import '../../../../controllers/providers/api/user_provider.dart'; import '../../../../models/enums/user_types.dart'; class ProgressFragment extends StatelessWidget { - ProgressFragment({Key key}) : super(key: key); + ProgressFragment({Key key}) : super(key: key); UserProvider _userProvider; + @override Widget build(BuildContext context) { _userProvider = Provider.of(context); + bool isCurrentUserNotEngineer = (_userProvider.user.type != UsersTypes.engineer); return Consumer( builder: (context, snapshot, _) { Map statuses = { "Completed": snapshot.completedRequests?.requestsDetails?.length?.toDouble() ?? 0.0, "In Progress": snapshot.inProgressRequests?.requestsDetails?.length?.toDouble() ?? 0.0, - "Open": snapshot.openRequests?.requestsDetails?.length?.toDouble() ?? 0.0, + // "Open": snapshot.openRequests?.requestsDetails?.length?.toDouble() ?? 0.0, }; - int total = (snapshot.completedRequests?.requestsDetails?.length ?? 0) + (snapshot.inProgressRequests?.requestsDetails?.length ?? 0) + (snapshot.openRequests?.requestsDetails?.length ?? 0); + if (isCurrentUserNotEngineer) { + statuses["Open"] = snapshot.openRequests?.requestsDetails?.length?.toDouble() ?? 0.0; + } + int total = (snapshot.completedRequests?.requestsDetails?.length ?? 0) + + (snapshot.inProgressRequests?.requestsDetails?.length ?? 0) + + (isCurrentUserNotEngineer ? (snapshot.openRequests?.requestsDetails?.length ?? 0) : 0); return Column( children: [ @@ -68,7 +75,7 @@ class ProgressFragment extends StatelessWidget { ).toShimmer(isShow: snapshot.isOpenLoading || snapshot.isInProgressLoading || snapshot.isCompleteLoading, radius: 300).paddingAll(12).toShadowContainer(context), ).paddingOnly(start: 16, end: 16, bottom: 16), DefaultTabController( - length: 3, + length: isCurrentUserNotEngineer ? 3 : 2, child: Column( children: [ Container( @@ -87,8 +94,7 @@ class ProgressFragment extends StatelessWidget { // setState(() {}); }, tabs: [ - if(_userProvider.user.type != UsersTypes.engineer) - Tab(text: context.translation.open, height: 57.toScreenHeight), + if (isCurrentUserNotEngineer) Tab(text: context.translation.open, height: 57.toScreenHeight), Tab(text: context.translation.inProgress, height: 57.toScreenHeight), Tab(text: context.translation.completed, height: 57.toScreenHeight), ], @@ -97,8 +103,7 @@ class ProgressFragment extends StatelessWidget { 8.height, TabBarView( children: [ - if(_userProvider.user.type != UsersTypes.engineer) - RequestItemViewList(snapshot.openRequests?.requestsDetails ?? [], snapshot.isOpenLoading), + if (isCurrentUserNotEngineer) RequestItemViewList(snapshot.openRequests?.requestsDetails ?? [], snapshot.isOpenLoading), RequestItemViewList(snapshot.inProgressRequests?.requestsDetails ?? [], snapshot.isInProgressLoading), RequestItemViewList(snapshot.completedRequests?.requestsDetails ?? [], snapshot.isCompleteLoading), ], From 80796467289c76aa5fc24ad4fddc1cd32a806643 Mon Sep 17 00:00:00 2001 From: Sikander Saleem Date: Tue, 2 Jan 2024 16:08:28 +0300 Subject: [PATCH 2/4] timer on device transfer, --- .../pages/new_gas_refill_request_page.dart | 15 +- .../update_device_transfer.dart | 7 +- .../create_sub_workorder_page.dart | 22 +-- .../work_order/create_service_report.dart | 4 +- .../work_order/edit_service_report.dart | 4 +- .../status/assistant_employee_menu.dart | 36 +++-- ...ervice_report_assistant_employee_menu.dart | 130 ++++++++++++------ lib/views/widgets/timer/app_timer.dart | 4 + 8 files changed, 153 insertions(+), 69 deletions(-) diff --git a/lib/new_views/pages/new_gas_refill_request_page.dart b/lib/new_views/pages/new_gas_refill_request_page.dart index 83f67b4a..30327b4d 100644 --- a/lib/new_views/pages/new_gas_refill_request_page.dart +++ b/lib/new_views/pages/new_gas_refill_request_page.dart @@ -162,13 +162,14 @@ class _NewGasRefillRequestPageState extends State { }, ), 8.height, - AppFilledButton( - label: context.translation.add, - maxWidth: true, - textColor: Colors.white, - buttonColor: context.isDark ? AppColor.neutral60 : AppColor.neutral50, - onPressed: _add, - ), + if (_gasModel.gazRefillDetails?.isEmpty ?? true) + AppFilledButton( + label: context.translation.add, + maxWidth: true, + textColor: Colors.white, + buttonColor: context.isDark ? AppColor.neutral60 : AppColor.neutral50, + onPressed: _add, + ), 24.height, ListView.builder( shrinkWrap: true, diff --git a/lib/views/pages/device_transfer/update_device_transfer.dart b/lib/views/pages/device_transfer/update_device_transfer.dart index 2f8c172d..12ed61ff 100644 --- a/lib/views/pages/device_transfer/update_device_transfer.dart +++ b/lib/views/pages/device_transfer/update_device_transfer.dart @@ -53,7 +53,7 @@ class _UpdateDeviceTransferState extends State { await Fluttertoast.showToast(msg: "Working Hours Required"); return false; } - if ((widget.isSender && _formModel?.senderTimer?.endAt == null) || (!widget.isSender && _formModel?.receiverTimer?.startAt == null)) { + if ((widget.isSender && _formModel?.senderTimer?.endAt == null) || (!widget.isSender && _formModel?.receiverTimer?.startAt == null || isTimerRunning)) { await Fluttertoast.showToast(msg: "Please Stop The Timer"); return false; } @@ -83,6 +83,8 @@ class _UpdateDeviceTransferState extends State { super.dispose(); } + bool isTimerRunning = false; + @override Widget build(BuildContext context) { _userProvider = Provider.of(context); @@ -128,6 +130,9 @@ class _UpdateDeviceTransferState extends State { label: context.translation.workingHours, timer: widget.isSender ? _formModel.senderTimer : _formModel.receiverTimer, enabled: widget.isSender ? _formModel.senderEndDate == null : _formModel.receiverEndDate == null, + timerProgress: (isRunning) { + isTimerRunning = isRunning; + }, onChange: (timer) async { if (widget.isSender) { _formModel.senderTimer = timer; diff --git a/lib/views/pages/sub_workorder/create_sub_workorder_page.dart b/lib/views/pages/sub_workorder/create_sub_workorder_page.dart index 8d5f6069..89d8bb3a 100644 --- a/lib/views/pages/sub_workorder/create_sub_workorder_page.dart +++ b/lib/views/pages/sub_workorder/create_sub_workorder_page.dart @@ -13,6 +13,8 @@ import 'package:test_sa/extensions/int_extensions.dart'; import 'package:test_sa/extensions/text_extensions.dart'; import 'package:test_sa/extensions/widget_extensions.dart'; import 'package:test_sa/models/lookup.dart'; +import 'package:test_sa/models/new_models/assigned_employee.dart'; +import 'package:test_sa/models/new_models/assistant_employee.dart'; import 'package:test_sa/models/service_request/search_work_order.dart'; import 'package:test_sa/models/service_request/service_report.dart'; import 'package:test_sa/new_views/common_widgets/app_filled_button.dart'; @@ -132,10 +134,12 @@ class _CreateSubWorkOrderPageState extends State { @override Widget build(BuildContext context) { final user = Provider.of(context).user; - final isCurrentAssigned = user.id != ((widget.workOrder.assistantEmployees?.isNotEmpty ?? false) ? widget.workOrder.assistantEmployees?.first?.user?.id : null); + final isCurrentAssigned = (user.userID != widget.workOrder.assignedEmployee?.id); if (isCurrentAssigned) { - _subWorkOrders.assistantEmployees = [widget.workOrder.assistantEmployees?.first?.copyWith(id: 0)]; + // _subWorkOrders.assistantEmployees = [widget.workOrder.assistantEmployees?.first?.copyWith(id: 0)]; + _subWorkOrders.assistantEmployees = [AssistantEmployees(id: 0, user: AssignedEmployee(id: user.userID, name: user.username))]; } + print("isCurrentAssigned:$isCurrentAssigned:${_subWorkOrders.assistantEmployees?.length}"); if (_callRequestForWorkOrder == null) { _partsProvider = Provider.of(context); getAssetType(); @@ -310,12 +314,14 @@ class _CreateSubWorkOrderPageState extends State { ServiceReportAssistantEmployeeMenu( title: context.translation.assignAssistant, assetId: widget.workOrder?.callRequest?.asset?.id, - initialValue: isCurrentAssigned - ? (widget.workOrder.assistantEmployees.first) - : (_subWorkOrders.assistantEmployees?.isNotEmpty ?? false) - ? _subWorkOrders.assistantEmployees?.first - : null, - enabled: !isCurrentAssigned, + + initialValue: (_subWorkOrders.assistantEmployees?.isNotEmpty ?? false) ? _subWorkOrders.assistantEmployees?.first : null, + // initialValue: !isCurrentAssigned + // ? (widget.workOrder.assistantEmployees?.first) + // : (_subWorkOrders.assistantEmployees?.isNotEmpty ?? false) + // ? _subWorkOrders.assistantEmployees?.first + // : null, + enable: user.userID == _subWorkOrders.assignedEmployee.id, onSelect: (employee) { if (employee == null) { _subWorkOrders.assistantEmployees = []; diff --git a/lib/views/pages/user/requests/work_order/create_service_report.dart b/lib/views/pages/user/requests/work_order/create_service_report.dart index a6017e74..7feec9fd 100644 --- a/lib/views/pages/user/requests/work_order/create_service_report.dart +++ b/lib/views/pages/user/requests/work_order/create_service_report.dart @@ -204,7 +204,9 @@ class _CreateServiceReportState extends State with TickerPr SingleItemDropDownMenu( context: context, title: context.translation.serviceType, - onSelect: (value) {}, + onSelect: (value) { + + }, ), 8.height, ServiceReportLastCallsMenu( diff --git a/lib/views/pages/user/requests/work_order/edit_service_report.dart b/lib/views/pages/user/requests/work_order/edit_service_report.dart index 64ed6947..f0f56b23 100644 --- a/lib/views/pages/user/requests/work_order/edit_service_report.dart +++ b/lib/views/pages/user/requests/work_order/edit_service_report.dart @@ -189,7 +189,9 @@ class _EditServiceReportState extends State with TickerProvid SingleItemDropDownMenu( context: context, title: context.translation.serviceType, - onSelect: (value) {}, + onSelect: (value) { + + }, ), 8.height, ServiceReportLastCallsMenu( diff --git a/lib/views/widgets/status/assistant_employee_menu.dart b/lib/views/widgets/status/assistant_employee_menu.dart index f91238a3..521982d0 100644 --- a/lib/views/widgets/status/assistant_employee_menu.dart +++ b/lib/views/widgets/status/assistant_employee_menu.dart @@ -10,8 +10,9 @@ class AssistantEmployeeMenu extends StatefulWidget { final AssistantEmployees initialStatus; final Function(AssistantEmployees) onSelect; final String title; + final bool enable; - const AssistantEmployeeMenu({Key key, this.statuses, this.title, this.onSelect, this.initialStatus}) : super(key: key); + const AssistantEmployeeMenu({Key key, this.statuses, this.title, this.onSelect, this.initialStatus, this.enable = true}) : super(key: key); @override _SingleAssistantEmployeeMenuState createState() => _SingleAssistantEmployeeMenuState(); @@ -73,7 +74,12 @@ class _SingleAssistantEmployeeMenuState extends State { child: Stack( alignment: Alignment.center, children: [ - const PositionedDirectional(end: 0, child: Icon(Icons.keyboard_arrow_down_rounded)), + PositionedDirectional( + end: 0, + child: Icon( + Icons.keyboard_arrow_down_rounded, + color: widget.enable ? null : Colors.grey, + )), Column( crossAxisAlignment: CrossAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.center, @@ -96,18 +102,30 @@ class _SingleAssistantEmployeeMenuState extends State { ), style: TextStyle(color: Theme.of(context).primaryColor), underline: const SizedBox.shrink(), - onChanged: (AssistantEmployees newValue) { - setState(() { - _selectedStatus = newValue; - }); - widget.onSelect(newValue); - }, + + onChanged: widget.enable + ? (AssistantEmployees newValue) { + setState(() { + _selectedStatus = newValue; + }); + widget.onSelect(newValue); + } + : null, + + // onChanged: (AssistantEmployees newValue) { + // setState(() { + // _selectedStatus = newValue; + // }); + // widget.onSelect(newValue); + // }, items: widget.statuses.map>((AssistantEmployees value) { return DropdownMenuItem( value: value, child: Text( value.user?.name ?? "NULL", - style: Theme.of(context).textTheme.bodyLarge, + style: Theme.of(context).textTheme.bodyLarge.copyWith( + color: widget.enable ? Theme.of(context).primaryColor : Colors.grey, + ), ), ); }).toList(), diff --git a/lib/views/widgets/status/report/service_report_assistant_employee_menu.dart b/lib/views/widgets/status/report/service_report_assistant_employee_menu.dart index 27bd46a9..0f3f2a82 100644 --- a/lib/views/widgets/status/report/service_report_assistant_employee_menu.dart +++ b/lib/views/widgets/status/report/service_report_assistant_employee_menu.dart @@ -1,42 +1,23 @@ + + import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; -import 'package:test_sa/new_views/common_widgets/single_item_drop_down_menu.dart'; -import 'package:test_sa/providers/loading_list_notifier.dart'; +import 'package:test_sa/models/new_models/assistant_employee.dart'; +import 'package:test_sa/models/service_request/search_work_order.dart'; import 'package:test_sa/views/widgets/loaders/loading_manager.dart'; +import 'package:test_sa/views/widgets/status/assistant_employee_menu.dart'; import '../../../../controllers/providers/api/status_drop_down/report/service_report_assistants_employee_provider.dart'; -import '../../../../models/new_models/assistant_employee.dart'; -class ServiceReportAssistantEmployeeMenu extends StatefulWidget { +class ServiceReportAssistantEmployeeMenu extends StatelessWidget { final Function(AssistantEmployees) onSelect; final AssistantEmployees initialValue; + final String title; final num assetId; - final bool enabled; + final bool enable; - const ServiceReportAssistantEmployeeMenu({Key key, this.enabled = true, @required this.onSelect, @required this.assetId, this.title, this.initialValue}) : super(key: key); - - @override - State createState() => _ServiceReportAssistantEmployeeMenuState(); -} - -class _ServiceReportAssistantEmployeeMenuState extends State { - AssistantEmployees _initialValue; - - @override - void initState() { - _initialValue = widget.initialValue; - super.initState(); - } - - @override - void didUpdateWidget(covariant ServiceReportAssistantEmployeeMenu oldWidget) { - if (widget.initialValue != oldWidget.initialValue) { - _initialValue = widget.initialValue; - setState(() {}); - } - super.didUpdateWidget(oldWidget); - } + const ServiceReportAssistantEmployeeMenu({Key key, @required this.onSelect,this.title, this.initialValue, this.assetId, this.enable = true}) : super(key: key); @override Widget build(BuildContext context) { @@ -46,22 +27,87 @@ class _ServiceReportAssistantEmployeeMenuState extends State( - title: widget.title, - context: context, - enabled: widget.enabled, - initialValue: _initialValue, - staticData: menuProvider.assistantEmployees, - onSelect: widget.onSelect, + child: AssistantEmployeeMenu( + initialStatus: initialValue, + title: title, + statuses: menuProvider.assistantEmployees, + onSelect: onSelect, + enable: enable, ), - // child: AssistantEmployeeMenu( - // title: title, - // initialStatus: initialValue, - // statuses: menuProvider.assistantEmployees, - // onSelect: onSelect, - // ), ); } } + + + + +// import 'package:flutter/material.dart'; +// import 'package:provider/provider.dart'; +// import 'package:test_sa/new_views/common_widgets/single_item_drop_down_menu.dart'; +// import 'package:test_sa/providers/loading_list_notifier.dart'; +// import 'package:test_sa/views/widgets/loaders/loading_manager.dart'; +// +// import '../../../../controllers/providers/api/status_drop_down/report/service_report_assistants_employee_provider.dart'; +// import '../../../../models/new_models/assistant_employee.dart'; +// +// class ServiceReportAssistantEmployeeMenu extends StatefulWidget { +// final Function(AssistantEmployees) onSelect; +// final AssistantEmployees initialValue; +// final String title; +// final num assetId; +// final bool enabled; +// +// const ServiceReportAssistantEmployeeMenu({Key key, this.enabled = true, @required this.onSelect, @required this.assetId, this.title, this.initialValue}) : super(key: key); +// +// @override +// State createState() => _ServiceReportAssistantEmployeeMenuState(); +// } +// +// class _ServiceReportAssistantEmployeeMenuState extends State { +// AssistantEmployees _initialValue; +// +// @override +// void initState() { +// _initialValue = widget.initialValue; +// super.initState(); +// } +// +// @override +// void didUpdateWidget(covariant ServiceReportAssistantEmployeeMenu oldWidget) { +// if (widget.initialValue != oldWidget.initialValue) { +// _initialValue = widget.initialValue; +// setState(() {}); +// } +// super.didUpdateWidget(oldWidget); +// } +// +// @override +// Widget build(BuildContext context) { +// ServiceReportAssistantsEmployeeProvider menuProvider = Provider.of(context); +// return LoadingManager( +// isLoading: menuProvider.isLoading, +// isFailedLoading: menuProvider.assistantEmployees == null, +// stateCode: menuProvider.stateCode, +// onRefresh: () async { +// await menuProvider.getAssistantEmployees(widget.assetId); +// }, +// child: SingleItemDropDownMenu( +// title: widget.title, +// context: context, +// enabled: widget.enabled, +// initialValue: _initialValue, +// staticData: menuProvider.assistantEmployees, +// onSelect: widget.onSelect, +// ), +// // child: AssistantEmployeeMenu( +// // title: title, +// // initialStatus: initialValue, +// // statuses: menuProvider.assistantEmployees, +// // onSelect: onSelect, +// // ), +// ); +// } +// } diff --git a/lib/views/widgets/timer/app_timer.dart b/lib/views/widgets/timer/app_timer.dart index 5776950a..92e2eb9d 100644 --- a/lib/views/widgets/timer/app_timer.dart +++ b/lib/views/widgets/timer/app_timer.dart @@ -17,12 +17,15 @@ class AppTimer extends StatefulWidget { final bool enabled; final String label; + final Function(bool) timerProgress; + const AppTimer({ Key key, this.label, this.timer, this.onChange, this.style, + this.timerProgress, this.enabled = true, }) : super(key: key); @@ -80,6 +83,7 @@ class _AppTimerState extends State { } _loading = false; setState(() {}); + widget.timerProgress(_running); } @override From eeaa9bef8511784030edf97b5fb8c54e02fed0dc Mon Sep 17 00:00:00 2001 From: Sikander Saleem Date: Wed, 3 Jan 2024 10:48:57 +0300 Subject: [PATCH 3/4] improvements. --- ios/Podfile | 7 +++++++ ios/Runner.xcodeproj/project.pbxproj | 11 +++++++---- .../xcshareddata/xcschemes/Runner.xcscheme | 2 +- .../providers/api/all_requests_provider.dart | 2 +- .../my_request/all_requests_filter_page.dart | 1 + .../my_request/all_requests_search_page.dart | 1 + .../pages/land_page/my_request/my_requests_page.dart | 1 + .../sub_workorder/create_sub_workorder_page.dart | 11 +++++++---- 8 files changed, 26 insertions(+), 10 deletions(-) diff --git a/ios/Podfile b/ios/Podfile index c0216e16..6cfb9447 100644 --- a/ios/Podfile +++ b/ios/Podfile @@ -40,6 +40,13 @@ post_install do |installer| target.build_configurations.each do |config| config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '12.0' end + target.build_configurations.each do |config| + flutter_additional_ios_build_settings(target) + xcconfig_path = config.base_configuration_reference.real_path + xcconfig = File.read(xcconfig_path) + xcconfig_mod = xcconfig.gsub(/DT_TOOLCHAIN_DIR/, "TOOLCHAIN_DIR") + File.open(xcconfig_path, "w") { |file| file << xcconfig_mod } + end end installer.generated_projects.each do |project| project.targets.each do |target| diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index 333ec9eb..7f78549d 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -161,7 +161,7 @@ isa = PBXProject; attributes = { BuildIndependentTargetsInParallel = YES; - LastUpgradeCheck = 1500; + LastUpgradeCheck = 1300; ORGANIZATIONNAME = ""; TargetAttributes = { 97C146ED1CF9000F007C117D = { @@ -371,8 +371,9 @@ CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = DQ779YN74J; + DEVELOPMENT_TEAM = 3A359E86ZF; ENABLE_BITCODE = NO; + ENABLE_USER_SCRIPT_SANDBOXING = NO; INFOPLIST_FILE = Runner/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = Atoms; LD_RUNPATH_SEARCH_PATHS = ( @@ -593,8 +594,9 @@ CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = DQ779YN74J; + DEVELOPMENT_TEAM = 3A359E86ZF; ENABLE_BITCODE = NO; + ENABLE_USER_SCRIPT_SANDBOXING = NO; INFOPLIST_FILE = Runner/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = Atoms; LD_RUNPATH_SEARCH_PATHS = ( @@ -701,8 +703,9 @@ CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = DQ779YN74J; + DEVELOPMENT_TEAM = 3A359E86ZF; ENABLE_BITCODE = NO; + ENABLE_USER_SCRIPT_SANDBOXING = NO; INFOPLIST_FILE = Runner/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = Atoms; LD_RUNPATH_SEARCH_PATHS = ( diff --git a/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme index 56faec32..c87d15a3 100644 --- a/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -1,6 +1,6 @@ getHighPriorityRequests() async { if (isHighPriorityLoading == true) return -2; - isHighPriorityLoading = true; + isHighPriorityLoading = true; notifyListeners(); if (highPriorityRequests == null) notifyListeners(); Response response; try { diff --git a/lib/new_views/pages/land_page/my_request/all_requests_filter_page.dart b/lib/new_views/pages/land_page/my_request/all_requests_filter_page.dart index 8d690c6a..baa5c2af 100644 --- a/lib/new_views/pages/land_page/my_request/all_requests_filter_page.dart +++ b/lib/new_views/pages/land_page/my_request/all_requests_filter_page.dart @@ -163,6 +163,7 @@ class _AllRequestsFilterPageState extends State { final requestsProvider = Provider.of(context, listen: false); if (search.startDate != null) search.endDate ??= DateTime.now(); showDialog(context: context, barrierDismissible: false, builder: (context) => const AppLazyLoading()); + requestsProvider.reset(); await requestsProvider.getAllRequests(context, search: search); Navigator.pop(context); Navigator.of(context).pop(search); diff --git a/lib/new_views/pages/land_page/my_request/all_requests_search_page.dart b/lib/new_views/pages/land_page/my_request/all_requests_search_page.dart index 720ec78d..b6a4fa2a 100644 --- a/lib/new_views/pages/land_page/my_request/all_requests_search_page.dart +++ b/lib/new_views/pages/land_page/my_request/all_requests_search_page.dart @@ -133,6 +133,7 @@ class _AllRequestsSearchPageState extends State { _formKey.currentState.save(); final requestsProvider = Provider.of(context, listen: false); showDialog(context: context, barrierDismissible: false, builder: (context) => const AppLazyLoading()); + requestsProvider.reset(); await requestsProvider.getAllRequests(context, search: search); Navigator.pop(context); Navigator.of(context).pop(search); diff --git a/lib/new_views/pages/land_page/my_request/my_requests_page.dart b/lib/new_views/pages/land_page/my_request/my_requests_page.dart index b8f05348..5457782a 100644 --- a/lib/new_views/pages/land_page/my_request/my_requests_page.dart +++ b/lib/new_views/pages/land_page/my_request/my_requests_page.dart @@ -37,6 +37,7 @@ class _MyRequestsPageState extends State { context.translation.preventiveMaintenance, ]; _provider = Provider.of(context, listen: false); + _provider.reset(); _provider.getAllRequests(context); } diff --git a/lib/views/pages/sub_workorder/create_sub_workorder_page.dart b/lib/views/pages/sub_workorder/create_sub_workorder_page.dart index 89d8bb3a..87b170de 100644 --- a/lib/views/pages/sub_workorder/create_sub_workorder_page.dart +++ b/lib/views/pages/sub_workorder/create_sub_workorder_page.dart @@ -134,12 +134,15 @@ class _CreateSubWorkOrderPageState extends State { @override Widget build(BuildContext context) { final user = Provider.of(context).user; - final isCurrentAssigned = (user.userID != widget.workOrder.assignedEmployee?.id); - if (isCurrentAssigned) { + final isCurrentUserIsAssistantEmp = (user.userID != widget.workOrder.assignedEmployee?.id); + if (isCurrentUserIsAssistantEmp) { // _subWorkOrders.assistantEmployees = [widget.workOrder.assistantEmployees?.first?.copyWith(id: 0)]; _subWorkOrders.assistantEmployees = [AssistantEmployees(id: 0, user: AssignedEmployee(id: user.userID, name: user.username))]; } - print("isCurrentAssigned:$isCurrentAssigned:${_subWorkOrders.assistantEmployees?.length}"); + else { + + } + print("isCurrentUserIsAssistantEmp:$isCurrentUserIsAssistantEmp:${widget.workOrder.assistantEmployees?.length}"); if (_callRequestForWorkOrder == null) { _partsProvider = Provider.of(context); getAssetType(); @@ -321,7 +324,7 @@ class _CreateSubWorkOrderPageState extends State { // : (_subWorkOrders.assistantEmployees?.isNotEmpty ?? false) // ? _subWorkOrders.assistantEmployees?.first // : null, - enable: user.userID == _subWorkOrders.assignedEmployee.id, + enable: !isCurrentUserIsAssistantEmp, onSelect: (employee) { if (employee == null) { _subWorkOrders.assistantEmployees = []; From 4055337a9b1322eca8c5e41af01894d4f460174f Mon Sep 17 00:00:00 2001 From: Sikander Saleem Date: Wed, 3 Jan 2024 15:28:18 +0300 Subject: [PATCH 4/4] username keyboard issue fix on ios. --- lib/new_views/pages/login_page.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/new_views/pages/login_page.dart b/lib/new_views/pages/login_page.dart index 64ed8ed5..9d8e7abd 100644 --- a/lib/new_views/pages/login_page.dart +++ b/lib/new_views/pages/login_page.dart @@ -54,7 +54,7 @@ class _LoginPageState extends State { initialValue: _user?.userName, validator: (value) => Validator.hasValue(value) ? null : context.translation.requiredField, labelText: context.translation.username, - textInputType: TextInputType.name, + textInputType: TextInputType.text, onSaved: (value) { _user.userName = value; },