Appearance
Column Filters
Squizy provides per-column filtering for every entity table. Filters are type-aware and can be combined to create complex queries.
How It Works
Each column in the entity table can be filtered individually. The available filter operators depend on the field type:
String Fields
| Operator | Description |
|---|---|
LIKE | Contains the value (case-insensitive) |
EQ | Exact match |
NE | Not equal |
Numeric Fields
| Operator | Description |
|---|---|
EQ | Equals |
NE | Not equals |
GT | Greater than |
GE | Greater than or equal |
LT | Less than |
LE | Less than or equal |
Enum Fields
| Operator | Description |
|---|---|
EQ | Equals selected value |
NE | Not equal to selected value |
IN | In list of selected values |
Relationship Fields
| Operator | Description |
|---|---|
EQ | Matches the selected related entity |
IN | Matches any of the selected related entities |
Date/Time Fields
| Operator | Description |
|---|---|
EQ | Exact date match |
GT | After date |
GE | On or after date |
LT | Before date |
LE | On or before date |
Combining Filters
Multiple column filters are combined with AND logic — all filters must match for a record to be included in the results.
Programmatic Filtering
Filters can be applied programmatically via the query API:
http
POST /api/product/query
Content-Type: application/json
{
"queryCriteriaList": [
{
"key": "status",
"value": "IN_STOCK",
"operation": "EQ"
},
{
"key": "price",
"value": "100",
"operation": "GE"
}
]
}Controlling Filterability
Use @SquizyField to control whether a field appears in filter options:
java
@SquizyField(filterable = FilterableMode.NOT_FILTERABLE)
@OneToMany
private List<Account> accounts;Values: DEFAULT (framework decides), FILTERABLE, NOT_FILTERABLE.