@qingflow-tech/qingflow-cli 1.1.2 → 1.1.34

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.
Files changed (103) hide show
  1. package/README.md +2 -2
  2. package/docs/local-agent-install.md +10 -0
  3. package/package.json +1 -1
  4. package/pyproject.toml +1 -1
  5. package/skills/qingflow-cli/SKILL.md +61 -47
  6. package/skills/qingflow-cli/manifest.yaml +1 -1
  7. package/skills/qingflow-cli/reference/00-INDEX.md +35 -0
  8. package/skills/qingflow-cli/reference/QINGFLOW_CLI_BUILDER_APP_DELIVERY_WORKFLOW.md +21 -477
  9. package/skills/qingflow-cli/reference/QINGFLOW_CLI_BUILDER_VIEWS_WORKFLOW.md +44 -290
  10. package/skills/qingflow-cli/reference/QINGFLOW_CLI_SCHEMA_APPLY_FIELD_TYPES_AND_SCENARIOS.md +11 -102
  11. package/skills/qingflow-cli/reference/builder/10-build-single-app.md +57 -0
  12. package/skills/qingflow-cli/reference/builder/20-build-complete-system.md +84 -0
  13. package/skills/qingflow-cli/reference/builder/30-schema-fields.md +317 -0
  14. package/skills/qingflow-cli/reference/builder/40-layout.md +70 -0
  15. package/skills/qingflow-cli/reference/builder/50-views.md +540 -0
  16. package/skills/qingflow-cli/reference/builder/60-charts.md +328 -0
  17. package/skills/qingflow-cli/reference/builder/70-portal.md +372 -0
  18. package/skills/qingflow-cli/reference/builder/80-buttons-associated-resources.md +148 -0
  19. package/skills/qingflow-cli/reference/builder/90-workflow.md +35 -0
  20. package/skills/qingflow-cli/reference/builder/99-publish-verify.md +64 -0
  21. package/skills/qingflow-cli/reference/builder/README.md +62 -0
  22. package/skills/qingflow-cli/reference/builder/code-integrations/README.md +130 -0
  23. package/skills/qingflow-cli/reference/builder/code-integrations/code-block.md +66 -0
  24. package/skills/qingflow-cli/reference/builder/code-integrations/q-linker.md +77 -0
  25. package/skills/qingflow-cli/reference/builder/reference/app-delivery-sop.md +508 -0
  26. package/skills/qingflow-cli/reference/builder/reference/match-rules.md +229 -0
  27. package/skills/qingflow-cli/reference/builder/reference/workspace-icons.md +89 -0
  28. package/skills/qingflow-cli/reference/builder/workflow/01-overview.md +48 -0
  29. package/skills/qingflow-cli/reference/builder/workflow/02-update-mode.md +63 -0
  30. package/skills/qingflow-cli/reference/builder/workflow/03-flow-patterns.md +59 -0
  31. package/skills/qingflow-cli/reference/builder/workflow/04-stage1-business-modeling.md +131 -0
  32. package/skills/qingflow-cli/reference/builder/workflow/05-stage2-members-roles.md +29 -0
  33. package/skills/qingflow-cli/reference/builder/workflow/06-stage3-build-spec.md +211 -0
  34. package/skills/qingflow-cli/reference/builder/workflow/07-stage4-validate-spec.md +36 -0
  35. package/skills/qingflow-cli/reference/builder/workflow/08-stage5-apply-verify.md +66 -0
  36. package/skills/qingflow-cli/reference/builder/workflow/09-stage6-summary.md +88 -0
  37. package/skills/qingflow-cli/reference/builder/workflow/10-node-config-reference.md +93 -0
  38. package/skills/qingflow-cli/reference/builder/workflow/11-troubleshooting.md +18 -0
  39. package/skills/qingflow-cli/reference/builder/workflow/README.md +88 -0
  40. package/skills/qingflow-cli/reference/builder/workflow/workflow-schema.json +1754 -0
  41. package/skills/qingflow-cli/reference/charts_upsert_dashboard_starter.example.json +81 -0
  42. package/skills/qingflow-cli/reference/core/QINGFLOW_CLI_ADMIN_CHEATSHEET.md +94 -0
  43. package/skills/qingflow-cli/reference/core/QINGFLOW_CLI_DATA_RETRIEVAL_WORKFLOW.md +139 -0
  44. package/skills/qingflow-cli/reference/core/QINGFLOW_CLI_EXPLORATION_REPORT.md +84 -0
  45. package/skills/qingflow-cli/reference/core/QINGFLOW_CLI_FIELD_DATA_TYPES.md +129 -0
  46. package/skills/qingflow-cli/reference/core/QINGFLOW_CLI_MEMBER_CHEATSHEET.md +195 -0
  47. package/skills/qingflow-cli/reference/core/QINGFLOW_CLI_ONE_SHOT_CHEATSHEET.md +159 -0
  48. package/skills/qingflow-cli/reference/examples/README.md +17 -0
  49. package/skills/qingflow-cli/reference/examples/associated/associated_resources_semantic_full.example.json +50 -0
  50. package/skills/qingflow-cli/reference/examples/buttons/custom_buttons_advanced.example.json +56 -0
  51. package/skills/qingflow-cli/reference/examples/charts/charts_remove.example.json +1 -0
  52. package/skills/qingflow-cli/reference/examples/charts/charts_reorder.example.json +1 -0
  53. package/skills/qingflow-cli/reference/examples/charts/charts_upsert_bar.example.json +8 -0
  54. package/skills/qingflow-cli/reference/examples/charts/charts_upsert_dashboard_starter.example.json +118 -0
  55. package/skills/qingflow-cli/reference/examples/charts/charts_upsert_minimal.example.json +13 -0
  56. package/skills/qingflow-cli/reference/examples/layout/layout_sections_full.example.json +22 -0
  57. package/skills/qingflow-cli/reference/examples/portal/portal_sections_all_types.example.json +145 -0
  58. package/skills/qingflow-cli/reference/examples/portal/portal_sections_five_types.example.json +126 -0
  59. package/skills/qingflow-cli/reference/examples/portal/portal_sections_standard_workbench.example.json +178 -0
  60. package/skills/qingflow-cli/reference/examples/record/record_insert_all_field_types.example.json +35 -0
  61. package/skills/qingflow-cli/reference/examples/schema/_batch_schema_complex.json +18 -0
  62. package/skills/qingflow-cli/reference/examples/schema/_batch_schema_scalar.json +17 -0
  63. package/skills/qingflow-cli/reference/examples/schema/schema_add_fields_minimal.example.json +7 -0
  64. package/skills/qingflow-cli/reference/examples/schema/schema_apply_add_fields_all_types.json +78 -0
  65. package/skills/qingflow-cli/reference/examples/schema/schema_multi_app_form_relation_layout.example.json +166 -0
  66. package/skills/qingflow-cli/reference/examples/schema/schema_single_app_form_standard.example.json +95 -0
  67. package/skills/qingflow-cli/reference/examples/views/views_batch_full.example.json +159 -0
  68. package/skills/qingflow-cli/reference/examples/views/views_upsert_table_minimal.example.json +42 -0
  69. package/skills/qingflow-cli/reference/portal_sections_all_types.example.json +18 -4
  70. package/skills/qingflow-cli/reference/portal_sections_five_types.example.json +3 -3
  71. package/skills/qingflow-cli/reference/portal_sections_standard_workbench.example.json +57 -7
  72. package/skills/qingflow-cli/reference/record/QINGFLOW_CLI_RECORD_CREATE_WORKFLOW.md +22 -0
  73. package/skills/qingflow-cli/reference/record/QINGFLOW_CLI_RECORD_DELETE_WORKFLOW.md +31 -0
  74. package/skills/qingflow-cli/reference/record/QINGFLOW_CLI_RECORD_IMPORT_WORKFLOW.md +176 -0
  75. package/skills/qingflow-cli/reference/record/QINGFLOW_CLI_RECORD_UPDATE_WORKFLOW.md +167 -0
  76. package/skills/qingflow-cli/reference/record/analysis/README.md +130 -0
  77. package/skills/qingflow-cli/reference/record/analysis/analysis-gotchas.md +91 -0
  78. package/skills/qingflow-cli/reference/record/analysis/analysis-patterns.md +112 -0
  79. package/skills/qingflow-cli/reference/record/analysis/business-context.md +74 -0
  80. package/skills/qingflow-cli/reference/record/analysis/confidence-reporting.md +69 -0
  81. package/skills/qingflow-cli/reference/record/analysis/data-access-playbook.md +106 -0
  82. package/skills/qingflow-cli/reference/record/analysis/pandas-recipes.md +172 -0
  83. package/skills/qingflow-cli/reference/record/analysis/report-format.md +76 -0
  84. package/skills/qingflow-cli/reference/record/insert/README.md +125 -0
  85. package/skills/qingflow-cli/reference/schema_apply_add_fields_all_types.json +1 -1
  86. package/skills/qingflow-cli/reference/task/QINGFLOW_CLI_TASK_CONTEXT_WORKFLOW.md +153 -0
  87. package/skills/qingflow-cli/reference/task/ops/README.md +134 -0
  88. package/skills/qingflow-cli/reference/task/ops/environments.md +43 -0
  89. package/skills/qingflow-cli/reference/task/ops/workflow-usage.md +29 -0
  90. package/skills/qingflow-cli/reference/views_upsert_table_minimal.example.json +42 -7
  91. package/skills/qingflow-cli/scripts/validate_system_build_summary.py +124 -0
  92. package/skills/qingflow-cli/scripts/workflow/diff_flow_spec.py +275 -0
  93. package/skills/qingflow-cli/scripts/workflow/validate_flow_spec.py +627 -0
  94. package/src/qingflow_mcp/builder_facade/models.py +413 -119
  95. package/src/qingflow_mcp/builder_facade/service.py +4238 -666
  96. package/src/qingflow_mcp/cli/commands/builder.py +232 -75
  97. package/src/qingflow_mcp/cli/main.py +34 -0
  98. package/src/qingflow_mcp/public_surface.py +10 -0
  99. package/src/qingflow_mcp/server_app_builder.py +62 -34
  100. package/src/qingflow_mcp/solution/compiler/workflow_compiler.py +173 -0
  101. package/src/qingflow_mcp/solution/executor.py +2 -0
  102. package/src/qingflow_mcp/tools/ai_builder_tools.py +2649 -457
  103. package/src/qingflow_mcp/tools/record_tools.py +23 -11
@@ -0,0 +1,13 @@
1
+ [
2
+ {
3
+ "name": "数据总量",
4
+ "chart_type": "target",
5
+ "metric": "count(*)",
6
+ "visibility": {
7
+ "mode": "workspace",
8
+ "selectors": {},
9
+ "external_mode": "not",
10
+ "external_selectors": {}
11
+ }
12
+ }
13
+ ]
@@ -0,0 +1,22 @@
1
+ {
2
+ "app_key": "APP_KEY",
3
+ "mode": "merge",
4
+ "publish": true,
5
+ "sections": [
6
+ {
7
+ "title": "基础信息",
8
+ "rows": [
9
+ ["工单编号", "工单名称", "工单状态"],
10
+ ["负责人", "负责部门", "计划完成日期"]
11
+ ]
12
+ },
13
+ {
14
+ "title": "业务信息",
15
+ "rows": [
16
+ ["计划数量", "预算金额", "是否加急"],
17
+ ["业务标签", "附件资料"],
18
+ ["处理说明"]
19
+ ]
20
+ }
21
+ ]
22
+ }
@@ -0,0 +1,145 @@
1
+ [
2
+ {
3
+ "title": "筛选条_实验项_勿默认交付",
4
+ "source_type": "filter",
5
+ "position": {
6
+ "pc": {
7
+ "x": 0,
8
+ "y": 0,
9
+ "cols": 24,
10
+ "rows": 2
11
+ },
12
+ "mobile": {
13
+ "x": 0,
14
+ "y": 0,
15
+ "cols": 6,
16
+ "rows": 2
17
+ }
18
+ },
19
+ "config": {
20
+ "filterConfig": [],
21
+ "graphList": [
22
+ {
23
+ "graphType": "CHART",
24
+ "graphKey": "REPLACE_WITH_QINGBI_CHART_ID",
25
+ "graphName": "可选_图表显示名"
26
+ }
27
+ ]
28
+ }
29
+ },
30
+ {
31
+ "title": "九宫格",
32
+ "source_type": "grid",
33
+ "position": {
34
+ "pc": {
35
+ "x": 0,
36
+ "y": 2,
37
+ "cols": 24,
38
+ "rows": 4
39
+ },
40
+ "mobile": {
41
+ "x": 0,
42
+ "y": 2,
43
+ "cols": 6,
44
+ "rows": 4
45
+ }
46
+ },
47
+ "config": {
48
+ "gridTitle": "九宫格",
49
+ "beingShowTitle": true,
50
+ "items": [
51
+ {
52
+ "type": 1,
53
+ "jumpMode": 1,
54
+ "linkAppKey": "YOUR_APP_KEY",
55
+ "linkFormType": 1,
56
+ "title": "应用入口",
57
+ "customTitle": "应用入口",
58
+ "beingCustomTitle": false
59
+ }
60
+ ]
61
+ }
62
+ },
63
+ {
64
+ "title": "说明文字块",
65
+ "source_type": "text",
66
+ "position": {
67
+ "pc": {
68
+ "x": 0,
69
+ "y": 6,
70
+ "cols": 24,
71
+ "rows": 2
72
+ },
73
+ "mobile": {
74
+ "x": 0,
75
+ "y": 6,
76
+ "cols": 6,
77
+ "rows": 2
78
+ }
79
+ },
80
+ "text": "本文件仅用于排障/实验:filter 在当前 CLI 直写中可能不落库;稳定自动化模板请使用 portal_sections_five_types.example.json。"
81
+ },
82
+ {
83
+ "title": "外部链接",
84
+ "source_type": "link",
85
+ "position": {
86
+ "pc": {
87
+ "x": 0,
88
+ "y": 8,
89
+ "cols": 24,
90
+ "rows": 2
91
+ },
92
+ "mobile": {
93
+ "x": 0,
94
+ "y": 8,
95
+ "cols": 6,
96
+ "rows": 2
97
+ }
98
+ },
99
+ "url": "https://example.com"
100
+ },
101
+ {
102
+ "title": "应用视图块",
103
+ "source_type": "view",
104
+ "position": {
105
+ "pc": {
106
+ "x": 0,
107
+ "y": 10,
108
+ "cols": 24,
109
+ "rows": 8
110
+ },
111
+ "mobile": {
112
+ "x": 0,
113
+ "y": 10,
114
+ "cols": 6,
115
+ "rows": 8
116
+ }
117
+ },
118
+ "view_ref": {
119
+ "app_key": "YOUR_APP_KEY",
120
+ "view_key": "YOUR_VIEW_KEY"
121
+ }
122
+ },
123
+ {
124
+ "title": "指标图",
125
+ "source_type": "chart",
126
+ "position": {
127
+ "pc": {
128
+ "x": 0,
129
+ "y": 18,
130
+ "cols": 24,
131
+ "rows": 6
132
+ },
133
+ "mobile": {
134
+ "x": 0,
135
+ "y": 18,
136
+ "cols": 6,
137
+ "rows": 6
138
+ }
139
+ },
140
+ "chart": {
141
+ "app_key": "YOUR_APP_KEY",
142
+ "chart_id": "YOUR_CHART_ID"
143
+ }
144
+ }
145
+ ]
@@ -0,0 +1,126 @@
1
+ [
2
+ {
3
+ "title": "门户说明",
4
+ "source_type": "text",
5
+ "position": {
6
+ "pc": {
7
+ "x": 0,
8
+ "y": 0,
9
+ "cols": 24,
10
+ "rows": 2
11
+ },
12
+ "mobile": {
13
+ "x": 0,
14
+ "y": 0,
15
+ "cols": 6,
16
+ "rows": 2
17
+ }
18
+ },
19
+ "text": "建议将门户设计成工作台:上方放入口,中部放指标,下方放待处理和异常列表。此文件仅演示 grid / text / link / view / chart 的稳定写法。"
20
+ },
21
+ {
22
+ "title": "业务入口",
23
+ "source_type": "grid",
24
+ "position": {
25
+ "pc": {
26
+ "x": 0,
27
+ "y": 2,
28
+ "cols": 24,
29
+ "rows": 4
30
+ },
31
+ "mobile": {
32
+ "x": 0,
33
+ "y": 2,
34
+ "cols": 6,
35
+ "rows": 4
36
+ }
37
+ },
38
+ "config": {
39
+ "gridTitle": "业务入口",
40
+ "beingShowTitle": true,
41
+ "items": [
42
+ {
43
+ "type": 1,
44
+ "jumpMode": 1,
45
+ "linkAppKey": "APP_KEY_MAIN",
46
+ "linkFormType": 1,
47
+ "title": "核心业务",
48
+ "customTitle": "核心业务",
49
+ "beingCustomTitle": false
50
+ },
51
+ {
52
+ "type": 1,
53
+ "jumpMode": 1,
54
+ "linkAppKey": "APP_KEY_TASK",
55
+ "linkFormType": 1,
56
+ "title": "待处理业务",
57
+ "customTitle": "待处理业务",
58
+ "beingCustomTitle": false
59
+ }
60
+ ]
61
+ }
62
+ },
63
+ {
64
+ "title": "核心指标",
65
+ "source_type": "chart",
66
+ "position": {
67
+ "pc": {
68
+ "x": 0,
69
+ "y": 6,
70
+ "cols": 24,
71
+ "rows": 6
72
+ },
73
+ "mobile": {
74
+ "x": 0,
75
+ "y": 6,
76
+ "cols": 6,
77
+ "rows": 6
78
+ }
79
+ },
80
+ "chart": {
81
+ "app_key": "ead8ims5i401",
82
+ "chart_id": "mcp_fb104267c5c249ca"
83
+ }
84
+ },
85
+ {
86
+ "title": "待处理列表",
87
+ "source_type": "view",
88
+ "position": {
89
+ "pc": {
90
+ "x": 0,
91
+ "y": 12,
92
+ "cols": 12,
93
+ "rows": 8
94
+ },
95
+ "mobile": {
96
+ "x": 0,
97
+ "y": 12,
98
+ "cols": 6,
99
+ "rows": 8
100
+ }
101
+ },
102
+ "view_ref": {
103
+ "app_key": "ead8ims5i401",
104
+ "view_key": "ead8kbf1i402"
105
+ }
106
+ },
107
+ {
108
+ "title": "帮助文档",
109
+ "source_type": "link",
110
+ "position": {
111
+ "pc": {
112
+ "x": 12,
113
+ "y": 12,
114
+ "cols": 12,
115
+ "rows": 8
116
+ },
117
+ "mobile": {
118
+ "x": 0,
119
+ "y": 20,
120
+ "cols": 6,
121
+ "rows": 2
122
+ }
123
+ },
124
+ "url": "https://example.com"
125
+ }
126
+ ]
@@ -0,0 +1,178 @@
1
+ [
2
+ {
3
+ "title": "业务入口",
4
+ "source_type": "grid",
5
+ "position": {
6
+ "pc": {"x": 0, "y": 0, "cols": 24, "rows": 4},
7
+ "mobile": {"x": 0, "y": 0, "cols": 6, "rows": 4}
8
+ },
9
+ "config": {
10
+ "gridTitle": "业务入口",
11
+ "beingShowTitle": true,
12
+ "items": [
13
+ {
14
+ "type": 1,
15
+ "jumpMode": 1,
16
+ "linkAppKey": "APP_KEY_DEVICE",
17
+ "linkFormType": 1,
18
+ "title": "设备台账",
19
+ "customTitle": "设备台账",
20
+ "beingCustomTitle": false
21
+ },
22
+ {
23
+ "type": 1,
24
+ "jumpMode": 1,
25
+ "linkAppKey": "APP_KEY_REPAIR",
26
+ "linkFormType": 1,
27
+ "title": "故障报修",
28
+ "customTitle": "故障报修",
29
+ "beingCustomTitle": false
30
+ },
31
+ {
32
+ "type": 1,
33
+ "jumpMode": 1,
34
+ "linkAppKey": "APP_KEY_MAINTENANCE",
35
+ "linkFormType": 1,
36
+ "title": "保养管理",
37
+ "customTitle": "保养管理",
38
+ "beingCustomTitle": false
39
+ }
40
+ ]
41
+ }
42
+ },
43
+ {
44
+ "title": "设备总数",
45
+ "source_type": "chart",
46
+ "role": "metric",
47
+ "position": {
48
+ "pc": {"x": 0, "y": 4, "cols": 6, "rows": 5},
49
+ "mobile": {"x": 0, "y": 4, "cols": 6, "rows": 5}
50
+ },
51
+ "chart": {"app_key": "APP_KEY_DEVICE", "name": "设备总数", "chart_type": "target", "metric": "count(*)"}
52
+ },
53
+ {
54
+ "title": "正常设备",
55
+ "source_type": "chart",
56
+ "role": "metric",
57
+ "position": {
58
+ "pc": {"x": 6, "y": 4, "cols": 6, "rows": 5},
59
+ "mobile": {"x": 0, "y": 9, "cols": 6, "rows": 5}
60
+ },
61
+ "chart": {
62
+ "app_key": "APP_KEY_DEVICE",
63
+ "name": "正常设备",
64
+ "chart_type": "target",
65
+ "metric": "count(*)",
66
+ "filters": [{"field_name": "使用状态", "operator": "eq", "value": "正常"}]
67
+ }
68
+ },
69
+ {
70
+ "title": "维修中设备",
71
+ "source_type": "chart",
72
+ "role": "metric",
73
+ "position": {
74
+ "pc": {"x": 12, "y": 4, "cols": 6, "rows": 5},
75
+ "mobile": {"x": 0, "y": 14, "cols": 6, "rows": 5}
76
+ },
77
+ "chart": {
78
+ "app_key": "APP_KEY_DEVICE",
79
+ "name": "维修中设备",
80
+ "chart_type": "target",
81
+ "metric": "count(*)",
82
+ "filters": [{"field_name": "使用状态", "operator": "eq", "value": "维修中"}]
83
+ }
84
+ },
85
+ {
86
+ "title": "本月报修",
87
+ "source_type": "chart",
88
+ "role": "metric",
89
+ "position": {
90
+ "pc": {"x": 18, "y": 4, "cols": 6, "rows": 5},
91
+ "mobile": {"x": 0, "y": 19, "cols": 6, "rows": 5}
92
+ },
93
+ "chart": {
94
+ "app_key": "APP_KEY_REPAIR",
95
+ "name": "本月报修",
96
+ "chart_type": "target",
97
+ "metric": "count(*)",
98
+ "filters": [
99
+ {"field_name": "报修日期", "operator": "gte", "value": "2026-07-01"},
100
+ {"field_name": "报修日期", "operator": "lte", "value": "2026-07-31"}
101
+ ]
102
+ }
103
+ },
104
+ {
105
+ "title": "设备状态分布",
106
+ "source_type": "chart",
107
+ "position": {
108
+ "pc": {"x": 0, "y": 9, "cols": 8, "rows": 7},
109
+ "mobile": {"x": 0, "y": 24, "cols": 6, "rows": 7}
110
+ },
111
+ "chart": {
112
+ "app_key": "APP_KEY_DEVICE",
113
+ "name": "设备状态分布",
114
+ "chart_type": "ring",
115
+ "metric": "count(*)",
116
+ "group_by": ["使用状态"],
117
+ "filters": [
118
+ {"field_name": "使用状态", "operator": "not_empty"}
119
+ ]
120
+ }
121
+ },
122
+ {
123
+ "title": "故障类型分布",
124
+ "source_type": "chart",
125
+ "position": {
126
+ "pc": {"x": 8, "y": 9, "cols": 8, "rows": 7},
127
+ "mobile": {"x": 0, "y": 31, "cols": 6, "rows": 7}
128
+ },
129
+ "chart": {
130
+ "app_key": "APP_KEY_REPAIR",
131
+ "name": "故障类型分布",
132
+ "chart_type": "columnar",
133
+ "metric": "count(*)",
134
+ "group_by": ["故障类型"],
135
+ "filters": [
136
+ {"field_name": "故障类型", "operator": "in", "values": ["机械故障", "电气故障", "软件故障"]},
137
+ {"field_name": "处理状态", "operator": "neq", "value": "已作废"}
138
+ ]
139
+ }
140
+ },
141
+ {
142
+ "title": "维修完成趋势",
143
+ "source_type": "chart",
144
+ "position": {
145
+ "pc": {"x": 16, "y": 9, "cols": 8, "rows": 7},
146
+ "mobile": {"x": 0, "y": 38, "cols": 6, "rows": 7}
147
+ },
148
+ "chart": {
149
+ "app_key": "APP_KEY_REPAIR",
150
+ "name": "维修完成趋势",
151
+ "chart_type": "columnar",
152
+ "metric": "count(*)",
153
+ "group_by": ["完成日期"],
154
+ "filters": [
155
+ {"field_name": "维修说明", "operator": "contains", "value": "完成"},
156
+ {"field_name": "完成日期", "operator": "not_empty"}
157
+ ]
158
+ }
159
+ },
160
+ {
161
+ "title": "异常设备",
162
+ "source_type": "view",
163
+ "position": {
164
+ "pc": {"x": 0, "y": 16, "cols": 12, "rows": 11},
165
+ "mobile": {"x": 0, "y": 45, "cols": 6, "rows": 11}
166
+ },
167
+ "view_ref": {"app_key": "APP_KEY_DEVICE", "view_key": "VIEW_KEY_ABNORMAL_DEVICES"}
168
+ },
169
+ {
170
+ "title": "待处理工单",
171
+ "source_type": "view",
172
+ "position": {
173
+ "pc": {"x": 12, "y": 16, "cols": 12, "rows": 11},
174
+ "mobile": {"x": 0, "y": 56, "cols": 6, "rows": 11}
175
+ },
176
+ "view_ref": {"app_key": "APP_KEY_REPAIR", "view_key": "VIEW_KEY_PENDING_WORK_ORDERS"}
177
+ }
178
+ ]
@@ -0,0 +1,35 @@
1
+ [
2
+ {
3
+ "fields": {
4
+ "文本字段": "样例文本",
5
+ "长文本字段": "多行说明文本",
6
+ "数字字段": 12,
7
+ "金额字段": 3800.5,
8
+ "日期字段": "2026-07-15",
9
+ "日期时间字段": "2026-07-15 09:30:00",
10
+ "单选字段": "启用",
11
+ "多选字段": ["重点", "续约"],
12
+ "成员字段": "张三",
13
+ "部门字段": "销售部",
14
+ "关联字段": "540000000000000001",
15
+ "子表字段": [
16
+ {
17
+ "子表文本": "第一行",
18
+ "子表数量": 2,
19
+ "子表单选": "正常"
20
+ },
21
+ {
22
+ "子表文本": "第二行",
23
+ "子表数量": 1,
24
+ "子表单选": "异常"
25
+ }
26
+ ],
27
+ "附件字段": [
28
+ {
29
+ "value": "UPLOADED_FILE_VALUE",
30
+ "name": "巡检照片.jpg"
31
+ }
32
+ ]
33
+ }
34
+ }
35
+ ]
@@ -0,0 +1,18 @@
1
+ [
2
+ {
3
+ "name": "BAT_sub",
4
+ "type": "subtable",
5
+ "subfields": [
6
+ {"name": "BAT_sub_a", "type": "text"},
7
+ {"name": "BAT_sub_b", "type": "number"}
8
+ ]
9
+ },
10
+ {
11
+ "name": "BAT_rel",
12
+ "type": "relation",
13
+ "target_app_key": "ead8ims5i401",
14
+ "relation_mode": "single",
15
+ "display_field": {"name": "单行文字"},
16
+ "visible_fields": [{"name": "多行文字"}]
17
+ }
18
+ ]
@@ -0,0 +1,17 @@
1
+ [
2
+ {"name": "BAT_text", "type": "text", "description": "批测"},
3
+ {"name": "BAT_long_text", "type": "long_text"},
4
+ {"name": "BAT_number", "type": "number"},
5
+ {"name": "BAT_amount", "type": "amount"},
6
+ {"name": "BAT_date", "type": "date"},
7
+ {"name": "BAT_datetime", "type": "datetime"},
8
+ {"name": "BAT_member", "type": "member"},
9
+ {"name": "BAT_phone", "type": "phone"},
10
+ {"name": "BAT_email", "type": "email"},
11
+ {"name": "BAT_address", "type": "address"},
12
+ {"name": "BAT_attachment", "type": "attachment"},
13
+ {"name": "BAT_boolean", "type": "boolean"},
14
+ {"name": "BAT_single_select", "type": "single_select", "options": ["A", "B"], "required": false},
15
+ {"name": "BAT_multi_select", "type": "multi_select", "options": ["X", "Y"], "required": false},
16
+ {"name": "BAT_dept", "type": "department", "department_scope": {"mode": "all"}}
17
+ ]
@@ -0,0 +1,7 @@
1
+ [
2
+ {
3
+ "name": "示例搭建_CLI单行",
4
+ "type": "text",
5
+ "as_data_title": true
6
+ }
7
+ ]
@@ -0,0 +1,78 @@
1
+ [
2
+ {
3
+ "name": "QFCLI_AT_text",
4
+ "type": "text",
5
+ "as_data_title": true,
6
+ "description": "【本文件用法】字段能力覆盖探针,不是正式新建应用主模板。正式新建应用优先使用 form;完整系统优先使用 schema_multi_app_form_relation_layout.example.json。此文件用于测试 19 种搭建 type(另含远程查询/代码块所需辅助 text),关联字段 target_app_key 默认为本仓库实测模板应用 ead8ims5i401;其它租户请改成你方可读的目标应用 app_key。"
7
+ },
8
+ {"name": "QFCLI_AT_long_text", "type": "long_text"},
9
+ {"name": "QFCLI_AT_number", "type": "number"},
10
+ {"name": "QFCLI_AT_amount", "type": "amount"},
11
+ {"name": "QFCLI_AT_date", "type": "date"},
12
+ {"name": "QFCLI_AT_datetime", "type": "datetime"},
13
+ {"name": "QFCLI_AT_member", "type": "member"},
14
+ {"name": "QFCLI_AT_department", "type": "department", "department_scope": {"mode": "all"}},
15
+ {"name": "QFCLI_AT_single_select", "type": "single_select", "options": ["A", "B"]},
16
+ {"name": "QFCLI_AT_multi_select", "type": "multi_select", "options": ["X", "Y"]},
17
+ {"name": "QFCLI_AT_phone", "type": "phone"},
18
+ {"name": "QFCLI_AT_email", "type": "email"},
19
+ {"name": "QFCLI_AT_address", "type": "address"},
20
+ {"name": "QFCLI_AT_attachment", "type": "attachment", "as_data_cover": true},
21
+ {"name": "QFCLI_AT_boolean", "type": "boolean"},
22
+ {"name": "QFCLI_AT_ql_kw", "type": "text"},
23
+ {"name": "QFCLI_AT_ql_v1", "type": "text"},
24
+ {"name": "QFCLI_AT_ql_v2", "type": "text"},
25
+ {"name": "QFCLI_AT_cb_in", "type": "text"},
26
+ {"name": "QFCLI_AT_cb_out", "type": "text"},
27
+ {
28
+ "name": "QFCLI_AT_sub",
29
+ "type": "subtable",
30
+ "subfields": [
31
+ {"name": "QFCLI_AT_sub_c1", "type": "text"},
32
+ {"name": "QFCLI_AT_sub_c2", "type": "number"}
33
+ ]
34
+ },
35
+ {
36
+ "name": "QFCLI_AT_q_linker",
37
+ "type": "q_linker",
38
+ "q_linker_binding": {
39
+ "inputs": [{"field": {"name": "QFCLI_AT_ql_kw"}, "key": "k", "source": "query_param"}],
40
+ "request": {
41
+ "url": "https://httpbin.org/get",
42
+ "method": "GET",
43
+ "headers": [],
44
+ "query_params": [],
45
+ "body_type": 1,
46
+ "url_encoded_value": [],
47
+ "result_type": 1,
48
+ "auto_trigger": false,
49
+ "custom_button_text_enabled": true,
50
+ "custom_button_text": "查"
51
+ },
52
+ "outputs": [
53
+ {"alias": "a", "path": "$.headers.Host", "target_field": {"name": "QFCLI_AT_ql_v1"}},
54
+ {"alias": "b", "path": "$.url", "target_field": {"name": "QFCLI_AT_ql_v2"}}
55
+ ]
56
+ }
57
+ },
58
+ {
59
+ "name": "QFCLI_AT_code_block",
60
+ "type": "code_block",
61
+ "code_block_binding": {
62
+ "inputs": [{"field": {"name": "QFCLI_AT_cb_in"}, "var": "x"}],
63
+ "code": "qf_output = {}; qf_output.r = x ? '1' : '0';",
64
+ "auto_trigger": false,
65
+ "custom_button_text_enabled": true,
66
+ "custom_button_text": "运行",
67
+ "outputs": [{"alias": "r", "path": "$.r", "target_field": {"name": "QFCLI_AT_cb_out"}}]
68
+ }
69
+ },
70
+ {
71
+ "name": "QFCLI_AT_relation",
72
+ "type": "relation",
73
+ "target_app_key": "ead8ims5i401",
74
+ "relation_mode": "single",
75
+ "display_field": {"name": "单行文字"},
76
+ "visible_fields": [{"name": "多行文字"}]
77
+ }
78
+ ]