|
|
@ -41,7 +41,7 @@ class _FiltrateDrawerState extends State<FiltrateDrawer> { |
|
|
), |
|
|
), |
|
|
Expanded( |
|
|
Expanded( |
|
|
child: TextField( |
|
|
child: TextField( |
|
|
controller: _controller.titleController, |
|
|
controller: _controller.filtrateController, |
|
|
style: TextStyle( |
|
|
style: TextStyle( |
|
|
color: Colors.black87, |
|
|
color: Colors.black87, |
|
|
fontSize: 14.sp, |
|
|
fontSize: 14.sp, |
|
|
@ -57,6 +57,24 @@ class _FiltrateDrawerState extends State<FiltrateDrawer> { |
|
|
border: InputBorder.none, |
|
|
border: InputBorder.none, |
|
|
contentPadding: EdgeInsets.symmetric(vertical: 10.w), |
|
|
contentPadding: EdgeInsets.symmetric(vertical: 10.w), |
|
|
), |
|
|
), |
|
|
|
|
|
onSubmitted: (String value) { |
|
|
|
|
|
widget.scaffoldKey.currentState?.closeDrawer(); |
|
|
|
|
|
_controller.dataList.value = |
|
|
|
|
|
_controller.originalDataList.where((i) { |
|
|
|
|
|
final titleLower = i['title'].trim().toLowerCase(); |
|
|
|
|
|
final queryLower = value.trim().toLowerCase(); |
|
|
|
|
|
bool isType = true; |
|
|
|
|
|
if (_controller.filtrateType.value.isNotEmpty) { |
|
|
|
|
|
isType = |
|
|
|
|
|
_controller.filtrateType.value == i['type']; |
|
|
|
|
|
} |
|
|
|
|
|
return isType && titleLower.contains(queryLower); |
|
|
|
|
|
}).toList(); |
|
|
|
|
|
if (_controller.isAsc) { |
|
|
|
|
|
_controller.dataList.value = |
|
|
|
|
|
_controller.dataList.reversed.toList(); |
|
|
|
|
|
} |
|
|
|
|
|
}, |
|
|
), |
|
|
), |
|
|
), |
|
|
), |
|
|
], |
|
|
], |
|
|
@ -205,6 +223,7 @@ class _FiltrateDrawerState extends State<FiltrateDrawer> { |
|
|
void _filtrateDataList(String type) { |
|
|
void _filtrateDataList(String type) { |
|
|
widget.scaffoldKey.currentState?.closeDrawer(); |
|
|
widget.scaffoldKey.currentState?.closeDrawer(); |
|
|
_controller.filtrateType.value = type; |
|
|
_controller.filtrateType.value = type; |
|
|
|
|
|
_controller.filtrateController.text = ''; |
|
|
if (type.isNotEmpty) { |
|
|
if (type.isNotEmpty) { |
|
|
_controller.dataList.value = |
|
|
_controller.dataList.value = |
|
|
_controller.originalDataList.where((i) => i['type'] == type).toList(); |
|
|
_controller.originalDataList.where((i) => i['type'] == type).toList(); |
|
|
|