buildFilterExpression method
Implementation
GroupFilterExp buildFilterExpression() {
List<FilterExp> exps = [];
selectModel?.lines.forEach((line) {
if (line.filter != null) {
if (line.filter is FilterRangeDate) {
if (((line.filter as FilterRangeDate).selectedValueRange?.start !=
null ||
(line.filter as FilterRangeDate).selectedValueRange?.end !=
null)) {
exps.add(FilterExpRangeCollun(
line: line,
dateStart:
(line.filter as FilterRangeDate).selectedValueRange?.start,
dateEnd:
(line.filter as FilterRangeDate).selectedValueRange?.end));
}
} else if (line.filter!.selectedValue != null) {
if (line.filter is FilterSelectItem) {
exps.add(FilterSelectColumn(
line: line,
value: (line.filter as FilterSelectItem)
.selectedValue!
.value
?.toString()
.toLowerCase(),
customKey: (line.filter as FilterSelectItem).keyFilterId,
valueId:
(line.filter as FilterSelectItem).selectedValue!.idValue,
typeSearch: TypeSearch.CONTAINS));
} else if (line.filter is FilterText &&
line.filter!.selectedValue!.value.toString().isNotEmpty) {
exps.add(FilterExpColumn(
line: line,
value: line.filter!.selectedValue!.value,
typeSearch: typeSearch));
}
}
}
});
actualFilters =
GroupFilterExp(filterExps: exps, operatorEx: OperatorFilterEx.AND);
return actualFilters!;
}