FilterContainer состоит из "объекта" where, объединяющий в поле operands условия фильтрации. Условия фильтрации объединяются согласно правилу, описанному в поле operatorType (1 - операция AND, 2- OR).
Условия фильтрации вкладываются в поле-массив operands.
В простом случае условие отбора состоит из поля:
field - поле модели на бэке,
value - требуемое значение (или его часть),
filterType - тип элемента сравнения значения из фильтра с искомыми. Может принимать один из следующих значений:
- Поле не фильтруется.
None = 0,
- Поле равно значению.
Equal = 1,
- Поле не равно значению.
NotEqual = 2,
- Поле меньше значения.
LessThan = 3,
- Поле больше значения.
GreaterThan = 4,
- Поле меньше или равно значению.
LessThanOrEqual = 5,
- Поле больше или равно значению.
GreaterThanOrEqual = 6,
- Поле содержит значение.
Contains = 7,
- Поле не содержит значение.
NotContains = 8,
- Поле начинается со значения.
StartsWith = 9,
- Поле не начинается со значения.
NotStartsWith = 10,
Но также условия отбора могут быть и сложными, т.е. включать в себе наборы operands (для сравнения).
Ниже приложен пример фильтра для поиска медицинской карты стационарного больного по полю GUID: