weaver-e10-builder 1.5.10 → 1.5.12
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/README.md +212 -189
- package/assets/image-style-observation.schema.json +1355 -0
- package/assets/layout-spec.schema.json +52 -0
- package/dist/commands/app.d.ts.map +1 -1
- package/dist/commands/app.js +159 -8
- package/dist/commands/app.js.map +1 -1
- package/dist/commands/designer-setters.d.ts.map +1 -1
- package/dist/commands/designer-setters.js +26 -4
- package/dist/commands/designer-setters.js.map +1 -1
- package/dist/commands/form-association-manage.d.ts.map +1 -1
- package/dist/commands/form-association-manage.js +3 -0
- package/dist/commands/form-association-manage.js.map +1 -1
- package/dist/commands/form-button-actions-cmd.d.ts +3 -0
- package/dist/commands/form-button-actions-cmd.d.ts.map +1 -0
- package/dist/commands/form-button-actions-cmd.js +309 -0
- package/dist/commands/form-button-actions-cmd.js.map +1 -0
- package/dist/commands/form-button-permission-cmd.d.ts +3 -0
- package/dist/commands/form-button-permission-cmd.d.ts.map +1 -0
- package/dist/commands/form-button-permission-cmd.js +132 -0
- package/dist/commands/form-button-permission-cmd.js.map +1 -0
- package/dist/commands/form-button-props-cmd.d.ts +3 -0
- package/dist/commands/form-button-props-cmd.d.ts.map +1 -0
- package/dist/commands/form-button-props-cmd.js +236 -0
- package/dist/commands/form-button-props-cmd.js.map +1 -0
- package/dist/commands/form-button.d.ts.map +1 -1
- package/dist/commands/form-button.js +82 -55
- package/dist/commands/form-button.js.map +1 -1
- package/dist/commands/form-field-linkage.d.ts +55 -0
- package/dist/commands/form-field-linkage.d.ts.map +1 -1
- package/dist/commands/form-field-linkage.js +1026 -12
- package/dist/commands/form-field-linkage.js.map +1 -1
- package/dist/commands/form-formula-linkage.d.ts +36 -0
- package/dist/commands/form-formula-linkage.d.ts.map +1 -1
- package/dist/commands/form-formula-linkage.js +256 -65
- package/dist/commands/form-formula-linkage.js.map +1 -1
- package/dist/commands/form-layout-restore.d.ts +3 -0
- package/dist/commands/form-layout-restore.d.ts.map +1 -0
- package/dist/commands/form-layout-restore.js +217 -0
- package/dist/commands/form-layout-restore.js.map +1 -0
- package/dist/commands/form-layout.d.ts.map +1 -1
- package/dist/commands/form-layout.js +11 -1
- package/dist/commands/form-layout.js.map +1 -1
- package/dist/commands/form-list-permission.d.ts.map +1 -1
- package/dist/commands/form-list-permission.js +29 -3
- package/dist/commands/form-list-permission.js.map +1 -1
- package/dist/commands/form-list-search-group.d.ts.map +1 -1
- package/dist/commands/form-list-search-group.js +66 -3
- package/dist/commands/form-list-search-group.js.map +1 -1
- package/dist/commands/form-list-utils.d.ts +14 -0
- package/dist/commands/form-list-utils.d.ts.map +1 -1
- package/dist/commands/form-list-utils.js +65 -4
- package/dist/commands/form-list-utils.js.map +1 -1
- package/dist/commands/form-message.d.ts.map +1 -1
- package/dist/commands/form-message.js +16 -4
- package/dist/commands/form-message.js.map +1 -1
- package/dist/commands/form-obj-meta.d.ts +12 -0
- package/dist/commands/form-obj-meta.d.ts.map +1 -0
- package/dist/commands/form-obj-meta.js +116 -0
- package/dist/commands/form-obj-meta.js.map +1 -0
- package/dist/commands/form-permission.d.ts +20 -0
- package/dist/commands/form-permission.d.ts.map +1 -1
- package/dist/commands/form-permission.js +69 -11
- package/dist/commands/form-permission.js.map +1 -1
- package/dist/commands/form-validate.d.ts.map +1 -1
- package/dist/commands/form-validate.js +167 -35
- package/dist/commands/form-validate.js.map +1 -1
- package/dist/commands/form.d.ts.map +1 -1
- package/dist/commands/form.js +26 -2
- package/dist/commands/form.js.map +1 -1
- package/dist/commands/menu-permission.d.ts.map +1 -1
- package/dist/commands/menu-permission.js +6 -7
- package/dist/commands/menu-permission.js.map +1 -1
- package/dist/commands/menu.d.ts.map +1 -1
- package/dist/commands/menu.js +68 -43
- package/dist/commands/menu.js.map +1 -1
- package/dist/commands/wf-form.d.ts.map +1 -1
- package/dist/commands/wf-form.js +269 -47
- package/dist/commands/wf-form.js.map +1 -1
- package/dist/commands/workflow-function-management.d.ts +5 -0
- package/dist/commands/workflow-function-management.d.ts.map +1 -0
- package/dist/commands/workflow-function-management.js +91 -0
- package/dist/commands/workflow-function-management.js.map +1 -0
- package/dist/commands/workflow-node-assign-flow.d.ts.map +1 -1
- package/dist/commands/workflow-node-assign-flow.js +1 -0
- package/dist/commands/workflow-node-assign-flow.js.map +1 -1
- package/dist/commands/workflow-node-sign.d.ts +0 -12
- package/dist/commands/workflow-node-sign.d.ts.map +1 -1
- package/dist/commands/workflow-node-sign.js +31 -102
- package/dist/commands/workflow-node-sign.js.map +1 -1
- package/dist/commands/workflow-opinion-settings.d.ts +5 -0
- package/dist/commands/workflow-opinion-settings.d.ts.map +1 -0
- package/dist/commands/workflow-opinion-settings.js +51 -0
- package/dist/commands/workflow-opinion-settings.js.map +1 -0
- package/dist/commands/workflow-subprocess.d.ts.map +1 -1
- package/dist/commands/workflow-subprocess.js +370 -20
- package/dist/commands/workflow-subprocess.js.map +1 -1
- package/dist/commands/workflow.d.ts.map +1 -1
- package/dist/commands/workflow.js +35 -61
- package/dist/commands/workflow.js.map +1 -1
- package/dist/core/client.d.ts +2 -1
- package/dist/core/client.d.ts.map +1 -1
- package/dist/core/client.js +4 -2
- package/dist/core/client.js.map +1 -1
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -1
- package/dist/services/actionflow/calendar_mapper.d.ts.map +1 -1
- package/dist/services/actionflow/calendar_mapper.js +64 -18
- package/dist/services/actionflow/calendar_mapper.js.map +1 -1
- package/dist/services/actionflow/component_registry.d.ts.map +1 -1
- package/dist/services/actionflow/component_registry.js +6 -0
- package/dist/services/actionflow/component_registry.js.map +1 -1
- package/dist/services/actionflow/components/document_actions.d.ts.map +1 -1
- package/dist/services/actionflow/components/document_actions.js +113 -4
- 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 +18 -1
- package/dist/services/actionflow/components/eb_get_data_by_id.js.map +1 -1
- package/dist/services/actionflow/components/index.d.ts.map +1 -1
- package/dist/services/actionflow/components/index.js +2 -1
- package/dist/services/actionflow/components/index.js.map +1 -1
- package/dist/services/actionflow/components/meeting_create.d.ts.map +1 -1
- package/dist/services/actionflow/components/meeting_create.js +5 -1
- package/dist/services/actionflow/components/meeting_create.js.map +1 -1
- package/dist/services/actionflow/components/schedule_create.d.ts.map +1 -1
- package/dist/services/actionflow/components/schedule_create.js +22 -6
- package/dist/services/actionflow/components/schedule_create.js.map +1 -1
- package/dist/services/actionflow/components/workflow_actions.d.ts +1 -0
- package/dist/services/actionflow/components/workflow_actions.d.ts.map +1 -1
- package/dist/services/actionflow/components/workflow_actions.js +44 -7
- package/dist/services/actionflow/components/workflow_actions.js.map +1 -1
- package/dist/services/actionflow/document_source.d.ts +5 -0
- package/dist/services/actionflow/document_source.d.ts.map +1 -1
- package/dist/services/actionflow/document_source.js +16 -0
- package/dist/services/actionflow/document_source.js.map +1 -1
- package/dist/services/actionflow/formula_service.d.ts +7 -0
- package/dist/services/actionflow/formula_service.d.ts.map +1 -1
- package/dist/services/actionflow/formula_service.js +44 -8
- package/dist/services/actionflow/formula_service.js.map +1 -1
- package/dist/services/actionflow/preflight_service.d.ts +5 -0
- package/dist/services/actionflow/preflight_service.d.ts.map +1 -1
- package/dist/services/actionflow/preflight_service.js +127 -2
- package/dist/services/actionflow/preflight_service.js.map +1 -1
- package/dist/services/actionflow/save_workflow_draft.d.ts +7 -0
- package/dist/services/actionflow/save_workflow_draft.d.ts.map +1 -1
- package/dist/services/actionflow/save_workflow_draft.js +1 -1
- package/dist/services/actionflow/save_workflow_draft.js.map +1 -1
- package/dist/services/actionflow/workflow_compiler.d.ts.map +1 -1
- package/dist/services/actionflow/workflow_compiler.js +26 -0
- package/dist/services/actionflow/workflow_compiler.js.map +1 -1
- package/dist/services/app-publish.d.ts +25 -0
- package/dist/services/app-publish.d.ts.map +1 -1
- package/dist/services/app-publish.js +38 -0
- package/dist/services/app-publish.js.map +1 -1
- package/dist/services/app-range.d.ts +66 -0
- package/dist/services/app-range.d.ts.map +1 -0
- package/dist/services/app-range.js +137 -0
- package/dist/services/app-range.js.map +1 -0
- package/dist/services/form-association.d.ts +13 -0
- package/dist/services/form-association.d.ts.map +1 -1
- package/dist/services/form-association.js +42 -0
- package/dist/services/form-association.js.map +1 -1
- package/dist/services/form-button-action.d.ts +82 -0
- package/dist/services/form-button-action.d.ts.map +1 -1
- package/dist/services/form-button-action.js +194 -2
- package/dist/services/form-button-action.js.map +1 -1
- package/dist/services/form-button-condition.d.ts +45 -0
- package/dist/services/form-button-condition.d.ts.map +1 -0
- package/dist/services/form-button-condition.js +106 -0
- package/dist/services/form-button-condition.js.map +1 -0
- package/dist/services/form-button-context.d.ts +41 -0
- package/dist/services/form-button-context.d.ts.map +1 -0
- package/dist/services/form-button-context.js +54 -0
- package/dist/services/form-button-context.js.map +1 -0
- package/dist/services/form-button-logicflow.d.ts +30 -0
- package/dist/services/form-button-logicflow.d.ts.map +1 -0
- package/dist/services/form-button-logicflow.js +59 -0
- package/dist/services/form-button-logicflow.js.map +1 -0
- package/dist/services/form-button-org.d.ts +30 -0
- package/dist/services/form-button-org.d.ts.map +1 -0
- package/dist/services/form-button-org.js +80 -0
- package/dist/services/form-button-org.js.map +1 -0
- package/dist/services/form-button-permission.d.ts +65 -0
- package/dist/services/form-button-permission.d.ts.map +1 -0
- package/dist/services/form-button-permission.js +113 -0
- package/dist/services/form-button-permission.js.map +1 -0
- package/dist/services/form-button-position.d.ts +4 -18
- package/dist/services/form-button-position.d.ts.map +1 -1
- package/dist/services/form-button-position.js +4 -36
- package/dist/services/form-button-position.js.map +1 -1
- package/dist/services/form-button-props.d.ts +55 -0
- package/dist/services/form-button-props.d.ts.map +1 -0
- package/dist/services/form-button-props.js +90 -0
- package/dist/services/form-button-props.js.map +1 -0
- package/dist/services/form-button-save.d.ts +49 -0
- package/dist/services/form-button-save.d.ts.map +1 -0
- package/dist/services/form-button-save.js +54 -0
- package/dist/services/form-button-save.js.map +1 -0
- package/dist/services/form-formula-linkage.d.ts +120 -20
- package/dist/services/form-formula-linkage.d.ts.map +1 -1
- package/dist/services/form-formula-linkage.js +253 -39
- package/dist/services/form-formula-linkage.js.map +1 -1
- package/dist/services/form-layout-io.d.ts +18 -0
- package/dist/services/form-layout-io.d.ts.map +1 -0
- package/dist/services/form-layout-io.js +89 -0
- package/dist/services/form-layout-io.js.map +1 -0
- package/dist/services/form-layout-source/artifact.d.ts +8 -0
- package/dist/services/form-layout-source/artifact.d.ts.map +1 -0
- package/dist/services/form-layout-source/artifact.js +52 -0
- package/dist/services/form-layout-source/artifact.js.map +1 -0
- package/dist/services/form-layout-source/binding.d.ts +10 -0
- package/dist/services/form-layout-source/binding.d.ts.map +1 -0
- package/dist/services/form-layout-source/binding.js +43 -0
- package/dist/services/form-layout-source/binding.js.map +1 -0
- package/dist/services/form-layout-source/compile.d.ts +7 -0
- package/dist/services/form-layout-source/compile.d.ts.map +1 -0
- package/dist/services/form-layout-source/compile.js +262 -0
- package/dist/services/form-layout-source/compile.js.map +1 -0
- package/dist/services/form-layout-source/creation.d.ts +18 -0
- package/dist/services/form-layout-source/creation.d.ts.map +1 -0
- package/dist/services/form-layout-source/creation.js +42 -0
- package/dist/services/form-layout-source/creation.js.map +1 -0
- package/dist/services/form-layout-source/excel-extractor.d.ts +7 -0
- package/dist/services/form-layout-source/excel-extractor.d.ts.map +1 -0
- package/dist/services/form-layout-source/excel-extractor.js +342 -0
- package/dist/services/form-layout-source/excel-extractor.js.map +1 -0
- package/dist/services/form-layout-source/image-border.d.ts +9 -0
- package/dist/services/form-layout-source/image-border.d.ts.map +1 -0
- package/dist/services/form-layout-source/image-border.js +128 -0
- package/dist/services/form-layout-source/image-border.js.map +1 -0
- package/dist/services/form-layout-source/image-observation.d.ts +14 -0
- package/dist/services/form-layout-source/image-observation.d.ts.map +1 -0
- package/dist/services/form-layout-source/image-observation.js +90 -0
- package/dist/services/form-layout-source/image-observation.js.map +1 -0
- package/dist/services/form-layout-source/image-review.d.ts +32 -0
- package/dist/services/form-layout-source/image-review.d.ts.map +1 -0
- package/dist/services/form-layout-source/image-review.js +266 -0
- package/dist/services/form-layout-source/image-review.js.map +1 -0
- package/dist/services/form-layout-source/image-style.d.ts +16 -0
- package/dist/services/form-layout-source/image-style.d.ts.map +1 -0
- package/dist/services/form-layout-source/image-style.js +539 -0
- package/dist/services/form-layout-source/image-style.js.map +1 -0
- package/dist/services/form-layout-source/json.d.ts +3 -0
- package/dist/services/form-layout-source/json.d.ts.map +1 -0
- package/dist/services/form-layout-source/json.js +33 -0
- package/dist/services/form-layout-source/json.js.map +1 -0
- package/dist/services/form-layout-source/presentation.d.ts +23 -0
- package/dist/services/form-layout-source/presentation.d.ts.map +1 -0
- package/dist/services/form-layout-source/presentation.js +174 -0
- package/dist/services/form-layout-source/presentation.js.map +1 -0
- package/dist/services/form-layout-source/preview.d.ts +4 -0
- package/dist/services/form-layout-source/preview.d.ts.map +1 -0
- package/dist/services/form-layout-source/preview.js +49 -0
- package/dist/services/form-layout-source/preview.js.map +1 -0
- package/dist/services/form-layout-source/schema.d.ts +20 -0
- package/dist/services/form-layout-source/schema.d.ts.map +1 -0
- package/dist/services/form-layout-source/schema.js +149 -0
- package/dist/services/form-layout-source/schema.js.map +1 -0
- package/dist/services/form-layout-source/source-grid.d.ts +8 -0
- package/dist/services/form-layout-source/source-grid.d.ts.map +1 -0
- package/dist/services/form-layout-source/source-grid.js +61 -0
- package/dist/services/form-layout-source/source-grid.js.map +1 -0
- package/dist/services/form-layout-source/types.d.ts +242 -0
- package/dist/services/form-layout-source/types.d.ts.map +1 -0
- package/dist/services/form-layout-source/types.js +2 -0
- package/dist/services/form-layout-source/types.js.map +1 -0
- package/dist/services/form-layout-source/verify.d.ts +14 -0
- package/dist/services/form-layout-source/verify.d.ts.map +1 -0
- package/dist/services/form-layout-source/verify.js +226 -0
- package/dist/services/form-layout-source/verify.js.map +1 -0
- package/dist/services/form-list-search-group.d.ts +17 -2
- package/dist/services/form-list-search-group.d.ts.map +1 -1
- package/dist/services/form-list-search-group.js +29 -12
- package/dist/services/form-list-search-group.js.map +1 -1
- package/dist/services/form-list-search.d.ts.map +1 -1
- package/dist/services/form-list-search.js +4 -0
- package/dist/services/form-list-search.js.map +1 -1
- package/dist/services/form-list-stats.d.ts.map +1 -1
- package/dist/services/form-list-stats.js +9 -2
- package/dist/services/form-list-stats.js.map +1 -1
- package/dist/services/form-message.d.ts +26 -7
- package/dist/services/form-message.d.ts.map +1 -1
- package/dist/services/form-message.js +52 -5
- package/dist/services/form-message.js.map +1 -1
- package/dist/services/form-obj-meta.d.ts +72 -0
- package/dist/services/form-obj-meta.d.ts.map +1 -0
- package/dist/services/form-obj-meta.js +103 -0
- package/dist/services/form-obj-meta.js.map +1 -0
- package/dist/services/form-permission-archive.d.ts +9 -1
- package/dist/services/form-permission-archive.d.ts.map +1 -1
- package/dist/services/form-permission-archive.js +38 -22
- package/dist/services/form-permission-archive.js.map +1 -1
- package/dist/services/form-view-populate.d.ts.map +1 -1
- package/dist/services/form-view-populate.js +7 -0
- package/dist/services/form-view-populate.js.map +1 -1
- package/dist/services/icon-path.d.ts +70 -0
- package/dist/services/icon-path.d.ts.map +1 -0
- package/dist/services/icon-path.js +80 -0
- package/dist/services/icon-path.js.map +1 -0
- package/dist/services/matrix-condition.d.ts +161 -0
- package/dist/services/matrix-condition.d.ts.map +1 -0
- package/dist/services/matrix-condition.js +403 -0
- package/dist/services/matrix-condition.js.map +1 -0
- package/dist/services/menu-catalog.d.ts +33 -0
- package/dist/services/menu-catalog.d.ts.map +1 -1
- package/dist/services/menu-catalog.js +56 -0
- package/dist/services/menu-catalog.js.map +1 -1
- package/dist/services/permission-entity.d.ts +55 -0
- package/dist/services/permission-entity.d.ts.map +1 -0
- package/dist/services/permission-entity.js +79 -0
- package/dist/services/permission-entity.js.map +1 -0
- package/dist/services/validate-help.d.ts +25 -0
- package/dist/services/validate-help.d.ts.map +1 -0
- package/dist/services/validate-help.js +29 -0
- package/dist/services/validate-help.js.map +1 -0
- package/dist/services/workflow-assign-flow.d.ts.map +1 -1
- package/dist/services/workflow-assign-flow.js.map +1 -1
- package/dist/services/workflow-function-management.d.ts +123 -0
- package/dist/services/workflow-function-management.d.ts.map +1 -0
- package/dist/services/workflow-function-management.js +425 -0
- package/dist/services/workflow-function-management.js.map +1 -0
- package/dist/services/workflow-matrix-rule.d.ts +34 -0
- package/dist/services/workflow-matrix-rule.d.ts.map +1 -0
- package/dist/services/workflow-matrix-rule.js +94 -0
- package/dist/services/workflow-matrix-rule.js.map +1 -0
- package/dist/services/workflow-opinion-settings.d.ts +67 -0
- package/dist/services/workflow-opinion-settings.d.ts.map +1 -0
- package/dist/services/workflow-opinion-settings.js +328 -0
- package/dist/services/workflow-opinion-settings.js.map +1 -0
- package/package.json +3 -1
- package/skill-docs/SKILL.md +15 -6
- package/skill-docs/_catalog.md +4 -0
- package/skill-docs/actionflows/references/components/calendar/MeetingCreate.md +2 -0
- package/skill-docs/actionflows/references/components/document/DocumentSave.md +17 -17
- package/skill-docs/actionflows/references/components/workflow/ApproveCompletelyDelete.md +29 -0
- package/skill-docs/actionflows/references/components/workflow/ApproveDelete.md +2 -2
- package/skill-docs/assets/schemas/image-style-observation.schema.json +1355 -0
- package/skill-docs/references/common/guide-plan-template.md +3 -0
- package/skill-docs/references/common/ref-cli-commands.md +77 -26
- package/skill-docs/references/ebuilder-designer/guide-designer-components.md +9 -0
- package/skill-docs/references/form/guide-create-form.md +2 -0
- package/skill-docs/references/form/guide-field-linkage.md +140 -55
- package/skill-docs/references/form/guide-form-archive-permission.md +55 -2
- package/skill-docs/references/form/guide-form-association.md +13 -0
- package/skill-docs/references/form/guide-form-button.md +87 -0
- package/skill-docs/references/form/guide-form-layout-planning.md +6 -0
- package/skill-docs/references/form/guide-form-layout-source.md +366 -0
- package/skill-docs/references/form/guide-form-message.md +19 -2
- package/skill-docs/references/form/guide-form-view.md +24 -4
- package/skill-docs/references/form/guide-formula-linkage.md +86 -12
- package/skill-docs/references/workflow/guide-function-management.md +154 -0
- package/skill-docs/references/workflow/guide-opinion-settings.md +126 -0
- package/skill-docs/references/workflow/guide-workflow.md +22 -6
|
@@ -2,9 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
## 概述
|
|
4
4
|
|
|
5
|
-
字段联动(FormDataLinkage
|
|
5
|
+
字段联动(FormDataLinkage):表单字段变化时,按条件查询**另一张表**,把查到的值**赋给本表字段**(主表或明细表)。
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
背后是一条 ESB FieldLinkage 动作流(触发 + EnquiryForm 查询 + Output 赋值),CLI 自动完成建 ESB app + saveDesign + 绑定联动记录。
|
|
8
|
+
|
|
9
|
+
支持两种配置方式:
|
|
10
|
+
|
|
11
|
+
- **快捷配置**(`--condition` / `--assign`):任意条件 + 多查询字段 + 多赋值,对应设计器里的「快捷配置」页
|
|
12
|
+
- **旧单跳/多跳**(`--source-form` / `--query-field` / `--hops`):固定按「数据ID = 触发字段值」过滤,多跳用于把 ID 换成名称
|
|
8
13
|
|
|
9
14
|
## 三种联动对比
|
|
10
15
|
|
|
@@ -14,22 +19,10 @@
|
|
|
14
19
|
| 接口 | viewlinkage | ffRelateField module:hrm | saveFormDataLinkage + saveDesign(ESB) |
|
|
15
20
|
| 作用 | 改字段显示属性(hide/show/required) | 换 Employee/Department→带 HRM 属性 | **查任意表→带出任意字段赋值** |
|
|
16
21
|
| 源 | 表单字段值条件 | Employee/Department(HRM 源) | 任意字段→任意表查询 |
|
|
17
|
-
| 复杂度 | 简单 | 简单(单源单属性) |
|
|
18
|
-
| 关系 | — | — | **字段联动是关联表带出的进阶版** |
|
|
22
|
+
| 复杂度 | 简单 | 简单(单源单属性) | 复杂(跨表,ESB 动作流) |
|
|
19
23
|
|
|
20
24
|
> 本文讲的是**跨表**带出。本表字段之间用公式互相计算赋值的是**函数联动**(eb 表 `form formula-linkage`、流程表单 `wf-form formula-linkage`),见 `guide-formula-linkage.md` —— 两者 `linkageType` 不同(`excel` vs `template`),`form field-linkage list/delete` 看不到也删不掉函数联动。
|
|
21
25
|
|
|
22
|
-
## 何时用多跳
|
|
23
|
-
|
|
24
|
-
**Text 字段赋值必须用名称(多跳),不能直接赋 ID。**
|
|
25
|
-
|
|
26
|
-
| 场景 | 跳数 | 示例 |
|
|
27
|
-
|------|------|------|
|
|
28
|
-
| 带出字段是 EBuilder(存 ID)→ 目标也是 EBuilder | 单跳 | 关联合同→查合同信息表→带出关联客户(ID→EBuilder 字段) |
|
|
29
|
-
| 带出字段存 ID → 目标是 Text(要名称) | **多跳** | 关联客户→查客户信息表→客户类型(ID)→查客户类型表→类型名称(Text)→填 Text 字段 |
|
|
30
|
-
|
|
31
|
-
**判断原则**:目标字段是 EBuilder/Select(存 ID)→ 单跳即可;目标字段是 Text(要展示名称)→ 必须多跳到名称表取名称。
|
|
32
|
-
|
|
33
26
|
## CLI 命令
|
|
34
27
|
|
|
35
28
|
```bash
|
|
@@ -42,82 +35,174 @@ e10-cli form field-linkage read <appId> <objId> <linkageId>
|
|
|
42
35
|
# 查源表可带出字段
|
|
43
36
|
e10-cli form field-linkage fields <appId> <formId>
|
|
44
37
|
|
|
38
|
+
# 可用触发动作
|
|
39
|
+
e10-cli form field-linkage events <appId> <objId> [--effect formLayout|workFlow|includeNode]
|
|
40
|
+
|
|
45
41
|
# 删除(批量)
|
|
46
42
|
e10-cli form field-linkage delete <appId> <objId> <linkageId...>
|
|
47
43
|
```
|
|
48
44
|
|
|
49
|
-
|
|
45
|
+
## 快捷配置(add)
|
|
50
46
|
|
|
51
|
-
**单跳**(一次直接带出):
|
|
52
47
|
```bash
|
|
53
48
|
e10-cli form field-linkage add <appId> <objId> \
|
|
54
|
-
--trigger
|
|
55
|
-
--source-form
|
|
56
|
-
--
|
|
57
|
-
--
|
|
49
|
+
--trigger <本表触发字段名> \
|
|
50
|
+
--source-form <查询目标表 objId> \
|
|
51
|
+
--condition "源表字段:算子:值" \
|
|
52
|
+
--query-fields "源表字段1,源表字段2" \
|
|
53
|
+
--assign "源表查询字段=本表目标字段"
|
|
58
54
|
```
|
|
59
55
|
|
|
60
|
-
|
|
56
|
+
### 查询条件(`--condition`)
|
|
57
|
+
|
|
58
|
+
可重复,多个为「且」。写法 `源表字段:算子:值`,算子与动作流筛选共用同一套:
|
|
59
|
+
|
|
60
|
+
| 类别 | 算子 |
|
|
61
|
+
|---|---|
|
|
62
|
+
| 比较 | 等于 / 不等于 / 大于 / 大于等于 / 小于 / 小于等于 |
|
|
63
|
+
| 文本 | 包含 / 不包含 / 开头包含 / 开头不包含 / 结尾包含 / 结尾不包含 |
|
|
64
|
+
| 集合 | 属于 / 不属于 / 被包含于 |
|
|
65
|
+
| 无值 | 为空 / 不为空(可不写冒号和值) |
|
|
66
|
+
| 区间 | 区间(写 `起始~结束`) |
|
|
67
|
+
|
|
68
|
+
值写 `@本表字段名` 表示引用本表字段;否则按字面值。示例:
|
|
69
|
+
|
|
61
70
|
```bash
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
71
|
+
--condition "测试字段C:eq:11111"
|
|
72
|
+
--condition "测试字段C:等于:@测试字段A"
|
|
73
|
+
--condition "日期字段A:区间:2026-10-20~2026-10-21"
|
|
74
|
+
--condition "备注:不为空"
|
|
66
75
|
```
|
|
67
76
|
|
|
68
|
-
|
|
77
|
+
### 查询字段(`--query-fields`)
|
|
78
|
+
|
|
79
|
+
逗号分隔的源表字段名。不给时会自动并入 `--assign` 的源字段和明细依据字段。
|
|
69
80
|
|
|
70
|
-
|
|
81
|
+
### 赋值(`--assign`)
|
|
71
82
|
|
|
72
|
-
|
|
83
|
+
可重复,`源表查询字段=本表目标字段`:
|
|
73
84
|
|
|
85
|
+
- 主表字段直接写字段名
|
|
86
|
+
- 明细表字段写 `明细表名.字段名`
|
|
87
|
+
|
|
88
|
+
```bash
|
|
89
|
+
--assign "测试字段C=测试字段A"
|
|
90
|
+
--assign "测试字段C=明细表1.明细字段1"
|
|
74
91
|
```
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
92
|
+
|
|
93
|
+
### 明细行依据(`--basis`)
|
|
94
|
+
|
|
95
|
+
`明细表名=源表字段名`。决定写入明细表时按哪一列匹配/生成行。不给则取该明细表第一个赋值的源字段;当被赋值的源字段正好是依据值时,设计器里显示为「依据值本身」。
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
--basis "明细表1=测试字段C"
|
|
79
99
|
```
|
|
80
100
|
|
|
101
|
+
### 明细配置(三个开关)
|
|
102
|
+
|
|
103
|
+
| 参数 | 取值 | 对应设计器 |
|
|
104
|
+
|---|---|---|
|
|
105
|
+
| `--detail-mode` | `add`(默认)/ `cover` / `update` | 主表联动明细表时:添加明细 / 覆盖明细 / 更新明细 |
|
|
106
|
+
| `--detail-add` | `override`(默认)/ `append` | 明细表添加行时:删除已联动出的明细再添加 / 累计添加明细 |
|
|
107
|
+
| `--fission` | `on`(默认)/ `off` | 联动出的值继续触发联动 |
|
|
108
|
+
|
|
109
|
+
### 触发动作(`--event`)
|
|
110
|
+
|
|
111
|
+
可重复,写法同函数联动:事件名或 type,可带 `类型:字段,字段`。默认 `changeField`(值改变时),字段取 `--trigger`。
|
|
112
|
+
|
|
81
113
|
```bash
|
|
82
|
-
|
|
83
|
-
|
|
114
|
+
--event changeField
|
|
115
|
+
--event onLoadForm
|
|
116
|
+
--event "changeField:测试字段A"
|
|
84
117
|
```
|
|
85
118
|
|
|
86
|
-
|
|
119
|
+
表单级 / 流程级事件(载入时、创建数据时…)不需要触发字段。流程事件(提交/批准、转发、保存…)需要配合 `--effect workFlow|includeNode`。
|
|
120
|
+
|
|
121
|
+
### 生效维度(`--effect`)
|
|
122
|
+
|
|
123
|
+
`form`(默认,当前表单)/ `formLayout`(表单布局,可配 `--layout-id`)/ `workFlow`(当前工作流)/ `includeNode`(选择节点,配 `--workflow-id` 与 `--node`)。
|
|
124
|
+
|
|
125
|
+
### 启用状态(`--state`)
|
|
126
|
+
|
|
127
|
+
`on`(默认)/ `off`。
|
|
128
|
+
|
|
129
|
+
### 赋值前提(`--precondition`)
|
|
87
130
|
|
|
131
|
+
满足前提时才执行赋值。可重复,多个为「且」:
|
|
132
|
+
|
|
133
|
+
```bash
|
|
134
|
+
--precondition "rlytest:不为空"
|
|
135
|
+
--precondition "测试字段C:包含:@rlytest" # @ 先查查询结果字段
|
|
136
|
+
--precondition "日期字段A:包含:@测试字段A" # 查不到再按本表字段
|
|
88
137
|
```
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
138
|
+
|
|
139
|
+
前提条件保存在 ESB 条件服务里,开关它等价于重新保存动作流设计。
|
|
140
|
+
|
|
141
|
+
## 修改(update)
|
|
142
|
+
|
|
143
|
+
```bash
|
|
144
|
+
e10-cli form field-linkage update <appId> <objId> <linkageId> \
|
|
145
|
+
[--name <名称>] [--state on|off] \
|
|
146
|
+
[--event <事件...>] [--trigger <字段...>] [--effect <维度>] \
|
|
147
|
+
[--detail-mode add|cover|update] [--detail-add override|append] [--fission on|off] \
|
|
148
|
+
[--precondition <条件...>] [--clear-precondition]
|
|
93
149
|
```
|
|
94
150
|
|
|
151
|
+
- 不给 `--event` / `--trigger` 时原样沿用现有触发动作
|
|
152
|
+
- 只改启停时走专用接口,不重发整套联动报文
|
|
153
|
+
- 赋值前提不属于联动记录,由 CLI 读回动作流设计后只改 Output 节点再保存
|
|
154
|
+
|
|
155
|
+
## 旧单跳 / 多跳(兼容保留)
|
|
156
|
+
|
|
157
|
+
**单跳**:按「数据ID = 触发字段值」过滤。
|
|
158
|
+
|
|
95
159
|
```bash
|
|
96
160
|
e10-cli form field-linkage add <appId> <objId> \
|
|
97
|
-
--trigger
|
|
98
|
-
--
|
|
161
|
+
--trigger <触发字段名> \
|
|
162
|
+
--source-form <目标表objId> \
|
|
163
|
+
--query-field <目标表带出字段名> \
|
|
164
|
+
--target <本表目标字段名>
|
|
99
165
|
```
|
|
100
166
|
|
|
101
|
-
|
|
167
|
+
**多跳**:`--hops "objId:字段名,objId:字段名"`,前一跳的带出值作为下一跳的过滤值。
|
|
102
168
|
|
|
103
|
-
|
|
169
|
+
**何时用多跳**:目标字段是 Text(要名称)而源表存的是 ID(EBuilder/Select)时,需要多跳一次到名称表取名称;目标字段本身存 ID 则单跳即可。
|
|
104
170
|
|
|
105
|
-
|
|
171
|
+
## 示例
|
|
106
172
|
|
|
107
|
-
|
|
173
|
+
**单跳(快捷配置)**:
|
|
108
174
|
|
|
109
175
|
```bash
|
|
110
|
-
|
|
111
|
-
|
|
176
|
+
e10-cli form field-linkage add <appId> <objId> \
|
|
177
|
+
--trigger 关联合同 \
|
|
178
|
+
--source-form <合同信息表objId> \
|
|
179
|
+
--condition "关联合同:等于:@关联合同" \
|
|
180
|
+
--query-fields "关联客户" \
|
|
181
|
+
--assign "关联客户=关联客户"
|
|
112
182
|
```
|
|
113
183
|
|
|
114
|
-
|
|
184
|
+
**主表联动明细表(多值写入 + 赋值前提)**:
|
|
185
|
+
|
|
186
|
+
```bash
|
|
187
|
+
e10-cli form field-linkage add <appId> <objId> \
|
|
188
|
+
--trigger 客户编号 \
|
|
189
|
+
--source-form <订单表objId> \
|
|
190
|
+
--condition "客户编号:等于:@客户编号" \
|
|
191
|
+
--query-fields "订单号,金额" \
|
|
192
|
+
--assign "订单号=订单明细.订单号" \
|
|
193
|
+
--assign "金额=订单明细.金额" \
|
|
194
|
+
--basis "订单明细=订单号" \
|
|
195
|
+
--detail-mode add --detail-add override --fission on \
|
|
196
|
+
--precondition "订单号:不为空"
|
|
197
|
+
```
|
|
115
198
|
|
|
116
199
|
## 注意事项
|
|
117
200
|
|
|
118
|
-
1.
|
|
119
|
-
2.
|
|
120
|
-
3.
|
|
121
|
-
4.
|
|
122
|
-
5.
|
|
123
|
-
6.
|
|
201
|
+
1. **三种明细模式**:添加/覆盖/更新由 `--detail-mode` 决定;「删除再添加 / 累计添加」是另一个开关 `--detail-add`。
|
|
202
|
+
2. **明细行依据**决定行匹配:写入明细表时,依据值相同的行按模式处理。
|
|
203
|
+
3. **赋值前提引用字段**:`@字段名` 先按查询结果字段解析(`source` = 查询节点),找不到再按本表字段(`source` = 触发事件)。
|
|
204
|
+
4. **算子与动作流筛选同源**:按字段类型族校验,不支持的算子会直接报错。
|
|
205
|
+
5. **FormData 引用格式**:本表字段 `FormData.<本表formId>.<字段id>`;查询结果 `FormData.<源表objId>[].field_<字段id>`。
|
|
206
|
+
6. **--source-form 的 objId 是表单 objId**(不是 formId),CLI 内部自动解析。
|
|
207
|
+
7. **联动名称**:不传 `--name` 时自动生成 `<本表名>.<触发字段>→<源表名>.<条件字段>`。
|
|
208
|
+
8. **SQL 联动类型尚未覆盖**:只支持「动作流联动」(`linkageType=template`);设计器里的「SQL可视化配置 / SQL联动」两条支路尚未实现。
|
|
@@ -29,6 +29,12 @@ e10-cli form permission archive add <objId> <appId> --workflow <workflowId> \
|
|
|
29
29
|
e10-cli form permission archive add <objId> <appId> --workflow <workflowId> \
|
|
30
30
|
--target matrix --eb-form <表单名或id> --matrix-value 创建者 --rights view
|
|
31
31
|
|
|
32
|
+
# 矩阵相关 + 条件(真矩阵才有条件列):所属门店 等于 本表单的「创建人部门」
|
|
33
|
+
e10-cli form permission archive add <objId> <appId> --workflow <workflowId> \
|
|
34
|
+
--target matrix --matrix 门店经理矩阵 \
|
|
35
|
+
--matrix-condition '{"column":"所属门店","func":"等于","field":"创建人部门"}' \
|
|
36
|
+
--rights view
|
|
37
|
+
|
|
32
38
|
# 删除(按 list 里的权限 ID)
|
|
33
39
|
e10-cli form permission archive remove <objId> <appId> --right-id <id[,id...]>
|
|
34
40
|
|
|
@@ -83,7 +89,53 @@ e10-cli form permission archive card <workflowId> <appId> --set 1
|
|
|
83
89
|
目前只有「创建者」可直接用名称指定;其余取值请用 `--matrix-value <id>:<名称>:<valueType>` 明写,
|
|
84
90
|
或用 `--matrix-value-raw '<JSON 数组>'` 整体透传(数组元素形状以设计器实际请求为准)。
|
|
85
91
|
|
|
86
|
-
|
|
92
|
+
### 矩阵相关的「条件」
|
|
93
|
+
|
|
94
|
+
矩阵相关比另外三类多一层**条件**:拿矩阵自己的**条件列**去比「固定值」或「本表单字段」,只有命中的行才生效。
|
|
95
|
+
落库是行报文里的 `matrixConditionData`(一棵条件树的 JSON 串)。
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
# 一条:所属门店 等于 固定值
|
|
99
|
+
--matrix-condition '{"column":"所属门店","func":"等于","value":"123测试的"}'
|
|
100
|
+
|
|
101
|
+
# 一条:所属门店 等于 本表单字段(field 走字段表按 id/名解析)
|
|
102
|
+
--matrix-condition '{"column":"所属门店","func":"eq","field":"创建人部门"}'
|
|
103
|
+
|
|
104
|
+
# 两条 + 任一
|
|
105
|
+
--matrix-condition '{"column":"所属门店","func":"等于","value":"上海门店"}' \
|
|
106
|
+
--matrix-condition '{"column":"所属门店","func":"不属于","value":"临时门店"}' \
|
|
107
|
+
--matrix-condition-relation or
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
| 参数 | 说明 |
|
|
111
|
+
|---|---|
|
|
112
|
+
| `--matrix-condition <json>` | 一条条件,**可重复**;也可 `@文件` 给一个数组。对象三件套:`column`(条件列的 id 或列名)+ `func` + 右值 |
|
|
113
|
+
| `--matrix-condition-relation` | 条件之间的关系:`and`=所有(默认)/ `or`=任一 |
|
|
114
|
+
| `--matrix-condition-comp-type` | 条件列的组件键。**列类型的组件键目前只实证了「部门」→`Department`**,其余类型(人员/分部/岗位/客户/项目/自定义浏览框)命令会报错要求显式给 |
|
|
115
|
+
| `--matrix-condition-raw <json>` | 整棵树透传(不做校验),形状以设计器请求为准 |
|
|
116
|
+
|
|
117
|
+
**右值三选一**:
|
|
118
|
+
|
|
119
|
+
- `"value": "字面值"` —— 固定值。**6 个算子都能配**。
|
|
120
|
+
- `"field": "字段名或 id"` —— 引用**本表单字段**,按字段表解析。
|
|
121
|
+
- `"fieldRef": {"id":"…","compType":"…","text":"…"}` —— 直接给字段描述符。**「创建人部门」这类运行时变量必须用这个** ——
|
|
122
|
+
它出现在设计器的字段选择器里,但 `ds/fields` 与 `getFormFieldPage` 都查不到;描述符从设计器报文里抄。
|
|
123
|
+
|
|
124
|
+
> ⚠ **引用本表字段(`field` / `fieldRef`)平台卡两条**,CLI 会当场拦下而不是发出去:
|
|
125
|
+
> ① **算子只能是「等于」**;② **字段类型必须与条件列一致** —— 部门列只能引用部门类型的字段,
|
|
126
|
+
> 文本字段在设计器里根本选不到。所以「所属门店(部门)等于 [创建人部门]」成立,
|
|
127
|
+
> 「所属门店(部门)等于 [名称(文本)]」和「所属门店 不等于 [创建人部门]」都会报错。
|
|
128
|
+
|
|
129
|
+
算子只有界面下拉那 6 个:**等于 / 不等于 / 属于 / 不属于 / 为空 / 不为空**(`eq` / `neq` / `aggregate` / `unaggregate` / `empty` / `nempty`)。
|
|
130
|
+
其中**只有「等于」是对着真机报文核实的**,其余 5 个是按同一族条件树的码表推的 —— 内容平台会原样存下、回读也一模一样,
|
|
131
|
+
**只会在设计器里露馅**(渲染成 `undefined`)。用它配完请在设计器里过一眼。
|
|
132
|
+
|
|
133
|
+
两条限制:
|
|
134
|
+
|
|
135
|
+
- **`--eb-form` 不能配条件** —— e-Builder 表单当矩阵用时没有条件列,给了会直接报错。
|
|
136
|
+
- **右值不能引用明细表字段**(只支持主表字段)。
|
|
137
|
+
|
|
138
|
+
台账那边的矩阵权限(`form list-permission --add-matrix`)**同一套参数与语义**。
|
|
87
139
|
|
|
88
140
|
## 权限码
|
|
89
141
|
|
|
@@ -115,7 +167,8 @@ e10-cli form permission archive card <workflowId> <appId> --set 1
|
|
|
115
167
|
- 回读的 `orgTypeName` 会和该类别的预期名称对照(如 `field_employee` 对应「人员字段」)。对不上直接报错 ——
|
|
116
168
|
那意味着授权对象写错了,不能静默放过。
|
|
117
169
|
- 字段相关这类计算型授权,平台会回 `isShowRebuild=2`,此时按提示执行
|
|
118
|
-
`e10-cli form permission rebuild <objId> <appId> <权限ID
|
|
170
|
+
`e10-cli form permission rebuild <objId> <appId> <权限ID>` —— 等价于在权限行上点【重构】。
|
|
171
|
+
这一步不做,权限列表是不完整的(界面上表现为该行还要重构)。
|
|
119
172
|
|
|
120
173
|
## 归档卡片
|
|
121
174
|
|
|
@@ -74,6 +74,19 @@ e10-cli form association update <objId> <appId> <associationId> --view <newViewI
|
|
|
74
74
|
|
|
75
75
|
仅启用或停用页签时,`update --enabled true|false` 使用 `updateIsOpenById` 独立接口并通过列表回读状态,不整包保存关联配置。
|
|
76
76
|
|
|
77
|
+
## 删除关联页签
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
e10-cli form association delete <objId> <appId> <associationId>
|
|
81
|
+
e10-cli form association delete <objId> <appId> "全部合同"
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
第 3 个参数可以是关联 ID,也可以是页签名称;按名称删时**名称必须唯一** —— 同名多条会报错并列出各自的 ID,不会替你挑一条删。找不到时同样报错并列出该表单现有的页签。
|
|
85
|
+
|
|
86
|
+
命令先按列表确认这条页签属于当前表单,删除后回读列表确认它确实消失,成功输出 `verified: true` 和剩余页签数 `remaining`。
|
|
87
|
+
|
|
88
|
+
删除不可撤销,也没有回收站。删掉后该页签连同它的权限条件一起不再出现在表单上,但**它引用的目标视图本身不受影响**。只想临时下线这个页签时用 `update --enabled false`,不要删。
|
|
89
|
+
|
|
77
90
|
## 修改和清空关联数据筛选
|
|
78
91
|
|
|
79
92
|
```bash
|
|
@@ -73,6 +73,93 @@ e10-cli form button action-set <objId> <appId> <buttonId> --open-view <视图> -
|
|
|
73
73
|
|
|
74
74
|
当前仅管理一个 `openpage` 动作,不用于复杂多动作编排。`--start-workflow` 暂只解析当前应用内流程;跨应用普通视图/布局使用 `--target-app`。
|
|
75
75
|
|
|
76
|
+
## 按钮基础属性
|
|
77
|
+
|
|
78
|
+
`form button set` 改按钮的展示配置,**已有的动作和权限原样保留**:
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
# 名称 / 提示内容 / 备注
|
|
82
|
+
e10-cli form button set <objId> <appId> <buttonId> --name "提交" --tips "请确认数据无误" --desc "业务备注"
|
|
83
|
+
|
|
84
|
+
# 图标(存的是 JSON 串,命令负责拼装)
|
|
85
|
+
e10-cli form button set <objId> <appId> <buttonId> --icon Icon-N-Offer-management --icon-display line
|
|
86
|
+
e10-cli form button set <objId> <appId> <buttonId> --icon Icon-N-Offer-management --icon-color "#ff0000" --icon-bg "#ffffff"
|
|
87
|
+
e10-cli form button set <objId> <appId> <buttonId> --icon-none # 清空图标
|
|
88
|
+
e10-cli form button set <objId> <appId> <buttonId> --only-icon # 只显示图标
|
|
89
|
+
|
|
90
|
+
# 点击日志
|
|
91
|
+
e10-cli form button set <objId> <appId> <buttonId> --no-log
|
|
92
|
+
e10-cli form button set <objId> <appId> <buttonId> --log --log-message "提交了单据"
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
`--icon-display` 取 `line`(描边)或 `fill`(填充);只改颜色/描边时按钮必须已有图标。
|
|
96
|
+
|
|
97
|
+
### 数据过滤
|
|
98
|
+
|
|
99
|
+
按钮的「数据过滤」决定**列表里哪些行**受该按钮影响,条件语法与 `form list-filter` **完全一致**:
|
|
100
|
+
|
|
101
|
+
```bash
|
|
102
|
+
e10-cli form button set <objId> <appId> <buttonId> --add '{"conditions":[{"fieldId":"<fieldId>","func":"contains","value":"abc"}]}'
|
|
103
|
+
e10-cli form button set <objId> <appId> <buttonId> --replace @cond.json
|
|
104
|
+
e10-cli form button set <objId> <appId> <buttonId> --remove <fieldId>
|
|
105
|
+
e10-cli form button set <objId> <appId> <buttonId> --relation or
|
|
106
|
+
e10-cli form button set <objId> <appId> <buttonId> --clear-filter
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
`--add` 叠加、`--replace` 整体覆盖、`--remove` 按字段摘、`--relation` 只调顶层关系,同名同义。启用数据过滤时开关 `conditionEnable` 自动置 1,`--clear-filter` 置回 0。另有 `--disable-condition` / `--clear-disable-condition` 管「禁用条件」。
|
|
110
|
+
|
|
111
|
+
`form button add` 建按钮时也能一次带上:`--tips --desc --icon --only-icon --no-log --log-message --data-filter`。
|
|
112
|
+
|
|
113
|
+
## 按钮权限
|
|
114
|
+
|
|
115
|
+
「按钮权限」管**哪些人能看见并点击这个按钮**,与表单共享权限是两套:
|
|
116
|
+
|
|
117
|
+
```bash
|
|
118
|
+
e10-cli form button permission <objId> <appId> <buttonId> # 列出
|
|
119
|
+
e10-cli form button permission <objId> <appId> <buttonId> --add-all
|
|
120
|
+
e10-cli form button permission <objId> <appId> <buttonId> --add-company 某分部 --contain-extra
|
|
121
|
+
e10-cli form button permission <objId> <appId> <buttonId> --add-department 某部门
|
|
122
|
+
e10-cli form button permission <objId> <appId> <buttonId> --add-people 某人
|
|
123
|
+
e10-cli form button permission <objId> <appId> <buttonId> --remove 1 # 序号(从 1 起)或权限 id
|
|
124
|
+
e10-cli form button permission <objId> <appId> <buttonId> --clear
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
授权对象支持**全体 / 分部 / 部门 / 人员**四类,主体可写名称或 ID。名称要求精确同名,撞名会报错并列出候选 id;取不到显示名也会直接报错,不会写入一条空名字。`--contain-extra` 表示含下级。其余授权对象类型本轮不支持,遇到会当场报错而不是写错。
|
|
128
|
+
|
|
129
|
+
未配置过权限的按钮,平台会保留一条「全体」。保存后按**集合**回读核对(平台会重排顺序,不比数组顺序)。
|
|
130
|
+
|
|
131
|
+
## 按钮动作(可挂多个)
|
|
132
|
+
|
|
133
|
+
一个按钮可以挂**多个**动作。`form button action` 负责增删查:
|
|
134
|
+
|
|
135
|
+
```bash
|
|
136
|
+
e10-cli form button action <objId> <appId> <buttonId> # 列出(序号 / 类型 / 摘要)
|
|
137
|
+
e10-cli form button action <objId> <appId> <buttonId> --remove 2 # 按序号或动作 id
|
|
138
|
+
e10-cli form button action <objId> <appId> <buttonId> --clear # 清空自定义动作
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
追加动作(同一次命令里按 打开页面 → 确认框 → JavaScript → 编辑字段值 → 触发逻辑流 的顺序追加,可一次给多种):
|
|
142
|
+
|
|
143
|
+
| 动作 | 用法 |
|
|
144
|
+
|---|---|
|
|
145
|
+
| 打开页面(URL) | `--add-url <url> [--page-type LINK\|CUSTOMPAGE] [--map "参数名:来源字段"]` |
|
|
146
|
+
| 打开页面(视图 / 布局 / 流程) | `--add-view <视图>`、`--add-layout <表单> [--layout-type 新建\|编辑\|显示]`、`--add-start-workflow <流程>`,共用 `--map "目标字段:来源字段"` |
|
|
147
|
+
| 确认框 | `--add-confirm --confirm-title <标题> --confirm-content <正文> [--confirm-true <文案>] [--confirm-false <文案>]` |
|
|
148
|
+
| JavaScript | `--add-js --code <源码\|@文件>` |
|
|
149
|
+
| 编辑字段值 | `--add-edit-field "字段:值"`(可多个;字段写 fieldId 或字段标题) |
|
|
150
|
+
| 触发逻辑流 | `--add-logic <逻辑流名或ID> [--logic-ecode-id <id>]` |
|
|
151
|
+
|
|
152
|
+
`--open-type` 管打开方式:`1` 弹窗 / `2` 当前页 / `3` 新窗口。
|
|
153
|
+
|
|
154
|
+
### 使用说明与边界
|
|
155
|
+
|
|
156
|
+
- **编辑字段值**本轮只支持「赋固定值」。同一次命令里多次 `--add-edit-field` 会并进同一条动作(按字段去重,同字段后写的覆盖先写的);按钮上已有该动作时会并入它,不会多出一条。
|
|
157
|
+
- **触发逻辑流**只做绑定,**不生成**逻辑流。按名称解析要求精确同名,撞名报错并列出候选。`ecodeId` 可用 `--logic-ecode-id` 指定;不给时沿用该按钮上已有的绑定值,都没有则留空。
|
|
158
|
+
- **JavaScript** 源码建议用 `--code @文件` 传入,避免命令行转义把脚本弄坏。
|
|
159
|
+
- `action-set` 是早期只支持单一打开页面动作的命令,**已标记废弃**,等价于 `action --clear --add-view …`;仍可用,但新需求请用 `form button action`。
|
|
160
|
+
|
|
161
|
+
保存沿用「读回为底 → 只覆盖本次要改的部分 → 写 → 回读」:改动作时权限原样保留,改属性或权限时动作原样保留,互不冲掉。改完若提示回读不一致,远端可能已被改动,先重新查询再处理。
|
|
162
|
+
|
|
76
163
|
## 保存与验证
|
|
77
164
|
|
|
78
165
|
命令先分页查找按钮,再读取动作、权限和可选视图。提交时保留按钮基础配置、完整动作和权限,及接口返回的日志/自定义提示设置,并按视图实际名称重建 `showPositionSpan`。
|
|
@@ -66,3 +66,9 @@ e10-cli form layout read <objId>
|
|
|
66
66
|
```
|
|
67
67
|
|
|
68
68
|
创建后需要调整局部位置或显示属性时,使用 `form layout` 下的移动、只读和必填设置命令;具体参数通过 `form layout --help` 查询。
|
|
69
|
+
|
|
70
|
+
## 图片与 Excel 源样式还原
|
|
71
|
+
|
|
72
|
+
明确要求保留原样表的合并、留白、尺寸、静态文字和样式时,使用[源样式还原指南](guide-form-layout-source.md)。字段解析、创建及业务配置仍由 CLI 完成;布局模块在全部字段补写和归组结束后,将源网格绑定到已存在的字段与组件,编译 pageLayouts,再单次保存并独立回读。
|
|
73
|
+
|
|
74
|
+
Plan 中的文字蓝图不直接作为保存请求。必须产出版本化 LayoutSpec,分别绑定 TITLE、VALUE 和普通明细。图片由 Agent 实际观察形成源网格,Excel 使用确定性提取。未知或冲突位置会阻断,不生成手写原生组件 JSON,也不自动转为默认两字段一行。
|