weaver-e10-builder 1.6.9 → 1.6.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/form-data.d.ts.map +1 -1
- package/dist/commands/form-data.js +4 -1
- package/dist/commands/form-data.js.map +1 -1
- package/dist/commands/report-admin.d.ts.map +1 -1
- package/dist/commands/report-admin.js +378 -2
- package/dist/commands/report-admin.js.map +1 -1
- package/dist/commands/report-validate.d.ts.map +1 -1
- package/dist/commands/report-validate.js +1066 -3
- package/dist/commands/report-validate.js.map +1 -1
- package/dist/commands/report.d.ts.map +1 -1
- package/dist/commands/report.js +341 -3
- package/dist/commands/report.js.map +1 -1
- package/dist/commands/workflow-after-submit-comment.d.ts +3 -0
- package/dist/commands/workflow-after-submit-comment.d.ts.map +1 -0
- package/dist/commands/workflow-after-submit-comment.js +56 -0
- package/dist/commands/workflow-after-submit-comment.js.map +1 -0
- package/dist/commands/workflow-setting.d.ts.map +1 -1
- package/dist/commands/workflow-setting.js +2 -67
- package/dist/commands/workflow-setting.js.map +1 -1
- package/dist/services/action-detail.d.ts.map +1 -1
- package/dist/services/action-detail.js +1 -17
- package/dist/services/action-detail.js.map +1 -1
- package/dist/services/actionflow/components/action_eb_update_compiler.d.ts.map +1 -1
- package/dist/services/actionflow/components/action_eb_update_compiler.js +6 -2
- package/dist/services/actionflow/components/action_eb_update_compiler.js.map +1 -1
- package/dist/services/actionflow/components/custom_trigger.js +1 -1
- package/dist/services/actionflow/components/custom_trigger.js.map +1 -1
- package/dist/services/actionflow/components/dml_execute.js +1 -1
- package/dist/services/actionflow/components/dml_execute.js.map +1 -1
- package/dist/services/actionflow/components/document_actions.js +1 -2
- package/dist/services/actionflow/components/document_actions.js.map +1 -1
- package/dist/services/actionflow/components/eb_get_data_by_id.d.ts.map +1 -1
- package/dist/services/actionflow/components/eb_get_data_by_id.js +2 -2
- package/dist/services/actionflow/components/eb_get_data_by_id.js.map +1 -1
- package/dist/services/actionflow/components/form_data_builder.d.ts.map +1 -1
- package/dist/services/actionflow/components/form_data_builder.js +18 -10
- package/dist/services/actionflow/components/form_data_builder.js.map +1 -1
- package/dist/services/actionflow/components/hrm_actions.js +0 -1
- package/dist/services/actionflow/components/hrm_actions.js.map +1 -1
- package/dist/services/actionflow/components/webhook_trigger.js +3 -3
- package/dist/services/actionflow/components/webhook_trigger.js.map +1 -1
- package/dist/services/actionflow/components/workflow_actions.js +3 -2
- package/dist/services/actionflow/components/workflow_actions.js.map +1 -1
- package/dist/services/actionflow/filter_rules.d.ts.map +1 -1
- package/dist/services/actionflow/filter_rules.js +15 -13
- package/dist/services/actionflow/filter_rules.js.map +1 -1
- package/dist/services/actionflow/form_source.d.ts.map +1 -1
- package/dist/services/actionflow/form_source.js +59 -11
- package/dist/services/actionflow/form_source.js.map +1 -1
- package/dist/services/actionflow/formula_service.d.ts.map +1 -1
- package/dist/services/actionflow/formula_service.js +4 -1
- package/dist/services/actionflow/formula_service.js.map +1 -1
- package/dist/services/actionflow/option_field_types.d.ts +5 -0
- package/dist/services/actionflow/option_field_types.d.ts.map +1 -0
- package/dist/services/actionflow/option_field_types.js +20 -0
- package/dist/services/actionflow/option_field_types.js.map +1 -0
- package/dist/services/actionflow/param_group_dto.d.ts.map +1 -1
- package/dist/services/actionflow/param_group_dto.js +7 -3
- package/dist/services/actionflow/param_group_dto.js.map +1 -1
- package/dist/services/actionflow/preflight_service.d.ts.map +1 -1
- package/dist/services/actionflow/preflight_service.js +42 -18
- package/dist/services/actionflow/preflight_service.js.map +1 -1
- package/dist/services/actionflow/webhook_source.d.ts.map +1 -1
- package/dist/services/actionflow/webhook_source.js +9 -4
- package/dist/services/actionflow/webhook_source.js.map +1 -1
- package/dist/services/actionflow/workflow_compiler.d.ts.map +1 -1
- package/dist/services/actionflow/workflow_compiler.js +11 -8
- package/dist/services/actionflow/workflow_compiler.js.map +1 -1
- package/dist/services/report/blueprint.d.ts +109 -0
- package/dist/services/report/blueprint.d.ts.map +1 -0
- package/dist/services/report/blueprint.js +322 -0
- package/dist/services/report/blueprint.js.map +1 -0
- package/dist/services/report/build.d.ts.map +1 -1
- package/dist/services/report/build.js +8 -3
- package/dist/services/report/build.js.map +1 -1
- package/dist/services/report/card.d.ts +65 -0
- package/dist/services/report/card.d.ts.map +1 -0
- package/dist/services/report/card.js +151 -0
- package/dist/services/report/card.js.map +1 -0
- package/dist/services/report/copy-health.d.ts +31 -0
- package/dist/services/report/copy-health.d.ts.map +1 -0
- package/dist/services/report/copy-health.js +87 -0
- package/dist/services/report/copy-health.js.map +1 -0
- package/dist/services/report/dataset-heal.d.ts +64 -0
- package/dist/services/report/dataset-heal.d.ts.map +1 -0
- package/dist/services/report/dataset-heal.js +89 -0
- package/dist/services/report/dataset-heal.js.map +1 -0
- package/dist/services/report/dataset-ids.d.ts +70 -0
- package/dist/services/report/dataset-ids.d.ts.map +1 -0
- package/dist/services/report/dataset-ids.js +149 -0
- package/dist/services/report/dataset-ids.js.map +1 -0
- package/dist/services/report/dataset.d.ts.map +1 -1
- package/dist/services/report/dataset.js +3 -1
- package/dist/services/report/dataset.js.map +1 -1
- package/dist/services/report/empty-dataset.d.ts +51 -0
- package/dist/services/report/empty-dataset.d.ts.map +1 -0
- package/dist/services/report/empty-dataset.js +213 -0
- package/dist/services/report/empty-dataset.js.map +1 -0
- package/dist/services/report/field-binding.d.ts +75 -0
- package/dist/services/report/field-binding.d.ts.map +1 -0
- package/dist/services/report/field-binding.js +160 -0
- package/dist/services/report/field-binding.js.map +1 -0
- package/dist/services/report/forms.d.ts +32 -0
- package/dist/services/report/forms.d.ts.map +1 -1
- package/dist/services/report/forms.js +90 -0
- package/dist/services/report/forms.js.map +1 -1
- package/dist/services/report/formula-parent.d.ts +25 -0
- package/dist/services/report/formula-parent.d.ts.map +1 -0
- package/dist/services/report/formula-parent.js +116 -0
- package/dist/services/report/formula-parent.js.map +1 -0
- package/dist/services/report/locate.d.ts +40 -0
- package/dist/services/report/locate.d.ts.map +1 -0
- package/dist/services/report/locate.js +122 -0
- package/dist/services/report/locate.js.map +1 -0
- package/dist/services/report/reports.d.ts +4 -0
- package/dist/services/report/reports.d.ts.map +1 -1
- package/dist/services/report/reports.js +4 -2
- package/dist/services/report/reports.js.map +1 -1
- package/dist/services/report/scene.d.ts +22 -0
- package/dist/services/report/scene.d.ts.map +1 -0
- package/dist/services/report/scene.js +145 -0
- package/dist/services/report/scene.js.map +1 -0
- package/dist/services/report/types.d.ts +28 -0
- package/dist/services/report/types.d.ts.map +1 -1
- package/dist/services/report/verify.d.ts +24 -0
- package/dist/services/report/verify.d.ts.map +1 -1
- package/dist/services/report/verify.js +115 -2
- package/dist/services/report/verify.js.map +1 -1
- package/dist/services/report/workbook.d.ts +12 -1
- package/dist/services/report/workbook.d.ts.map +1 -1
- package/dist/services/report/workbook.js +107 -8
- package/dist/services/report/workbook.js.map +1 -1
- package/dist/services/workflow-after-submit-comment.d.ts +20 -0
- package/dist/services/workflow-after-submit-comment.d.ts.map +1 -0
- package/dist/services/workflow-after-submit-comment.js +81 -0
- package/dist/services/workflow-after-submit-comment.js.map +1 -0
- package/ecodecmd/src/build.js +36 -12
- package/package.json +1 -1
- package/skill-docs/SKILL.md +4 -4
- package/skill-docs/_catalog.md +10 -1
- package/skill-docs/actionflows/SKILL.md +1 -0
- package/skill-docs/actionflows/references/components/ebuilder/EnquiryForm.md +2 -2
- package/skill-docs/actionflows/references/components/trigger/CustomTrigger.md +2 -0
- package/skill-docs/actionflows/references/components/trigger/WebHookTrigger.md +19 -1
- package/skill-docs/references/coding/guide-form-crud.md +2 -0
- package/skill-docs/references/coding/guide-page-code.md +108 -0
- package/skill-docs/references/components/ref-component-common.md +98 -0
- package/skill-docs/references/report/add-dataset-registration-guide.md +44 -22
- package/skill-docs/references/report/advanced-crosstab-tree-guide.md +82 -0
- package/skill-docs/references/report/ai-report-workflow.md +100 -100
- package/skill-docs/references/report/api-auth-headers.md +129 -0
- package/skill-docs/references/report/api-report-build-fast-path.md +274 -275
- package/skill-docs/references/report/app-datasource-lookup-guide.md +230 -230
- package/skill-docs/references/report/branch-scene-guide.md +293 -0
- package/skill-docs/references/report/build-resilience-guide.md +99 -0
- package/skill-docs/references/report/card-report-guide.md +110 -0
- package/skill-docs/references/report/cell-config-echo-guide.md +44 -9
- package/skill-docs/references/report/cell-transform-guide.md +9 -9
- package/skill-docs/references/report/column-split-report-guide.md +96 -0
- package/skill-docs/references/report/condition-format-guide.md +49 -24
- package/skill-docs/references/report/cross-dataset-filter-guide.md +180 -69
- package/skill-docs/references/report/crosstab-raw-workbook-guide.md +265 -0
- package/skill-docs/references/report/dataset-query-filter-guide.md +231 -235
- package/skill-docs/references/report/dataset-sidebar-ops-guide.md +75 -34
- package/skill-docs/references/report/dataset-table-field-contract-guide.md +196 -46
- package/skill-docs/references/report/datasource-metadata-guide.md +128 -119
- package/skill-docs/references/report/datasource-selection-and-parent-filter-guide.md +183 -148
- package/skill-docs/references/report/date-range-query-reference.md +97 -102
- package/skill-docs/references/report/default-header-style-guide.md +8 -8
- package/skill-docs/references/report/designer-blank-prevention-guide.md +8 -8
- package/skill-docs/references/report/dossier-report-guide.md +69 -0
- package/skill-docs/references/report/drilldown-report-guide.md +59 -0
- package/skill-docs/references/report/event-hreflink-guide.md +53 -47
- package/skill-docs/references/report/expansion-block-parent-config-guide.md +208 -0
- package/skill-docs/references/report/failure-cleanup-and-nonblocking-guide.md +183 -0
- package/skill-docs/references/report/field-bind-exact-match-guide.md +208 -208
- package/skill-docs/references/report/financial-stats-report-guide.md +89 -0
- package/skill-docs/references/report/formula-cell-api-guide.md +325 -258
- package/skill-docs/references/report/golden-case-summary-sheet.md +200 -0
- package/skill-docs/references/report/guide-report-build.md +6 -1
- package/skill-docs/references/report/hidden-row-and-header-merge-guide.md +10 -10
- package/skill-docs/references/report/layout-showlocation-freeze-guide.md +39 -10
- package/skill-docs/references/report/multi-report-crosstab-casebook.md +263 -0
- package/skill-docs/references/report/paged-group-report-guide.md +68 -0
- package/skill-docs/references/report/preaggregate-auto-disable-guide.md +24 -13
- package/skill-docs/references/report/query-condition-api-guide.md +145 -125
- package/skill-docs/references/report/ref-report-commands.md +41 -3
- package/skill-docs/references/report/report-baseinfo-defaults-guide.md +117 -117
- package/skill-docs/references/report/report-building-guide.md +52 -52
- package/skill-docs/references/report/report-case-prompts.md +104 -0
- package/skill-docs/references/report/report-config-schema.md +281 -281
- package/skill-docs/references/report/report-create-modes-guide.md +73 -35
- package/skill-docs/references/report/report-data-model.md +131 -131
- package/skill-docs/references/report/report-delivery-contract.md +23 -3
- package/skill-docs/references/report/report-designer-feature-map.md +30 -35
- package/skill-docs/references/report/report-help-guide.md +304 -0
- package/skill-docs/references/report/report-internal-error-guide.md +71 -0
- package/skill-docs/references/report/report-knowledge-base.md +27 -27
- package/skill-docs/references/report/report-lifecycle-api-guide.md +126 -94
- package/skill-docs/references/report/report-list-page-ops-guide.md +54 -8
- package/skill-docs/references/report/report-permission-guide.md +99 -102
- package/skill-docs/references/report/report-requirement-analysis-template.md +93 -29
- package/skill-docs/references/report/report-self-check-guide.md +164 -164
- package/skill-docs/references/report/report-verification-discipline-guide.md +203 -0
- package/skill-docs/references/report/safe-partial-save-guide.md +151 -151
- package/skill-docs/references/report/shard-freeze-report-guide.md +97 -0
- package/skill-docs/references/report/snowflake-id-precision-guide.md +84 -84
- package/skill-docs/references/report/spec-build-schema.md +71 -71
- package/skill-docs/references/report/targeted-fix-guide.md +155 -97
- package/skill-docs/references/report/user-request-scope-only-guide.md +23 -4
- package/skill-docs/references/workflow/guide-after-submit-comment.md +58 -0
- package/skill-docs/references/workflow/guide-workflow.md +6 -0
|
@@ -1,235 +1,231 @@
|
|
|
1
|
-
# 数据集筛选(queryInfoSave)API 写入规范
|
|
2
|
-
|
|
3
|
-
> **适用场景**:设计器左侧「数据集 → 筛选条件」、行级数据权限、整表预过滤。
|
|
4
|
-
>
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
|
13
|
-
|
|
14
|
-
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
|
52
|
-
|
|
53
|
-
| `
|
|
54
|
-
| `
|
|
55
|
-
| `otherData.rootStr` | 人类可读表达式 | 设计器展示用,须与 datas 语义一致 |
|
|
56
|
-
| `otherData.
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
"
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
|
102
|
-
|
|
103
|
-
|
|
|
104
|
-
|
|
|
105
|
-
|
|
|
106
|
-
|
|
|
107
|
-
|
|
|
108
|
-
|
|
|
109
|
-
|
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
field
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
|
133
|
-
|
|
134
|
-
| `
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
|
141
|
-
|
|
142
|
-
|
|
|
143
|
-
|
|
|
144
|
-
|
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
|
155
|
-
|
|
156
|
-
| `yyyy-MM`
|
|
157
|
-
|
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
|
219
|
-
|
|
220
|
-
|
|
|
221
|
-
|
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
|
230
|
-
|
|
231
|
-
|
|
|
232
|
-
| `本地工作目录` | 一键写入高级搜索 + 数据集筛选 |
|
|
233
|
-
| `query-condition-api-guide.md` | saveQueryItem 高级搜索(与本文互补) |
|
|
234
|
-
| `cross-dataset-filter-guide.md` | datasetFilter / customFilterField / fieldKey |
|
|
235
|
-
| `report-knowledge-base.md` | FuncType 枚举摘要 |
|
|
1
|
+
# 数据集筛选(queryInfoSave)API 写入规范
|
|
2
|
+
|
|
3
|
+
> **适用场景**:设计器左侧「数据集 → 筛选条件」、行级数据权限、整表预过滤。
|
|
4
|
+
> **金标准报表**:`1304979556231593985`(EBU 经营数据统计)
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## 一、三种「筛选」机制(必区分)
|
|
9
|
+
|
|
10
|
+
| 机制 | 设计器入口 | API | 持久化形态 | 典型用途 |
|
|
11
|
+
|------|-----------|-----|-----------|----------|
|
|
12
|
+
| **高级搜索** | 页面 → 查询设置 | `saveQueryItem` / `getQueryItem` | QueryItem JSON | 用户运行时输入筛选 |
|
|
13
|
+
| **数据集筛选** | 左侧数据集 → 筛选条件 | **`queryInfoSave` / `queryInfoGet`** | `conditionData` + `otherData` | 行级权限、整表预过滤 |
|
|
14
|
+
| **单元格/实例筛选** | 单元格自定义筛选 / 多数据集副本 | `saveReportWithCacheConfig` → `datasetFilter` / `customFilterField` | filterList + fieldKey | 列级差异化汇总 |
|
|
15
|
+
|
|
16
|
+
**Agent 硬约束**
|
|
17
|
+
|
|
18
|
+
- 用户说「左侧数据集筛选」「行级权限」「数据集过滤条件」→ **只用 `queryInfoSave`**,禁止写 `saveQueryItem`。
|
|
19
|
+
- 用户说「高级搜索」「查询条件」→ **`saveQueryItem`**,禁止写 `queryInfoSave`。
|
|
20
|
+
- 用户说「自定义筛选」「核算机构不包含」且针对**某一列/某一数据集实例**→ `datasetFilter` / `customFilterField`(见 `cross-dataset-filter-guide.md`)。
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## 二、API
|
|
25
|
+
|
|
26
|
+
| 操作 | 方法 | 参数 |
|
|
27
|
+
|------|------|------|
|
|
28
|
+
| 保存 | `POST /api/bs/edc/dataset/queryInfoSave` | `datasetId`, `filterData`(conditionData JSON 字符串), `otherData`(JSON 字符串) |
|
|
29
|
+
| 读取 | `GET /api/bs/edc/dataset/queryInfoGet` | `datasetId` |
|
|
30
|
+
|
|
31
|
+
回读路径:`data.conditionData`、`data.otherData`(均为 JSON 字符串,需二次 `json.loads`)。
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## 三、conditionData 顶层结构
|
|
36
|
+
|
|
37
|
+
```json
|
|
38
|
+
{
|
|
39
|
+
"key": "<毫秒时间戳>",
|
|
40
|
+
"relationship": "1",
|
|
41
|
+
"isParent": true,
|
|
42
|
+
"isNewFilter": true,
|
|
43
|
+
"parentNode": "",
|
|
44
|
+
"datas": [ /* 条件节点数组 */ ],
|
|
45
|
+
"version": 1
|
|
46
|
+
}
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
| 字段 | 值 | 说明 |
|
|
50
|
+
|------|-----|------|
|
|
51
|
+
| `relationship` | **`"1"`** | 且(AND) |
|
|
52
|
+
| `relationship` | **`"0"`** | 或(OR) |
|
|
53
|
+
| `otherData.rootStr` | 人类可读表达式 | 设计器展示用,须与 datas 语义一致 |
|
|
54
|
+
| `otherData.filterIsNull` | **`true`** | **变量值为空时不参与条件过滤**(平台 `QueryFilterBiz.analysisConfigFilter`);与设计器「空值不筛」对齐,写入变量条件时**必须**为 `true` |
|
|
55
|
+
| `otherData.rootStr` | 人类可读表达式 | 设计器展示用,须与 datas 语义一致 |
|
|
56
|
+
| `otherData.version` | `1` | 与手动 save 对齐 |
|
|
57
|
+
|
|
58
|
+
### 5.4 自定义变量(如 `{cs}`)
|
|
59
|
+
|
|
60
|
+
| 场景 | func | value | otherData |
|
|
61
|
+
|------|------|-------|-----------|
|
|
62
|
+
| 创建者等于自定义变量 cs | `eq` | `{cs}` | **`filterIsNull: true`** |
|
|
63
|
+
| 固定字面量(如资产名称=办公用品) | `eq` | `办公用品` | 同上(整组筛选共用 otherData) |
|
|
64
|
+
|
|
65
|
+
> 变量名写在花括号内,与运行时请求参数 / 页面入参键一致。`filterIsNull=true` 时,`{cs}` 解析为空则**整条条件跳过**,不会误筛成「等于空」。
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## 四、单条条件节点(datas[])
|
|
70
|
+
|
|
71
|
+
```json
|
|
72
|
+
{
|
|
73
|
+
"type": "condition",
|
|
74
|
+
"fieldName": "field_1299789221321891852",
|
|
75
|
+
"fieldType": "String",
|
|
76
|
+
"compType": "Text",
|
|
77
|
+
"text": "产品类型",
|
|
78
|
+
"objId": "<sourceId>",
|
|
79
|
+
"conditions": {
|
|
80
|
+
"func": "nempty",
|
|
81
|
+
"value": "",
|
|
82
|
+
"type": "",
|
|
83
|
+
"text": "",
|
|
84
|
+
"isEsb": false
|
|
85
|
+
},
|
|
86
|
+
"formInfo": { "fieldId": "<字段 id>" },
|
|
87
|
+
"config": { "fieldId": "<字段 id>" }
|
|
88
|
+
}
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
`conditions` 三要素:**func** + **value** + **type**(字段对比时为 `"formField"`)。
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
## 五、需求语义 → func / value 对照表
|
|
96
|
+
|
|
97
|
+
### 5.1 字面量条件(type 为空)
|
|
98
|
+
|
|
99
|
+
| 设计器 / 需求描述 | func | value 示例 | 备注 |
|
|
100
|
+
|------------------|------|-----------|------|
|
|
101
|
+
| 不为空 | **`nempty`** | `""` | 保存用 `nempty`,勿写 `isNotNull` |
|
|
102
|
+
| 为空 | **`empty`** | `""` | |
|
|
103
|
+
| 等于 | **`eq`** | 固定值或 `{lastname}` | 人员当前登录见 §5.3 |
|
|
104
|
+
| 不等于(固定文本) | **`notEq`** | `"新签合同"` | 与字段对比的 `neq` 不同 |
|
|
105
|
+
| 包含 | `like` / `contains` | 文本 | |
|
|
106
|
+
| 不包含 | `uncontains` | 文本 | datasetFilter 常用 |
|
|
107
|
+
| 开头包含 | **`startWith`** | `{thisyear}` | 按年份前缀筛 datetime / yyyy-MM |
|
|
108
|
+
| 结尾包含 | `endWith` | 文本 | |
|
|
109
|
+
| 介于 | **`between`** | `["{thisyear}",""]` | 完整日期区间;**不**适用于 yyyy-MM 等于当前月 |
|
|
110
|
+
|
|
111
|
+
### 5.2 字段对比(type = `"formField"`)
|
|
112
|
+
|
|
113
|
+
左字段为当前节点 `fieldName`;右字段写在 `value.compareFormField`(目标字段完整 `originField` + `showName` + `changeTrigger`)。
|
|
114
|
+
|
|
115
|
+
| 设计器 / 需求描述 | func | value 结构 |
|
|
116
|
+
|------------------|------|-----------|
|
|
117
|
+
| **不属于**(字段 A 不属于字段 B) | **`unaggregate`** | `{ "compareFormField": <字段B originField> }` |
|
|
118
|
+
| **不等于**(字段 A ≠ 字段 B) | **`neq`** | `{ "compareFormField": <字段B originField> }` |
|
|
119
|
+
|
|
120
|
+
```python
|
|
121
|
+
def _build_compare_form_field(origin_field):
|
|
122
|
+
field = dict(origin_field or {})
|
|
123
|
+
field["showName"] = field.get("name") or field.get("showName") or ""
|
|
124
|
+
field["changeTrigger"] = field.get("changeTrigger") or "1"
|
|
125
|
+
return field
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
**常见错误**
|
|
129
|
+
|
|
130
|
+
| 错误写法 | 正确理解 |
|
|
131
|
+
|----------|----------|
|
|
132
|
+
| `notEq` + 字符串 `"核算机构"` | 排除产品类型**枚举值**为「核算机构」,不是字段对比 |
|
|
133
|
+
| `unaggregate` 用于「不等于」 | 「不等于」用 **`neq`**;「不属于」用 **`unaggregate`** |
|
|
134
|
+
| `isNotNull` 写入 queryInfoSave | 平台归一化为 **`nempty`** |
|
|
135
|
+
|
|
136
|
+
### 5.3 系统参数(dataset 筛选已验证)
|
|
137
|
+
|
|
138
|
+
| 场景 | func | value |
|
|
139
|
+
|------|------|-------|
|
|
140
|
+
| 当前用户姓名 | `eq` | `{lastname}` |
|
|
141
|
+
| 当前登录人员 ID | **`eq`** | `{userid}`(设计器显示「等于」,勿用 `in`) |
|
|
142
|
+
| 当前年月(format=`yyyy-MM`) | `eq` | **`{year}-{month}`** |
|
|
143
|
+
| 今年(yyyy-MM / datetime 前缀) | `startWith` | **`{thisyear}`** |
|
|
144
|
+
| 今年(高级搜索日期区间) | `between` | `["{thisyear}",""]` | 仅 saveQueryItem,非左侧 dataset |
|
|
145
|
+
|
|
146
|
+
**无效占位符**:`{username}`、`{today}`、`{currmonth}`。
|
|
147
|
+
|
|
148
|
+
---
|
|
149
|
+
|
|
150
|
+
## 六、日期字段 format 与写法
|
|
151
|
+
|
|
152
|
+
| 字段 format | 需求 | 推荐写法 | 勿用 |
|
|
153
|
+
|-------------|------|----------|------|
|
|
154
|
+
| `yyyy-MM` | 当前年月 | `eq` + `{year}-{month}` | `between` + `{thismonth}` |
|
|
155
|
+
| `yyyy-MM` | 今年 | `startWith` + `{thisyear}` | `between`(完整日期语义) |
|
|
156
|
+
| `yyyy-MM-dd` / `yyyy-MM-dd HH:mm:ss` | 今年 | `startWith` + `{thisyear}` | — |
|
|
157
|
+
| 高级搜索日期区间 | 本月 | — | 见 `query-condition-api-guide.md` §五 |
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
## 七、EBU 金标准示例
|
|
162
|
+
|
|
163
|
+
报表 `1304979556231593985`
|
|
164
|
+
|
|
165
|
+
### 7.1 EBU团队 · AND(`relationship: "1"`)
|
|
166
|
+
|
|
167
|
+
数据集 `1304979556231593994`
|
|
168
|
+
|
|
169
|
+
| 字段 | func | value |
|
|
170
|
+
|------|------|-------|
|
|
171
|
+
| 负责人姓名 | `eq` | `{lastname}` |
|
|
172
|
+
| 创建者 | **`eq`** | `{userid}` |
|
|
173
|
+
|
|
174
|
+
rootStr:`( 负责人姓名 等于 '{lastname}' ) AND ( 创建者 等于 '{userid}' )`
|
|
175
|
+
|
|
176
|
+
### 7.2 直销合同业绩表 · OR(`relationship: "0"`)
|
|
177
|
+
|
|
178
|
+
数据集 `1304979560546713602`
|
|
179
|
+
|
|
180
|
+
| 字段 | func | type | value |
|
|
181
|
+
|------|------|------|-------|
|
|
182
|
+
| 核算机构 | **`neq`** | **`formField`** | compareFormField → 合同种类 |
|
|
183
|
+
| 创建时间 | **`startWith`** | — | `{thisyear}` |
|
|
184
|
+
|
|
185
|
+
rootStr:`(( 核算机构 不等于合同种类 ) 或 ( 创建时间 开头包含 '{thisyear}' ))`
|
|
186
|
+
|
|
187
|
+
### 7.3 历史验证过的其他写法(按需)
|
|
188
|
+
|
|
189
|
+
| 场景 | func | value |
|
|
190
|
+
|------|------|-------|
|
|
191
|
+
| 产品类型 不属于 核算机构 | `unaggregate` + formField | compareFormField → 核算机构 |
|
|
192
|
+
| 合同业绩年月 = 当前年月 | `eq` | `{year}-{month}` |
|
|
193
|
+
|
|
194
|
+
---
|
|
195
|
+
|
|
196
|
+
## 八、写入与验证流程
|
|
197
|
+
|
|
198
|
+
1. `fieldsAndOriginFields` / `get_fields` 取字段 **originField**(字段对比右侧必填)。
|
|
199
|
+
2. 组装 `conditionData` + `otherData`(含 `rootStr`)。
|
|
200
|
+
3. `POST queryInfoSave`。
|
|
201
|
+
4. **`GET queryInfoGet` 回读**,核对:
|
|
202
|
+
- [ ] `relationship` 与 AND/OR 一致
|
|
203
|
+
- [ ] 每条 `conditions.func` / `conditions.type` / `conditions.value`
|
|
204
|
+
- [ ] 字段对比:`value.compareFormField.name` 为右字段 fieldName
|
|
205
|
+
- [ ] `otherData.rootStr` 与设计器一致
|
|
206
|
+
5. 设计器刷新左侧数据集 → 筛选条件,确认操作项与默认值回显。
|
|
207
|
+
|
|
208
|
+
**禁止**:未回读 `queryInfoGet` 即声称配置正确(手动 save 与脚本形态可能不同)。
|
|
209
|
+
|
|
210
|
+
---
|
|
211
|
+
|
|
212
|
+
## 九、与 queryInfoSave 无关的筛选
|
|
213
|
+
|
|
214
|
+
以下场景**不要**使用本章 API:
|
|
215
|
+
|
|
216
|
+
| 需求 | 文档 |
|
|
217
|
+
|------|------|
|
|
218
|
+
| 报表顶部高级搜索 | `query-condition-api-guide.md` §二–§六 |
|
|
219
|
+
| 单元格 customFilterField | `cross-dataset-filter-guide.md` §三 |
|
|
220
|
+
| 多数据集实例 datasetFilter | `cross-dataset-filter-guide.md` §3.4 |
|
|
221
|
+
| 左父格 subordination / leftFilterField | `cross-dataset-filter-guide.md` §二 |
|
|
222
|
+
|
|
223
|
+
---
|
|
224
|
+
|
|
225
|
+
## 十、相关文件
|
|
226
|
+
|
|
227
|
+
| 文件 | 用途 |
|
|
228
|
+
|------|------|
|
|
229
|
+
| `query-condition-api-guide.md` | saveQueryItem 高级搜索(与本文互补) |
|
|
230
|
+
| `cross-dataset-filter-guide.md` | datasetFilter / customFilterField / fieldKey |
|
|
231
|
+
| `report-knowledge-base.md` | FuncType 枚举摘要 |
|