buildFilterExpression method

GroupFilterExp buildFilterExpression()
inherited

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!;
}