Skip to content

Feat filter#364

Open
Ziyue-Fontaine wants to merge 11 commits intoVisActor:feat/vbifrom
Ziyue-Fontaine:FeatFilter
Open

Feat filter#364
Ziyue-Fontaine wants to merge 11 commits intoVisActor:feat/vbifrom
Ziyue-Fontaine:FeatFilter

Conversation

@Ziyue-Fontaine
Copy link

增设了filter筛选器

小龙虾 and others added 11 commits March 4, 2026 20:08
- Add HavingBuilder for filter management
- Add HavingFilterNodeBuilder for individual filter configuration
- Support operators: eq, neq, gt, gte, lt, lte, contains, startsWith, endsWith, between
- Add validation and error handling
- Integrate with VBIBuilder

This enables BI users to filter data based on conditions.
- Add Having.ts type definition for aggregation filtering
- Update QueryDSL to include having field
- Add buildHaving in VBI pipeline

This enables Having filter to work end-to-end from VBI to VQuery.
- Add Having type implementation in sql-builder
- Add applyHaving function for SQL generation
- Integrate having with DSL to SQL pipeline
- Add comprehensive unit tests (16 test cases)

This enables having filter to work end-to-end from VBI to generated SQL.
- Add basic having example test
- Add multi-conditions having test (AND)
- Add or-conditions having test (OR)
- All 142 tests passing
Use pnpm run g to generate test files from JSON configs
- Add min/max aggregation tests
- Add not between test
- Improve coverage to 99%+

Tests: 145 passed
- Add more having tests including nested groups
- Add VQuery error handling tests
- Coverage: 99.05% statements, 91.66% branches

Tests: 148 passed
- Add not-in.json/test.ts
- Add in-single.json/test.ts
- Add not-in-single.json/test.ts
- Coverage: 100% statements, 93.75% branches, 100% functions, 100% lines

Tests: 151 passed
…builder

feat(builder): add having filter builder
* fix: 修复度量字段/别名重复导致的数据冲突问题

* fix(lint): remove unused variable and add no-explicit-any disable comment
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants