diff --git a/lib/controllers/providers/api/all_requests_provider.dart b/lib/controllers/providers/api/all_requests_provider.dart index 432cae74..6538dad1 100644 --- a/lib/controllers/providers/api/all_requests_provider.dart +++ b/lib/controllers/providers/api/all_requests_provider.dart @@ -60,9 +60,7 @@ class AllRequestsProvider extends ChangeNotifier { searchedModel = search; } - // else if (searchedModel != null) { - // search = searchedModel; - // } + else { searchedModel = null; @@ -72,7 +70,7 @@ class AllRequestsProvider extends ChangeNotifier { ? [1, 2, 3, 4] : search.typeTransaction : [typeTransaction]; - List status = (search?.statuses == null || search.statuses.isEmpty) ? [1, 2, 3, 4] : search.statuses; + List status = (search?.statuses == null || search.statuses.isEmpty) ? ((search?.isArchived ?? false) ? [4] : [1, 2, 3]) : search.statuses; Map body = { "typeTransaction": type, "statusTransaction": status, 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 995aa701..34175742 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 @@ -45,17 +45,12 @@ class _AllRequestsFilterPageState extends State { Widget build(BuildContext context) { if (search == null) { search = SearchAllRequestsModel( - requestNumber: SearchByRequestNumberModel(context, - controller: TextEditingController()), - assetName: SearchByAssetNameModel(context, - controller: TextEditingController()), - assetNo: - SearchByAssetNoModel(context, controller: TextEditingController()), - manufacture: SearchByManufactureModel(context, - controller: TextEditingController()), + requestNumber: SearchByRequestNumberModel(context, controller: TextEditingController()), + assetName: SearchByAssetNameModel(context, controller: TextEditingController()), + assetNo: SearchByAssetNoModel(context, controller: TextEditingController()), + manufacture: SearchByManufactureModel(context, controller: TextEditingController()), sn: SearchBySNModel(context, controller: TextEditingController()), - model: - SearchByRequestModel(context, controller: TextEditingController()), + model: SearchByRequestModel(context, controller: TextEditingController()), ); search.searchBySelectedValue = search.requestNumber; } @@ -82,16 +77,15 @@ class _AllRequestsFilterPageState extends State { children: [ Text( context.translation.reset, - style: AppTextStyles.bodyText2 - .copyWith(color: AppColor.blueStatus(context)), + style: AppTextStyles.bodyText2.copyWith(color: AppColor.blueStatus(context)), ).paddingAll(8).onPress(() { - Provider.of(context, listen: false) - .searchedModel = null; + Provider.of(context, listen: false).searchedModel = null; setState(() { search.statuses?.clear(); search.typeTransaction?.clear(); search.startDate = null; search.endDate = null; + search.isArchived = null; }); }), ], @@ -165,41 +159,33 @@ class _AllRequestsFilterPageState extends State { Row( children: [ Checkbox( - value: search.isArchived, + value: search?.isArchived ?? false, activeColor: AppColor.blueStatus(context), onChanged: (value) { - // if (search.isArchived != value) { - // search.isArchived = value; - // } - // setState(() {}); + if (search.isArchived != value) { + search.isArchived = value; + } + if (mounted) setState(() {}); }), "View Archived Requests".bodyText(context).expanded, ], ).onPress(() { - - search.isArchived = !search.isArchived; - + search.isArchived = !search.isArchived; setState(() {}); }), ], ).paddingOnly(start: 16, end: 16), ).expanded, - AppFilledButton( - onPressed: _search, label: context.translation.applyFilter) - .paddingOnly(start: 16, end: 16), + AppFilledButton(onPressed: _search, label: context.translation.applyFilter).paddingOnly(start: 16, end: 16), ], ).paddingOnly(top: 16, bottom: 16), ); } void _search() async { - final requestsProvider = - Provider.of(context, listen: false); + final requestsProvider = Provider.of(context, listen: false); if (search.startDate != null) search.endDate ??= DateTime.now(); - showDialog( - context: context, - barrierDismissible: false, - builder: (context) => const AppLazyLoading()); + showDialog(context: context, barrierDismissible: false, builder: (context) => const AppLazyLoading()); requestsProvider.reset(); requestsProvider.searchedModel = search; await requestsProvider.getAllRequests(context, search: search); @@ -208,9 +194,6 @@ class _AllRequestsFilterPageState extends State { } bool _showResetButton() { - return (search.statuses?.isNotEmpty ?? false) || - (search.typeTransaction?.isNotEmpty ?? false) || - (search.startDate != null) || - (search.endDate != null); + return (search.statuses?.isNotEmpty ?? false) || (search.typeTransaction?.isNotEmpty ?? false) || (search.startDate != null) || (search.endDate != null) || (search.isArchived ?? false); } } 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 cc94ef1e..ec8f6c4d 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 @@ -139,7 +139,7 @@ class _MyRequestsPageState extends State { child: RequestItemViewList(snapshot.allRequestsAndCount?.requestsDetails ?? [], snapshot.isAllLoading), nextPage: snapshot.nextPage, onLazyLoad: () { - snapshot.getAllRequests(context, typeTransaction: selectedRequest == 0 ? null : selectedRequest); + snapshot.getAllRequests(context, typeTransaction: selectedRequest == 0 ? null : selectedRequest,search: _search); }, ).expanded, ],