archived data filter added.

main_design2.0
Sikander Saleem 2 years ago
parent d50f711aec
commit 40fe6ec192

@ -60,9 +60,7 @@ class AllRequestsProvider extends ChangeNotifier {
searchedModel = search; searchedModel = search;
} }
// else if (searchedModel != null) {
// search = searchedModel;
// }
else { else {
searchedModel = null; searchedModel = null;
@ -72,7 +70,7 @@ class AllRequestsProvider extends ChangeNotifier {
? [1, 2, 3, 4] ? [1, 2, 3, 4]
: search.typeTransaction : search.typeTransaction
: [typeTransaction]; : [typeTransaction];
List<int> status = (search?.statuses == null || search.statuses.isEmpty) ? [1, 2, 3, 4] : search.statuses; List<int> status = (search?.statuses == null || search.statuses.isEmpty) ? ((search?.isArchived ?? false) ? [4] : [1, 2, 3]) : search.statuses;
Map<String, dynamic> body = { Map<String, dynamic> body = {
"typeTransaction": type, "typeTransaction": type,
"statusTransaction": status, "statusTransaction": status,

@ -45,17 +45,12 @@ class _AllRequestsFilterPageState extends State<AllRequestsFilterPage> {
Widget build(BuildContext context) { Widget build(BuildContext context) {
if (search == null) { if (search == null) {
search = SearchAllRequestsModel( search = SearchAllRequestsModel(
requestNumber: SearchByRequestNumberModel(context, requestNumber: SearchByRequestNumberModel(context, controller: TextEditingController()),
controller: TextEditingController()), assetName: SearchByAssetNameModel(context, controller: TextEditingController()),
assetName: SearchByAssetNameModel(context, assetNo: SearchByAssetNoModel(context, controller: TextEditingController()),
controller: TextEditingController()), manufacture: SearchByManufactureModel(context, controller: TextEditingController()),
assetNo:
SearchByAssetNoModel(context, controller: TextEditingController()),
manufacture: SearchByManufactureModel(context,
controller: TextEditingController()),
sn: SearchBySNModel(context, controller: TextEditingController()), sn: SearchBySNModel(context, controller: TextEditingController()),
model: model: SearchByRequestModel(context, controller: TextEditingController()),
SearchByRequestModel(context, controller: TextEditingController()),
); );
search.searchBySelectedValue = search.requestNumber; search.searchBySelectedValue = search.requestNumber;
} }
@ -82,16 +77,15 @@ class _AllRequestsFilterPageState extends State<AllRequestsFilterPage> {
children: [ children: [
Text( Text(
context.translation.reset, context.translation.reset,
style: AppTextStyles.bodyText2 style: AppTextStyles.bodyText2.copyWith(color: AppColor.blueStatus(context)),
.copyWith(color: AppColor.blueStatus(context)),
).paddingAll(8).onPress(() { ).paddingAll(8).onPress(() {
Provider.of<AllRequestsProvider>(context, listen: false) Provider.of<AllRequestsProvider>(context, listen: false).searchedModel = null;
.searchedModel = null;
setState(() { setState(() {
search.statuses?.clear(); search.statuses?.clear();
search.typeTransaction?.clear(); search.typeTransaction?.clear();
search.startDate = null; search.startDate = null;
search.endDate = null; search.endDate = null;
search.isArchived = null;
}); });
}), }),
], ],
@ -165,41 +159,33 @@ class _AllRequestsFilterPageState extends State<AllRequestsFilterPage> {
Row( Row(
children: [ children: [
Checkbox( Checkbox(
value: search.isArchived, value: search?.isArchived ?? false,
activeColor: AppColor.blueStatus(context), activeColor: AppColor.blueStatus(context),
onChanged: (value) { onChanged: (value) {
// if (search.isArchived != value) { if (search.isArchived != value) {
// search.isArchived = value; search.isArchived = value;
// } }
// setState(() {}); if (mounted) setState(() {});
}), }),
"View Archived Requests".bodyText(context).expanded, "View Archived Requests".bodyText(context).expanded,
], ],
).onPress(() { ).onPress(() {
search.isArchived = !search.isArchived;
search.isArchived = !search.isArchived;
setState(() {}); setState(() {});
}), }),
], ],
).paddingOnly(start: 16, end: 16), ).paddingOnly(start: 16, end: 16),
).expanded, ).expanded,
AppFilledButton( AppFilledButton(onPressed: _search, label: context.translation.applyFilter).paddingOnly(start: 16, end: 16),
onPressed: _search, label: context.translation.applyFilter)
.paddingOnly(start: 16, end: 16),
], ],
).paddingOnly(top: 16, bottom: 16), ).paddingOnly(top: 16, bottom: 16),
); );
} }
void _search() async { void _search() async {
final requestsProvider = final requestsProvider = Provider.of<AllRequestsProvider>(context, listen: false);
Provider.of<AllRequestsProvider>(context, listen: false);
if (search.startDate != null) search.endDate ??= DateTime.now(); if (search.startDate != null) search.endDate ??= DateTime.now();
showDialog( showDialog(context: context, barrierDismissible: false, builder: (context) => const AppLazyLoading());
context: context,
barrierDismissible: false,
builder: (context) => const AppLazyLoading());
requestsProvider.reset(); requestsProvider.reset();
requestsProvider.searchedModel = search; requestsProvider.searchedModel = search;
await requestsProvider.getAllRequests(context, search: search); await requestsProvider.getAllRequests(context, search: search);
@ -208,9 +194,6 @@ class _AllRequestsFilterPageState extends State<AllRequestsFilterPage> {
} }
bool _showResetButton() { bool _showResetButton() {
return (search.statuses?.isNotEmpty ?? false) || return (search.statuses?.isNotEmpty ?? false) || (search.typeTransaction?.isNotEmpty ?? false) || (search.startDate != null) || (search.endDate != null) || (search.isArchived ?? false);
(search.typeTransaction?.isNotEmpty ?? false) ||
(search.startDate != null) ||
(search.endDate != null);
} }
} }

@ -139,7 +139,7 @@ class _MyRequestsPageState extends State<MyRequestsPage> {
child: RequestItemViewList(snapshot.allRequestsAndCount?.requestsDetails ?? [], snapshot.isAllLoading), child: RequestItemViewList(snapshot.allRequestsAndCount?.requestsDetails ?? [], snapshot.isAllLoading),
nextPage: snapshot.nextPage, nextPage: snapshot.nextPage,
onLazyLoad: () { onLazyLoad: () {
snapshot.getAllRequests(context, typeTransaction: selectedRequest == 0 ? null : selectedRequest); snapshot.getAllRequests(context, typeTransaction: selectedRequest == 0 ? null : selectedRequest,search: _search);
}, },
).expanded, ).expanded,
], ],

Loading…
Cancel
Save