reload method
Implementation
void reload({List<Map<String, dynamic>> data = const []}) {
if (data.length > 0) {
data.forEach((responseData) {
if (!_responseData.contains(jsonEncode(responseData))) {
_responseData.add(jsonEncode(responseData));
_data.add(responseData);
}
});
}
List<Map<String, dynamic>> currentDataFiltered = _data.where((data) {
bool matched = false;
for (int i = 0; i < controller.columns.length; i++) {
bool datamatched = false;
Map<String, String> column = controller.columns[i];
if (column['searchable'] == 'true') {
if (data[column['name']] != null) {
String field = data[column['name']].toString().toLowerCase().trim();
String value = controller.searchValue.toLowerCase().trim();
if (field.contains(value)) {
datamatched = true;
}
}
matched = datamatched;
if (datamatched) break;
}
}
return matched;
}).toList();
List<Map<String, dynamic>> currentData = currentDataFiltered
.skip(controller.start)
.take(controller.length)
.toList();
_response = BsDatatableResponse(
data: currentData,
countData: _data.length,
countFiltered: currentDataFiltered.length);
}