weaver-e10-builder 1.6.14 → 1.6.16
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/cli-register.js +216 -84
- package/dist/commands/actionflow.js +17 -2
- package/dist/commands/app.js +0 -1
- package/dist/commands/auth.js +0 -1
- package/dist/commands/check.js +0 -1
- package/dist/commands/compile.js +0 -1
- package/dist/commands/designer-common.js +0 -1
- package/dist/commands/designer-css.js +0 -1
- package/dist/commands/designer-event.js +0 -1
- package/dist/commands/designer-setters.js +0 -1
- package/dist/commands/designer-source.js +0 -1
- package/dist/commands/designer.js +0 -1
- package/dist/commands/docx.js +0 -1
- package/dist/commands/form-add-detail-table.js +0 -1
- package/dist/commands/form-add-physical-field.js +0 -1
- package/dist/commands/form-association-manage.js +0 -1
- package/dist/commands/form-association.js +0 -1
- package/dist/commands/form-attachment-setting.js +0 -1
- package/dist/commands/form-base-setting.js +191 -0
- package/dist/commands/form-browser-definition.js +0 -1
- package/dist/commands/form-browser-scope-rules.js +0 -1
- package/dist/commands/form-browser-scope-tree.js +0 -1
- package/dist/commands/form-button-actions-cmd.js +0 -1
- package/dist/commands/form-button-permission-cmd.js +0 -1
- package/dist/commands/form-button-props-cmd.js +0 -1
- package/dist/commands/form-button.js +0 -1
- package/dist/commands/form-code.js +0 -1
- package/dist/commands/form-data.js +0 -1
- package/dist/commands/form-ebuilder-columns.js +0 -1
- package/dist/commands/form-ebuilder-filter.js +0 -1
- package/dist/commands/form-ebuilder-scope.js +0 -1
- package/dist/commands/form-engine-linkage.js +0 -1
- package/dist/commands/form-field-lang.js +0 -1
- package/dist/commands/form-field-linkage.js +82 -17
- package/dist/commands/form-formula-linkage.js +0 -1
- package/dist/commands/form-formula.js +0 -1
- package/dist/commands/form-layout-code-reviewed.js +0 -1
- package/dist/commands/form-layout-describe.js +0 -1
- package/dist/commands/form-layout-detail-settings.js +0 -1
- package/dist/commands/form-layout-diff.js +0 -1
- package/dist/commands/form-layout-document.js +0 -1
- package/dist/commands/form-layout-edit.js +0 -1
- package/dist/commands/form-layout-init-reviewed.js +0 -1
- package/dist/commands/form-layout-init.js +0 -1
- package/dist/commands/form-layout-restore.js +0 -1
- package/dist/commands/form-layout-template-advanced.js +0 -1
- package/dist/commands/form-layout-template-catalog.js +0 -1
- package/dist/commands/form-layout-template-easy.js +0 -1
- package/dist/commands/form-layout.js +0 -1
- package/dist/commands/form-list-click.js +0 -1
- package/dist/commands/form-list-columns.js +0 -1
- package/dist/commands/form-list-config.js +0 -1
- package/dist/commands/form-list-custom.js +0 -1
- package/dist/commands/form-list-event.js +0 -1
- package/dist/commands/form-list-filter.js +0 -1
- package/dist/commands/form-list-group.js +0 -1
- package/dist/commands/form-list-hierarchy.js +0 -1
- package/dist/commands/form-list-permission.js +0 -1
- package/dist/commands/form-list-search-group.js +0 -1
- package/dist/commands/form-list-stats.js +0 -1
- package/dist/commands/form-list-unit.js +0 -1
- package/dist/commands/form-list-utils.js +0 -1
- package/dist/commands/form-list.js +0 -1
- package/dist/commands/form-message.js +0 -1
- package/dist/commands/form-native.js +0 -1
- package/dist/commands/form-nlist.js +0 -1
- package/dist/commands/form-obj-meta.js +194 -2
- package/dist/commands/form-option-template.js +0 -1
- package/dist/commands/form-permission.js +0 -1
- package/dist/commands/form-physical-table.js +0 -1
- package/dist/commands/form-relate.js +0 -1
- package/dist/commands/form-serial-mark.js +0 -1
- package/dist/commands/form-table-view.js +0 -1
- package/dist/commands/form-validate.js +0 -1
- package/dist/commands/form-view-permission.js +0 -1
- package/dist/commands/form-view.js +0 -1
- package/dist/commands/form-virtual.js +0 -1
- package/dist/commands/form.js +0 -1
- package/dist/commands/icon.js +0 -1
- package/dist/commands/interface.js +0 -1
- package/dist/commands/matrix-maintainer.js +0 -1
- package/dist/commands/matrix-person.js +94 -0
- package/dist/commands/matrix.js +3 -2
- package/dist/commands/menu-permission.js +0 -1
- package/dist/commands/menu.js +0 -1
- package/dist/commands/org.js +0 -1
- package/dist/commands/page-combination.js +0 -1
- package/dist/commands/page-permission.js +0 -1
- package/dist/commands/page.js +0 -1
- package/dist/commands/project.js +0 -1
- package/dist/commands/report-admin.js +0 -1
- package/dist/commands/report-cell.js +0 -1
- package/dist/commands/report-query.js +0 -1
- package/dist/commands/report-validate.js +0 -1
- package/dist/commands/report.js +0 -1
- package/dist/commands/role.js +3 -3
- package/dist/commands/skill.js +0 -1
- package/dist/commands/special.js +0 -1
- package/dist/commands/update.js +0 -1
- package/dist/commands/user.js +0 -1
- package/dist/commands/wf-form-layout-init-reviewed.js +0 -1
- package/dist/commands/wf-form.js +0 -1
- package/dist/commands/workflow-action.js +0 -1
- package/dist/commands/workflow-advanced.js +0 -1
- package/dist/commands/workflow-after-submit-comment.js +0 -1
- package/dist/commands/workflow-auth-resp.js +0 -1
- package/dist/commands/workflow-base-command.js +0 -1
- package/dist/commands/workflow-base-settings.js +0 -1
- package/dist/commands/workflow-basic-info.js +0 -1
- package/dist/commands/workflow-condition.js +0 -1
- package/dist/commands/workflow-create-auth-resp.js +0 -1
- package/dist/commands/workflow-create-workflow.js +0 -1
- package/dist/commands/workflow-export.js +0 -1
- package/dist/commands/workflow-function-management.js +0 -1
- package/dist/commands/workflow-function-settings.js +0 -1
- package/dist/commands/workflow-layout-components.js +0 -1
- package/dist/commands/workflow-message.js +0 -1
- package/dist/commands/workflow-node-assign-flow.js +0 -1
- package/dist/commands/workflow-node-batch.js +0 -1
- package/dist/commands/workflow-node-empty-handle.js +0 -1
- package/dist/commands/workflow-node-opinion.js +0 -1
- package/dist/commands/workflow-node-overtime.js +0 -1
- package/dist/commands/workflow-node-reject.js +0 -1
- package/dist/commands/workflow-node-robot.js +0 -1
- package/dist/commands/workflow-node-sign.js +0 -1
- package/dist/commands/workflow-node-validate.js +0 -1
- package/dist/commands/workflow-node.js +0 -1
- package/dist/commands/workflow-numbering.js +0 -1
- package/dist/commands/workflow-odoc.js +0 -1
- package/dist/commands/workflow-operator-batch.js +0 -1
- package/dist/commands/workflow-operator-sign.js +0 -1
- package/dist/commands/workflow-opinion-settings.js +0 -1
- package/dist/commands/workflow-plan-range.js +0 -1
- package/dist/commands/workflow-segment.js +0 -1
- package/dist/commands/workflow-setting.js +0 -1
- package/dist/commands/workflow-subprocess.js +0 -1
- package/dist/commands/workflow-title.js +0 -1
- package/dist/commands/workflow.js +0 -1
- package/dist/core/auth.js +0 -1
- package/dist/core/client.js +0 -1
- package/dist/core/crypto.js +0 -1
- package/dist/core/edition.js +0 -1
- package/dist/core/lzw.js +0 -1
- package/dist/index.js +14 -5
- package/dist/postinstall.js +0 -1
- package/dist/services/action-detail.js +11 -6
- package/dist/services/actionflow/browser_source.js +0 -1
- package/dist/services/actionflow/build_workflow_draft.js +28 -25
- package/dist/services/actionflow/calendar_mapper.js +0 -1
- package/dist/services/actionflow/classified_protection_source.js +0 -1
- package/dist/services/actionflow/command_output.js +0 -1
- package/dist/services/actionflow/component_registry.js +0 -1
- package/dist/services/actionflow/components/action_eb_add.js +0 -1
- package/dist/services/actionflow/components/action_eb_add_compiler.js +0 -1
- package/dist/services/actionflow/components/action_eb_delete.js +0 -1
- package/dist/services/actionflow/components/action_eb_delete_compiler.js +0 -1
- package/dist/services/actionflow/components/action_eb_recover.js +0 -1
- package/dist/services/actionflow/components/action_eb_recover_compiler.js +0 -1
- package/dist/services/actionflow/components/action_eb_save_version.js +0 -1
- package/dist/services/actionflow/components/action_eb_save_version_compiler.js +0 -1
- package/dist/services/actionflow/components/action_eb_update.js +0 -1
- package/dist/services/actionflow/components/action_eb_update_compiler.js +5 -19
- package/dist/services/actionflow/components/approve_create.js +0 -1
- package/dist/services/actionflow/components/approve_trigger.js +0 -1
- package/dist/services/actionflow/components/approve_trigger_compiler.js +0 -1
- package/dist/services/actionflow/components/assign_var.js +0 -1
- package/dist/services/actionflow/components/condition.js +0 -1
- package/dist/services/actionflow/components/custom_set_form.js +1 -10
- package/dist/services/actionflow/components/custom_trigger.js +0 -1
- package/dist/services/actionflow/components/date_trigger.js +0 -1
- package/dist/services/actionflow/components/dml_execute.js +3 -5
- package/dist/services/actionflow/components/document_actions.js +0 -4
- package/dist/services/actionflow/components/eb_get_data_by_id.js +0 -1
- package/dist/services/actionflow/components/enquiry_form.js +0 -1
- package/dist/services/actionflow/components/event_button.js +0 -1
- package/dist/services/actionflow/components/event_form_data.js +0 -1
- package/dist/services/actionflow/components/form_data_builder.js +135 -3
- package/dist/services/actionflow/components/hrm_actions.js +1 -4
- package/dist/services/actionflow/components/http.js +0 -1
- package/dist/services/actionflow/components/index.js +1 -2
- package/dist/services/actionflow/components/inner_mq_listener.js +1 -2
- package/dist/services/actionflow/components/inner_mq_send.js +6 -3
- package/dist/services/actionflow/components/logic_flow_set.js +0 -1
- package/dist/services/actionflow/components/meeting_create.js +0 -1
- package/dist/services/actionflow/components/multiple_execution.js +55 -277
- package/dist/services/actionflow/components/output.js +4 -6
- package/dist/services/actionflow/components/schedule_create.js +0 -1
- package/dist/services/actionflow/components/send_message.js +8 -12
- package/dist/services/actionflow/components/serverless_action.js +3 -3
- package/dist/services/actionflow/components/simple_scheduler.js +0 -1
- package/dist/services/actionflow/components/time_batch_trigger.js +0 -1
- package/dist/services/actionflow/components/webhook_trigger.js +0 -1
- package/dist/services/actionflow/components/workflow_actions.js +0 -4
- package/dist/services/actionflow/context_data_builder.js +0 -1
- package/dist/services/actionflow/context_discovery.js +0 -1
- package/dist/services/actionflow/context_preflight.js +25 -12
- package/dist/services/actionflow/context_provider.js +0 -1
- package/dist/services/actionflow/context_source.js +0 -1
- package/dist/services/actionflow/custom_trigger_context.js +0 -1
- package/dist/services/actionflow/datasource_source.js +0 -1
- package/dist/services/actionflow/design_client.js +0 -1
- package/dist/services/actionflow/document_source.js +0 -1
- package/dist/services/actionflow/dynamic_resources.js +0 -1
- package/dist/services/actionflow/ebuilder_source.js +0 -1
- package/dist/services/actionflow/enrich_approve_trigger.js +0 -1
- package/dist/services/actionflow/execution_setting.js +0 -1
- package/dist/services/actionflow/filter_rules.js +7 -7
- package/dist/services/actionflow/form_source.js +0 -1
- package/dist/services/actionflow/formula_service.js +60 -275
- package/dist/services/actionflow/functions_catalog.js +0 -1
- package/dist/services/actionflow/functions_source.js +0 -1
- package/dist/services/actionflow/generation_service.js +10 -13
- package/dist/services/actionflow/hrm_source.js +0 -1
- package/dist/services/actionflow/http_input_params.js +0 -1
- package/dist/services/actionflow/http_source.js +0 -1
- package/dist/services/actionflow/id_generator.js +5 -12
- package/dist/services/actionflow/logicflow_source.js +0 -1
- package/dist/services/actionflow/loop_context.js +133 -0
- package/dist/services/actionflow/machine_key.js +0 -1
- package/dist/services/actionflow/option_field_types.js +0 -1
- package/dist/services/actionflow/param_group_dto.js +128 -17
- package/dist/services/actionflow/param_mapping_basis.js +2 -3
- package/dist/services/actionflow/param_type.js +0 -1
- package/dist/services/actionflow/person_source.js +0 -1
- package/dist/services/actionflow/plan_constraints.js +0 -1
- package/dist/services/actionflow/preflight_service.js +88 -285
- package/dist/services/actionflow/query_field_defaults.js +0 -1
- package/dist/services/actionflow/readback_verifier.js +135 -2
- package/dist/services/actionflow/request.js +0 -1
- package/dist/services/actionflow/runtime_metadata.js +0 -1
- package/dist/services/actionflow/save_workflow_draft.js +14 -17
- package/dist/services/actionflow/step_branches.js +0 -1
- package/dist/services/actionflow/system_params.js +0 -1
- package/dist/services/actionflow/trigger_common.js +0 -1
- package/dist/services/actionflow/update_service.js +126 -4
- package/dist/services/actionflow/webhook_source.js +0 -1
- package/dist/services/actionflow/workflow_compiler.js +199 -123
- package/dist/services/actionflow/workflow_request_level.js +0 -1
- package/dist/services/actionflow/workflow_source.js +0 -1
- package/dist/services/app-publish.js +0 -1
- package/dist/services/app-range.js +0 -1
- package/dist/services/auth-resp-condition.js +0 -1
- package/dist/services/browser.js +0 -1
- package/dist/services/condition-rules.js +0 -1
- package/dist/services/designer-css.js +0 -1
- package/dist/services/designer-dataset.js +0 -1
- package/dist/services/designer-event.js +0 -1
- package/dist/services/designer-source.js +0 -1
- package/dist/services/dom-structure.js +0 -1
- package/dist/services/esb-interface/document-parser.js +0 -1
- package/dist/services/esb-interface/importer.js +0 -1
- package/dist/services/esb-interface/postman-collection.js +0 -1
- package/dist/services/esb-interface/types.js +0 -1
- package/dist/services/field-identity.js +0 -1
- package/dist/services/form-association.js +0 -1
- package/dist/services/form-attachment-settings.js +0 -1
- package/dist/services/form-attachment-upload.js +0 -1
- package/dist/services/form-base-setting.js +271 -0
- package/dist/services/form-button-action.js +0 -1
- package/dist/services/form-button-condition.js +0 -1
- package/dist/services/form-button-context.js +0 -1
- package/dist/services/form-button-logicflow.js +0 -1
- package/dist/services/form-button-org.js +0 -1
- package/dist/services/form-button-permission.js +0 -1
- package/dist/services/form-button-position.js +0 -1
- package/dist/services/form-button-props.js +0 -1
- package/dist/services/form-button-save.js +0 -1
- package/dist/services/form-code.js +0 -1
- package/dist/services/form-create.js +0 -1
- package/dist/services/form-data-openapi.js +0 -1
- package/dist/services/form-ebuilder-columns.js +0 -1
- package/dist/services/form-ebuilder-filter.js +0 -1
- package/dist/services/form-edit-base.js +0 -1
- package/dist/services/form-field-build.js +0 -1
- package/dist/services/form-field-drop.js +0 -1
- package/dist/services/form-field-patch.js +0 -1
- package/dist/services/form-field-template.js +0 -1
- package/dist/services/form-field-validate.js +0 -1
- package/dist/services/form-formula-linkage.js +0 -1
- package/dist/services/form-i18n-label.js +0 -1
- package/dist/services/form-id.js +0 -1
- package/dist/services/form-layout-code-reviewed.js +0 -1
- package/dist/services/form-layout-copy-default.js +0 -1
- package/dist/services/form-layout-describe.js +0 -1
- package/dist/services/form-layout-detail-advanced.js +0 -1
- package/dist/services/form-layout-detail-insert.js +0 -1
- package/dist/services/form-layout-detail-settings.js +0 -1
- package/dist/services/form-layout-diff.js +0 -1
- package/dist/services/form-layout-document-apply.js +0 -1
- package/dist/services/form-layout-document.js +0 -1
- package/dist/services/form-layout-edit.js +0 -1
- package/dist/services/form-layout-grid.js +0 -1
- package/dist/services/form-layout-init-plan.js +0 -1
- package/dist/services/form-layout-insert.js +0 -1
- package/dist/services/form-layout-io.js +0 -1
- package/dist/services/form-layout-source/artifact.js +0 -1
- package/dist/services/form-layout-source/binding.js +0 -1
- package/dist/services/form-layout-source/compile.js +0 -1
- package/dist/services/form-layout-source/creation.js +0 -1
- package/dist/services/form-layout-source/excel-extractor.js +0 -1
- package/dist/services/form-layout-source/image-border.js +0 -1
- package/dist/services/form-layout-source/image-observation.js +0 -1
- package/dist/services/form-layout-source/image-review.js +0 -1
- package/dist/services/form-layout-source/image-style.js +0 -1
- package/dist/services/form-layout-source/json.js +0 -1
- package/dist/services/form-layout-source/presentation.js +0 -1
- package/dist/services/form-layout-source/preview.js +0 -1
- package/dist/services/form-layout-source/review.js +0 -1
- package/dist/services/form-layout-source/schema.js +0 -1
- package/dist/services/form-layout-source/source-grid.js +0 -1
- package/dist/services/form-layout-source/types.js +0 -1
- package/dist/services/form-layout-source/verify.js +0 -1
- package/dist/services/form-layout-template-advanced.js +0 -1
- package/dist/services/form-layout-template-catalog.js +0 -1
- package/dist/services/form-layout-template-easy.js +0 -1
- package/dist/services/form-layout-template-flow.js +0 -1
- package/dist/services/form-layout-template-verification.js +0 -1
- package/dist/services/form-linkage-condition.js +0 -1
- package/dist/services/form-list-columns.js +0 -1
- package/dist/services/form-list-config.js +0 -1
- package/dist/services/form-list-fields.js +0 -1
- package/dist/services/form-list-filter-http.js +0 -1
- package/dist/services/form-list-filter-sql.js +0 -1
- package/dist/services/form-list-search-custom.js +0 -1
- package/dist/services/form-list-search-group.js +0 -1
- package/dist/services/form-list-search.js +0 -1
- package/dist/services/form-list-stats.js +0 -1
- package/dist/services/form-list-table-fields.js +0 -1
- package/dist/services/form-log-setting.js +107 -0
- package/dist/services/form-message.js +0 -1
- package/dist/services/form-nlist-field-attrs.js +0 -1
- package/dist/services/form-nlist.js +0 -1
- package/dist/services/form-obj-lang.js +126 -0
- package/dist/services/form-obj-meta.js +81 -13
- package/dist/services/form-permission-archive.js +0 -1
- package/dist/services/form-permission-edit.js +0 -1
- package/dist/services/form-physical-table.js +0 -1
- package/dist/services/form-style-template.js +0 -1
- package/dist/services/form-sub-detail.js +0 -1
- package/dist/services/form-table-view.js +0 -1
- package/dist/services/form-view-linkage-functions.js +0 -1
- package/dist/services/form-view-permission.js +0 -1
- package/dist/services/form-view-populate.js +0 -1
- package/dist/services/form-view.js +0 -1
- package/dist/services/form-virtual.js +0 -1
- package/dist/services/formula-detail.js +0 -1
- package/dist/services/icon-path.js +0 -1
- package/dist/services/matrix-condition.js +0 -1
- package/dist/services/matrix-fields.js +0 -1
- package/dist/services/matrix-maintainer.js +0 -1
- package/dist/services/matrix-person.js +56 -0
- package/dist/services/matrix-rows.js +0 -1
- package/dist/services/menu-catalog.js +0 -1
- package/dist/services/org-browser.js +90 -13
- package/dist/services/org-department.js +0 -1
- package/dist/services/org-employee.js +0 -1
- package/dist/services/page-combination.js +18 -7
- package/dist/services/page-permission.js +20 -9
- package/dist/services/permission-entity.js +0 -1
- package/dist/services/quick-date-range.js +0 -1
- package/dist/services/report/analyze.js +0 -1
- package/dist/services/report/blueprint.js +0 -1
- package/dist/services/report/build.js +0 -1
- package/dist/services/report/card.js +0 -1
- package/dist/services/report/cell-edit.js +0 -1
- package/dist/services/report/cell-event.js +0 -1
- package/dist/services/report/cell-filter.js +0 -1
- package/dist/services/report/constants.js +0 -1
- package/dist/services/report/copy-health.js +0 -1
- package/dist/services/report/dataset-heal.js +0 -1
- package/dist/services/report/dataset-ids.js +0 -1
- package/dist/services/report/dataset.js +0 -1
- package/dist/services/report/drill.js +0 -1
- package/dist/services/report/empty-dataset.js +0 -1
- package/dist/services/report/field-binding.js +0 -1
- package/dist/services/report/fields.js +0 -1
- package/dist/services/report/forms.js +0 -1
- package/dist/services/report/formula-parent.js +0 -1
- package/dist/services/report/guard.js +0 -1
- package/dist/services/report/http.js +0 -1
- package/dist/services/report/lifecycle.js +0 -1
- package/dist/services/report/locate.js +0 -1
- package/dist/services/report/permission.js +0 -1
- package/dist/services/report/query-checks.js +0 -1
- package/dist/services/report/query.js +0 -1
- package/dist/services/report/render.js +0 -1
- package/dist/services/report/reports.js +0 -1
- package/dist/services/report/safe-save.js +0 -1
- package/dist/services/report/scene.js +0 -1
- package/dist/services/report/sources.js +0 -1
- package/dist/services/report/types.js +0 -1
- package/dist/services/report/validate.js +0 -1
- package/dist/services/report/verify.js +0 -1
- package/dist/services/report/workbook.js +0 -1
- package/dist/services/rich-text.js +0 -1
- package/dist/services/rich-types.js +0 -1
- package/dist/services/role-function-permission.js +23 -9
- package/dist/services/role-member.js +0 -1
- package/dist/services/skill-provision.js +0 -1
- package/dist/services/special-layout.js +0 -1
- package/dist/services/special-page.js +0 -1
- package/dist/services/special-route.js +0 -1
- package/dist/services/update-check.js +0 -1
- package/dist/services/validate-help.js +0 -1
- package/dist/services/workflow-add-step.js +0 -1
- package/dist/services/workflow-after-submit-comment.js +0 -1
- package/dist/services/workflow-assign-flow.js +0 -1
- package/dist/services/workflow-base-settings.js +19 -6
- package/dist/services/workflow-basic-info.js +0 -1
- package/dist/services/workflow-condition-core.js +0 -1
- package/dist/services/workflow-context.js +0 -1
- package/dist/services/workflow-drawback.js +0 -1
- package/dist/services/workflow-export.js +0 -1
- package/dist/services/workflow-field-permission-route.js +0 -1
- package/dist/services/workflow-field-permission.js +0 -1
- package/dist/services/workflow-function-management.js +0 -1
- package/dist/services/workflow-function-settings.js +0 -1
- package/dist/services/workflow-info.js +0 -1
- package/dist/services/workflow-initiator.js +0 -1
- package/dist/services/workflow-layout-components.js +0 -1
- package/dist/services/workflow-layout-draft.js +0 -1
- package/dist/services/workflow-layout-init-reviewed.js +0 -1
- package/dist/services/workflow-layout-structure.js +0 -1
- package/dist/services/workflow-layout.js +0 -1
- package/dist/services/workflow-links.js +0 -1
- package/dist/services/workflow-matrix-rule.js +0 -1
- package/dist/services/workflow-node-batch-spec.js +0 -1
- package/dist/services/workflow-node-batch.js +0 -1
- package/dist/services/workflow-node-layout.js +0 -1
- package/dist/services/workflow-node-menu.js +0 -1
- package/dist/services/workflow-node-opinion-description.js +0 -1
- package/dist/services/workflow-node-opinion-layout.js +0 -1
- package/dist/services/workflow-node-opinion-range.js +0 -1
- package/dist/services/workflow-node-opinion.js +0 -1
- package/dist/services/workflow-odoc-setting.js +0 -1
- package/dist/services/workflow-operator-batch-condition.js +0 -1
- package/dist/services/workflow-operator.js +0 -1
- package/dist/services/workflow-opinion-settings.js +0 -1
- package/dist/services/workflow-overtime.js +0 -1
- package/dist/services/workflow-plan-range.js +0 -1
- package/dist/services/workflow-sign-file-settings.js +0 -1
- package/dist/services/workflow-submit-confirm.js +0 -1
- package/dist/services/workflow-tab-config.js +0 -1
- package/dist/services/workflow-tabs-editor.js +0 -1
- package/dist/services/workflow-watermark-template.js +0 -1
- package/dist/types.js +0 -1
- package/dist/utils/column-name.js +0 -1
- package/ecodecmd/package.json +26 -26
- package/ecodecmd/src/build.js +732 -732
- package/ecodecmd/src/loaddep.js +163 -163
- package/package.json +50 -50
- package/skill-docs/SKILL.md +4 -4
- package/skill-docs/actionflows/SKILL.md +15 -11
- package/skill-docs/actionflows/references/components/database/DMLExecute.md +4 -0
- package/skill-docs/actionflows/references/components/ebuilder/ActionEbAdd.md +1 -1
- package/skill-docs/actionflows/references/components/ebuilder/ActionEbUpdate.md +2 -0
- package/skill-docs/actionflows/references/components/ebuilder/EventFormData.md +19 -19
- package/skill-docs/actionflows/references/components/logic/MultipleExecution.md +9 -30
- package/skill-docs/actionflows/references/components/message/InnerMQSend.md +7 -3
- package/skill-docs/actionflows/references/components/message/SendMessage.md +32 -32
- package/skill-docs/actionflows/references/components/personnel/HrmEmployeeUpdate.md +1 -0
- package/skill-docs/actionflows/references/components/personnel/PersonnelOnboarding.md +1 -0
- package/skill-docs/actionflows/references/components/serverless/ServerlessAction.md +4 -0
- package/skill-docs/actionflows/references/components/trigger/CustomTrigger.md +6 -6
- package/skill-docs/actionflows/references/components/trigger/InnerMQListener.md +46 -41
- package/skill-docs/actionflows/references/components/trigger/WebHookTrigger.md +4 -0
- package/skill-docs/actionflows/references/components/workflow/ApproveTrigger.md +99 -99
- package/skill-docs/actionflows/references/dynamic_capability_matrix.md +3 -4
- package/skill-docs/actionflows/references/function_rules.md +5 -1
- package/skill-docs/actionflows/references/trigger_runtime_notes.md +1 -1
- package/skill-docs/references/coding/guide-page-code.md +381 -381
- package/skill-docs/references/common/capability-boundaries.md +36 -36
- package/skill-docs/references/common/guide-install.md +44 -44
- package/skill-docs/references/common/ref-cli-commands.md +14 -3
- package/skill-docs/references/components/ref-component-common.md +98 -98
- package/skill-docs/references/ebuilder-designer/guide-designer-components.md +130 -130
- package/skill-docs/references/ebuilder-designer/guide-page-combination.md +2 -0
- package/skill-docs/references/ebuilder-designer/guide-page-permission.md +2 -0
- package/skill-docs/references/form/guide-create-form.md +13 -0
- package/skill-docs/references/form/guide-form-archive-permission.md +201 -201
- package/skill-docs/references/form/guide-form-base-setting.md +78 -0
- package/skill-docs/references/form/guide-form-message.md +74 -74
- package/skill-docs/references/form/guide-form-permission.md +185 -185
- package/skill-docs/references/form/guide-form-physical-table.md +148 -148
- package/skill-docs/references/form/guide-formula-linkage.md +324 -324
- package/skill-docs/references/form/guide-list-stats.md +136 -136
- package/skill-docs/references/form/guide-virtual-form.md +156 -156
- package/skill-docs/references/form/ref-list-filter-date-params.md +83 -83
- package/skill-docs/references/hrm/guide-matrix.md +16 -0
- package/skill-docs/references/hrm/guide-role.md +4 -4
- package/skill-docs/references/menu/system-menus.md +151 -151
- package/skill-docs/references/report/add-dataset-registration-guide.md +161 -161
- package/skill-docs/references/report/advanced-crosstab-tree-guide.md +82 -82
- package/skill-docs/references/report/ai-report-workflow.md +412 -412
- package/skill-docs/references/report/api-auth-headers.md +129 -129
- package/skill-docs/references/report/api-report-build-fast-path.md +274 -274
- package/skill-docs/references/report/app-datasource-lookup-guide.md +230 -230
- package/skill-docs/references/report/branch-scene-guide.md +293 -293
- package/skill-docs/references/report/build-resilience-guide.md +99 -99
- package/skill-docs/references/report/card-report-guide.md +110 -110
- package/skill-docs/references/report/cell-config-echo-guide.md +198 -198
- package/skill-docs/references/report/cell-transform-guide.md +147 -147
- package/skill-docs/references/report/column-split-report-guide.md +96 -96
- package/skill-docs/references/report/condition-format-guide.md +165 -165
- package/skill-docs/references/report/cross-dataset-filter-guide.md +429 -429
- package/skill-docs/references/report/crosstab-raw-workbook-guide.md +265 -265
- package/skill-docs/references/report/dataset-query-filter-guide.md +231 -231
- package/skill-docs/references/report/dataset-sidebar-ops-guide.md +321 -321
- package/skill-docs/references/report/dataset-table-field-contract-guide.md +489 -489
- package/skill-docs/references/report/datasource-metadata-guide.md +374 -374
- package/skill-docs/references/report/datasource-selection-and-parent-filter-guide.md +183 -183
- package/skill-docs/references/report/date-range-query-reference.md +97 -97
- package/skill-docs/references/report/default-header-style-guide.md +70 -70
- package/skill-docs/references/report/designer-blank-prevention-guide.md +111 -111
- package/skill-docs/references/report/dossier-report-guide.md +69 -69
- package/skill-docs/references/report/drilldown-report-guide.md +75 -75
- package/skill-docs/references/report/event-hreflink-guide.md +222 -222
- package/skill-docs/references/report/expansion-block-parent-config-guide.md +208 -208
- package/skill-docs/references/report/failure-cleanup-and-nonblocking-guide.md +183 -183
- package/skill-docs/references/report/field-bind-exact-match-guide.md +208 -208
- package/skill-docs/references/report/financial-stats-report-guide.md +89 -89
- package/skill-docs/references/report/formula-cell-api-guide.md +325 -325
- package/skill-docs/references/report/golden-case-summary-sheet.md +200 -200
- package/skill-docs/references/report/guide-report-build.md +136 -136
- package/skill-docs/references/report/hidden-row-and-header-merge-guide.md +100 -100
- package/skill-docs/references/report/layout-showlocation-freeze-guide.md +196 -196
- package/skill-docs/references/report/multi-report-crosstab-casebook.md +263 -263
- package/skill-docs/references/report/paged-group-report-guide.md +68 -68
- package/skill-docs/references/report/preaggregate-auto-disable-guide.md +118 -118
- package/skill-docs/references/report/query-condition-api-guide.md +939 -939
- package/skill-docs/references/report/ref-report-commands.md +174 -174
- package/skill-docs/references/report/report-baseinfo-defaults-guide.md +117 -117
- package/skill-docs/references/report/report-building-guide.md +511 -511
- package/skill-docs/references/report/report-case-prompts.md +104 -104
- package/skill-docs/references/report/report-config-schema.md +445 -445
- package/skill-docs/references/report/report-create-modes-guide.md +220 -220
- package/skill-docs/references/report/report-data-model.md +447 -447
- package/skill-docs/references/report/report-delivery-contract.md +121 -121
- package/skill-docs/references/report/report-designer-feature-map.md +495 -495
- package/skill-docs/references/report/report-help-guide.md +304 -304
- package/skill-docs/references/report/report-internal-error-guide.md +149 -149
- package/skill-docs/references/report/report-knowledge-base.md +389 -389
- package/skill-docs/references/report/report-lifecycle-api-guide.md +424 -424
- package/skill-docs/references/report/report-list-page-ops-guide.md +237 -237
- package/skill-docs/references/report/report-permission-guide.md +362 -362
- package/skill-docs/references/report/report-requirement-analysis-template.md +266 -266
- package/skill-docs/references/report/report-self-check-guide.md +164 -164
- package/skill-docs/references/report/report-verification-discipline-guide.md +203 -203
- package/skill-docs/references/report/safe-partial-save-guide.md +151 -151
- package/skill-docs/references/report/shard-freeze-report-guide.md +97 -97
- package/skill-docs/references/report/snowflake-id-precision-guide.md +84 -84
- package/skill-docs/references/report/spec-build-schema.md +294 -294
- package/skill-docs/references/report/targeted-fix-guide.md +155 -155
- package/skill-docs/references/report/user-request-scope-only-guide.md +101 -101
- package/skill-docs/references/workflow/guide-base-auth-share-remind.md +126 -126
- package/skill-docs/references/workflow/guide-layout-components.md +26 -26
- package/skill-docs/references/workflow/guide-node-opinion.md +58 -58
- package/dist/cli-register.d.ts +0 -22
- package/dist/cli-register.d.ts.map +0 -1
- package/dist/cli-register.js.map +0 -1
- package/dist/commands/actionflow.d.ts +0 -7
- package/dist/commands/actionflow.d.ts.map +0 -1
- package/dist/commands/actionflow.js.map +0 -1
- package/dist/commands/app.d.ts +0 -3
- package/dist/commands/app.d.ts.map +0 -1
- package/dist/commands/app.js.map +0 -1
- package/dist/commands/auth.d.ts +0 -3
- package/dist/commands/auth.d.ts.map +0 -1
- package/dist/commands/auth.js.map +0 -1
- package/dist/commands/check.d.ts +0 -3
- package/dist/commands/check.d.ts.map +0 -1
- package/dist/commands/check.js.map +0 -1
- package/dist/commands/compile.d.ts +0 -3
- package/dist/commands/compile.d.ts.map +0 -1
- package/dist/commands/compile.js.map +0 -1
- package/dist/commands/designer-common.d.ts +0 -66
- package/dist/commands/designer-common.d.ts.map +0 -1
- package/dist/commands/designer-common.js.map +0 -1
- package/dist/commands/designer-css.d.ts +0 -15
- package/dist/commands/designer-css.d.ts.map +0 -1
- package/dist/commands/designer-css.js.map +0 -1
- package/dist/commands/designer-event.d.ts +0 -3
- package/dist/commands/designer-event.d.ts.map +0 -1
- package/dist/commands/designer-event.js.map +0 -1
- package/dist/commands/designer-setters.d.ts +0 -13
- package/dist/commands/designer-setters.d.ts.map +0 -1
- package/dist/commands/designer-setters.js.map +0 -1
- package/dist/commands/designer-source.d.ts +0 -3
- package/dist/commands/designer-source.d.ts.map +0 -1
- package/dist/commands/designer-source.js.map +0 -1
- package/dist/commands/designer.d.ts +0 -17
- package/dist/commands/designer.d.ts.map +0 -1
- package/dist/commands/designer.js.map +0 -1
- package/dist/commands/docx.d.ts +0 -3
- package/dist/commands/docx.d.ts.map +0 -1
- package/dist/commands/docx.js.map +0 -1
- package/dist/commands/form-add-detail-table.d.ts +0 -3
- package/dist/commands/form-add-detail-table.d.ts.map +0 -1
- package/dist/commands/form-add-detail-table.js.map +0 -1
- package/dist/commands/form-add-physical-field.d.ts +0 -3
- package/dist/commands/form-add-physical-field.d.ts.map +0 -1
- package/dist/commands/form-add-physical-field.js.map +0 -1
- package/dist/commands/form-association-manage.d.ts +0 -3
- package/dist/commands/form-association-manage.d.ts.map +0 -1
- package/dist/commands/form-association-manage.js.map +0 -1
- package/dist/commands/form-association.d.ts +0 -3
- package/dist/commands/form-association.d.ts.map +0 -1
- package/dist/commands/form-association.js.map +0 -1
- package/dist/commands/form-attachment-setting.d.ts +0 -3
- package/dist/commands/form-attachment-setting.d.ts.map +0 -1
- package/dist/commands/form-attachment-setting.js.map +0 -1
- package/dist/commands/form-browser-definition.d.ts +0 -14
- package/dist/commands/form-browser-definition.d.ts.map +0 -1
- package/dist/commands/form-browser-definition.js.map +0 -1
- package/dist/commands/form-browser-scope-rules.d.ts +0 -28
- package/dist/commands/form-browser-scope-rules.d.ts.map +0 -1
- package/dist/commands/form-browser-scope-rules.js.map +0 -1
- package/dist/commands/form-browser-scope-tree.d.ts +0 -14
- package/dist/commands/form-browser-scope-tree.d.ts.map +0 -1
- package/dist/commands/form-browser-scope-tree.js.map +0 -1
- package/dist/commands/form-button-actions-cmd.d.ts +0 -3
- package/dist/commands/form-button-actions-cmd.d.ts.map +0 -1
- package/dist/commands/form-button-actions-cmd.js.map +0 -1
- package/dist/commands/form-button-permission-cmd.d.ts +0 -3
- package/dist/commands/form-button-permission-cmd.d.ts.map +0 -1
- package/dist/commands/form-button-permission-cmd.js.map +0 -1
- package/dist/commands/form-button-props-cmd.d.ts +0 -3
- package/dist/commands/form-button-props-cmd.d.ts.map +0 -1
- package/dist/commands/form-button-props-cmd.js.map +0 -1
- package/dist/commands/form-button.d.ts +0 -3
- package/dist/commands/form-button.d.ts.map +0 -1
- package/dist/commands/form-button.js.map +0 -1
- package/dist/commands/form-code.d.ts +0 -5
- package/dist/commands/form-code.d.ts.map +0 -1
- package/dist/commands/form-code.js.map +0 -1
- package/dist/commands/form-data.d.ts +0 -3
- package/dist/commands/form-data.d.ts.map +0 -1
- package/dist/commands/form-data.js.map +0 -1
- package/dist/commands/form-ebuilder-columns.d.ts +0 -10
- package/dist/commands/form-ebuilder-columns.d.ts.map +0 -1
- package/dist/commands/form-ebuilder-columns.js.map +0 -1
- package/dist/commands/form-ebuilder-filter.d.ts +0 -3
- package/dist/commands/form-ebuilder-filter.d.ts.map +0 -1
- package/dist/commands/form-ebuilder-filter.js.map +0 -1
- package/dist/commands/form-ebuilder-scope.d.ts +0 -24
- package/dist/commands/form-ebuilder-scope.d.ts.map +0 -1
- package/dist/commands/form-ebuilder-scope.js.map +0 -1
- package/dist/commands/form-ebuilder-search.d.ts +0 -3
- package/dist/commands/form-ebuilder-search.d.ts.map +0 -1
- package/dist/commands/form-ebuilder-search.js +0 -252
- package/dist/commands/form-ebuilder-search.js.map +0 -1
- package/dist/commands/form-engine-linkage.d.ts +0 -3
- package/dist/commands/form-engine-linkage.d.ts.map +0 -1
- package/dist/commands/form-engine-linkage.js.map +0 -1
- package/dist/commands/form-field-lang.d.ts +0 -3
- package/dist/commands/form-field-lang.d.ts.map +0 -1
- package/dist/commands/form-field-lang.js.map +0 -1
- package/dist/commands/form-field-linkage.d.ts +0 -65
- package/dist/commands/form-field-linkage.d.ts.map +0 -1
- package/dist/commands/form-field-linkage.js.map +0 -1
- package/dist/commands/form-field-props.d.ts +0 -3
- package/dist/commands/form-field-props.d.ts.map +0 -1
- package/dist/commands/form-field-props.js +0 -242
- package/dist/commands/form-field-props.js.map +0 -1
- package/dist/commands/form-formula-linkage.d.ts +0 -39
- package/dist/commands/form-formula-linkage.d.ts.map +0 -1
- package/dist/commands/form-formula-linkage.js.map +0 -1
- package/dist/commands/form-formula.d.ts +0 -12
- package/dist/commands/form-formula.d.ts.map +0 -1
- package/dist/commands/form-formula.js.map +0 -1
- package/dist/commands/form-layout-code-reviewed.d.ts +0 -3
- package/dist/commands/form-layout-code-reviewed.d.ts.map +0 -1
- package/dist/commands/form-layout-code-reviewed.js.map +0 -1
- package/dist/commands/form-layout-describe.d.ts +0 -3
- package/dist/commands/form-layout-describe.d.ts.map +0 -1
- package/dist/commands/form-layout-describe.js.map +0 -1
- package/dist/commands/form-layout-detail-settings.d.ts +0 -3
- package/dist/commands/form-layout-detail-settings.d.ts.map +0 -1
- package/dist/commands/form-layout-detail-settings.js.map +0 -1
- package/dist/commands/form-layout-diff.d.ts +0 -3
- package/dist/commands/form-layout-diff.d.ts.map +0 -1
- package/dist/commands/form-layout-diff.js.map +0 -1
- package/dist/commands/form-layout-document.d.ts +0 -3
- package/dist/commands/form-layout-document.d.ts.map +0 -1
- package/dist/commands/form-layout-document.js.map +0 -1
- package/dist/commands/form-layout-edit.d.ts +0 -3
- package/dist/commands/form-layout-edit.d.ts.map +0 -1
- package/dist/commands/form-layout-edit.js.map +0 -1
- package/dist/commands/form-layout-init-reviewed.d.ts +0 -3
- package/dist/commands/form-layout-init-reviewed.d.ts.map +0 -1
- package/dist/commands/form-layout-init-reviewed.js.map +0 -1
- package/dist/commands/form-layout-init.d.ts +0 -8
- package/dist/commands/form-layout-init.d.ts.map +0 -1
- package/dist/commands/form-layout-init.js.map +0 -1
- package/dist/commands/form-layout-restore.d.ts +0 -3
- package/dist/commands/form-layout-restore.d.ts.map +0 -1
- package/dist/commands/form-layout-restore.js.map +0 -1
- package/dist/commands/form-layout-template-advanced.d.ts +0 -3
- package/dist/commands/form-layout-template-advanced.d.ts.map +0 -1
- package/dist/commands/form-layout-template-advanced.js.map +0 -1
- package/dist/commands/form-layout-template-catalog.d.ts +0 -3
- package/dist/commands/form-layout-template-catalog.d.ts.map +0 -1
- package/dist/commands/form-layout-template-catalog.js.map +0 -1
- package/dist/commands/form-layout-template-easy.d.ts +0 -3
- package/dist/commands/form-layout-template-easy.d.ts.map +0 -1
- package/dist/commands/form-layout-template-easy.js.map +0 -1
- package/dist/commands/form-layout.d.ts +0 -3
- package/dist/commands/form-layout.d.ts.map +0 -1
- package/dist/commands/form-layout.js.map +0 -1
- package/dist/commands/form-list-click.d.ts +0 -3
- package/dist/commands/form-list-click.d.ts.map +0 -1
- package/dist/commands/form-list-click.js.map +0 -1
- package/dist/commands/form-list-columns.d.ts +0 -3
- package/dist/commands/form-list-columns.d.ts.map +0 -1
- package/dist/commands/form-list-columns.js.map +0 -1
- package/dist/commands/form-list-config.d.ts +0 -9
- package/dist/commands/form-list-config.d.ts.map +0 -1
- package/dist/commands/form-list-config.js.map +0 -1
- package/dist/commands/form-list-custom.d.ts +0 -5
- package/dist/commands/form-list-custom.d.ts.map +0 -1
- package/dist/commands/form-list-custom.js.map +0 -1
- package/dist/commands/form-list-event.d.ts +0 -3
- package/dist/commands/form-list-event.d.ts.map +0 -1
- package/dist/commands/form-list-event.js.map +0 -1
- package/dist/commands/form-list-filter.d.ts +0 -12
- package/dist/commands/form-list-filter.d.ts.map +0 -1
- package/dist/commands/form-list-filter.js.map +0 -1
- package/dist/commands/form-list-group.d.ts +0 -11
- package/dist/commands/form-list-group.d.ts.map +0 -1
- package/dist/commands/form-list-group.js.map +0 -1
- package/dist/commands/form-list-hierarchy.d.ts +0 -3
- package/dist/commands/form-list-hierarchy.d.ts.map +0 -1
- package/dist/commands/form-list-hierarchy.js.map +0 -1
- package/dist/commands/form-list-permission.d.ts +0 -3
- package/dist/commands/form-list-permission.d.ts.map +0 -1
- package/dist/commands/form-list-permission.js.map +0 -1
- package/dist/commands/form-list-search-group.d.ts +0 -3
- package/dist/commands/form-list-search-group.d.ts.map +0 -1
- package/dist/commands/form-list-search-group.js.map +0 -1
- package/dist/commands/form-list-stats.d.ts +0 -3
- package/dist/commands/form-list-stats.d.ts.map +0 -1
- package/dist/commands/form-list-stats.js.map +0 -1
- package/dist/commands/form-list-unit.d.ts +0 -3
- package/dist/commands/form-list-unit.d.ts.map +0 -1
- package/dist/commands/form-list-unit.js.map +0 -1
- package/dist/commands/form-list-utils.d.ts +0 -111
- package/dist/commands/form-list-utils.d.ts.map +0 -1
- package/dist/commands/form-list-utils.js.map +0 -1
- package/dist/commands/form-list.d.ts +0 -3
- package/dist/commands/form-list.d.ts.map +0 -1
- package/dist/commands/form-list.js.map +0 -1
- package/dist/commands/form-message.d.ts +0 -3
- package/dist/commands/form-message.d.ts.map +0 -1
- package/dist/commands/form-message.js.map +0 -1
- package/dist/commands/form-native.d.ts +0 -3
- package/dist/commands/form-native.d.ts.map +0 -1
- package/dist/commands/form-native.js.map +0 -1
- package/dist/commands/form-nlist.d.ts +0 -22
- package/dist/commands/form-nlist.d.ts.map +0 -1
- package/dist/commands/form-nlist.js.map +0 -1
- package/dist/commands/form-obj-meta.d.ts +0 -12
- package/dist/commands/form-obj-meta.d.ts.map +0 -1
- package/dist/commands/form-obj-meta.js.map +0 -1
- package/dist/commands/form-option-template.d.ts +0 -3
- package/dist/commands/form-option-template.d.ts.map +0 -1
- package/dist/commands/form-option-template.js.map +0 -1
- package/dist/commands/form-permission.d.ts +0 -23
- package/dist/commands/form-permission.d.ts.map +0 -1
- package/dist/commands/form-permission.js.map +0 -1
- package/dist/commands/form-physical-table.d.ts +0 -3
- package/dist/commands/form-physical-table.d.ts.map +0 -1
- package/dist/commands/form-physical-table.js.map +0 -1
- package/dist/commands/form-relate.d.ts +0 -14
- package/dist/commands/form-relate.d.ts.map +0 -1
- package/dist/commands/form-relate.js.map +0 -1
- package/dist/commands/form-serial-mark.d.ts +0 -3
- package/dist/commands/form-serial-mark.d.ts.map +0 -1
- package/dist/commands/form-serial-mark.js.map +0 -1
- package/dist/commands/form-table-view.d.ts +0 -3
- package/dist/commands/form-table-view.d.ts.map +0 -1
- package/dist/commands/form-table-view.js.map +0 -1
- package/dist/commands/form-validate.d.ts +0 -3
- package/dist/commands/form-validate.d.ts.map +0 -1
- package/dist/commands/form-validate.js.map +0 -1
- package/dist/commands/form-view-permission.d.ts +0 -3
- package/dist/commands/form-view-permission.d.ts.map +0 -1
- package/dist/commands/form-view-permission.js.map +0 -1
- package/dist/commands/form-view.d.ts +0 -3
- package/dist/commands/form-view.d.ts.map +0 -1
- package/dist/commands/form-view.js.map +0 -1
- package/dist/commands/form-virtual.d.ts +0 -3
- package/dist/commands/form-virtual.d.ts.map +0 -1
- package/dist/commands/form-virtual.js.map +0 -1
- package/dist/commands/form.d.ts +0 -12
- package/dist/commands/form.d.ts.map +0 -1
- package/dist/commands/form.js.map +0 -1
- package/dist/commands/icon.d.ts +0 -3
- package/dist/commands/icon.d.ts.map +0 -1
- package/dist/commands/icon.js.map +0 -1
- package/dist/commands/interface.d.ts +0 -3
- package/dist/commands/interface.d.ts.map +0 -1
- package/dist/commands/interface.js.map +0 -1
- package/dist/commands/matrix-maintainer.d.ts +0 -3
- package/dist/commands/matrix-maintainer.d.ts.map +0 -1
- package/dist/commands/matrix-maintainer.js.map +0 -1
- package/dist/commands/matrix.d.ts +0 -3
- package/dist/commands/matrix.d.ts.map +0 -1
- package/dist/commands/matrix.js.map +0 -1
- package/dist/commands/menu-permission.d.ts +0 -14
- package/dist/commands/menu-permission.d.ts.map +0 -1
- package/dist/commands/menu-permission.js.map +0 -1
- package/dist/commands/menu.d.ts +0 -93
- package/dist/commands/menu.d.ts.map +0 -1
- package/dist/commands/menu.js.map +0 -1
- package/dist/commands/org.d.ts +0 -13
- package/dist/commands/org.d.ts.map +0 -1
- package/dist/commands/org.js.map +0 -1
- package/dist/commands/page-combination.d.ts +0 -3
- package/dist/commands/page-combination.d.ts.map +0 -1
- package/dist/commands/page-combination.js.map +0 -1
- package/dist/commands/page-permission.d.ts +0 -3
- package/dist/commands/page-permission.d.ts.map +0 -1
- package/dist/commands/page-permission.js.map +0 -1
- package/dist/commands/page.d.ts +0 -14
- package/dist/commands/page.d.ts.map +0 -1
- package/dist/commands/page.js.map +0 -1
- package/dist/commands/project.d.ts +0 -3
- package/dist/commands/project.d.ts.map +0 -1
- package/dist/commands/project.js.map +0 -1
- package/dist/commands/report-admin.d.ts +0 -5
- package/dist/commands/report-admin.d.ts.map +0 -1
- package/dist/commands/report-admin.js.map +0 -1
- package/dist/commands/report-cell.d.ts +0 -3
- package/dist/commands/report-cell.d.ts.map +0 -1
- package/dist/commands/report-cell.js.map +0 -1
- package/dist/commands/report-query.d.ts +0 -3
- package/dist/commands/report-query.d.ts.map +0 -1
- package/dist/commands/report-query.js.map +0 -1
- package/dist/commands/report-validate.d.ts +0 -3
- package/dist/commands/report-validate.d.ts.map +0 -1
- package/dist/commands/report-validate.js.map +0 -1
- package/dist/commands/report.d.ts +0 -21
- package/dist/commands/report.d.ts.map +0 -1
- package/dist/commands/report.js.map +0 -1
- package/dist/commands/role.d.ts +0 -3
- package/dist/commands/role.d.ts.map +0 -1
- package/dist/commands/role.js.map +0 -1
- package/dist/commands/skill.d.ts +0 -3
- package/dist/commands/skill.d.ts.map +0 -1
- package/dist/commands/skill.js.map +0 -1
- package/dist/commands/special.d.ts +0 -24
- package/dist/commands/special.d.ts.map +0 -1
- package/dist/commands/special.js.map +0 -1
- package/dist/commands/update.d.ts +0 -13
- package/dist/commands/update.d.ts.map +0 -1
- package/dist/commands/update.js.map +0 -1
- package/dist/commands/user.d.ts +0 -3
- package/dist/commands/user.d.ts.map +0 -1
- package/dist/commands/user.js.map +0 -1
- package/dist/commands/wf-form-layout-init-reviewed.d.ts +0 -3
- package/dist/commands/wf-form-layout-init-reviewed.d.ts.map +0 -1
- package/dist/commands/wf-form-layout-init-reviewed.js.map +0 -1
- package/dist/commands/wf-form.d.ts +0 -59
- package/dist/commands/wf-form.d.ts.map +0 -1
- package/dist/commands/wf-form.js.map +0 -1
- package/dist/commands/workflow-action.d.ts +0 -14
- package/dist/commands/workflow-action.d.ts.map +0 -1
- package/dist/commands/workflow-action.js.map +0 -1
- package/dist/commands/workflow-advanced.d.ts +0 -3
- package/dist/commands/workflow-advanced.d.ts.map +0 -1
- package/dist/commands/workflow-advanced.js.map +0 -1
- package/dist/commands/workflow-after-submit-comment.d.ts +0 -3
- package/dist/commands/workflow-after-submit-comment.d.ts.map +0 -1
- package/dist/commands/workflow-after-submit-comment.js.map +0 -1
- package/dist/commands/workflow-auth-resp.d.ts +0 -8
- package/dist/commands/workflow-auth-resp.d.ts.map +0 -1
- package/dist/commands/workflow-auth-resp.js.map +0 -1
- package/dist/commands/workflow-base-command.d.ts +0 -4
- package/dist/commands/workflow-base-command.d.ts.map +0 -1
- package/dist/commands/workflow-base-command.js.map +0 -1
- package/dist/commands/workflow-base-settings.d.ts +0 -3
- package/dist/commands/workflow-base-settings.d.ts.map +0 -1
- package/dist/commands/workflow-base-settings.js.map +0 -1
- package/dist/commands/workflow-basic-info.d.ts +0 -5
- package/dist/commands/workflow-basic-info.d.ts.map +0 -1
- package/dist/commands/workflow-basic-info.js.map +0 -1
- package/dist/commands/workflow-condition.d.ts +0 -7
- package/dist/commands/workflow-condition.d.ts.map +0 -1
- package/dist/commands/workflow-condition.js.map +0 -1
- package/dist/commands/workflow-create-auth-resp.d.ts +0 -4
- package/dist/commands/workflow-create-auth-resp.d.ts.map +0 -1
- package/dist/commands/workflow-create-auth-resp.js.map +0 -1
- package/dist/commands/workflow-create-workflow.d.ts +0 -3
- package/dist/commands/workflow-create-workflow.d.ts.map +0 -1
- package/dist/commands/workflow-create-workflow.js.map +0 -1
- package/dist/commands/workflow-export.d.ts +0 -9
- package/dist/commands/workflow-export.d.ts.map +0 -1
- package/dist/commands/workflow-export.js.map +0 -1
- package/dist/commands/workflow-function-management.d.ts +0 -5
- package/dist/commands/workflow-function-management.d.ts.map +0 -1
- package/dist/commands/workflow-function-management.js.map +0 -1
- package/dist/commands/workflow-function-settings.d.ts +0 -3
- package/dist/commands/workflow-function-settings.d.ts.map +0 -1
- package/dist/commands/workflow-function-settings.js.map +0 -1
- package/dist/commands/workflow-layout-components.d.ts +0 -3
- package/dist/commands/workflow-layout-components.d.ts.map +0 -1
- package/dist/commands/workflow-layout-components.js.map +0 -1
- package/dist/commands/workflow-message.d.ts +0 -3
- package/dist/commands/workflow-message.d.ts.map +0 -1
- package/dist/commands/workflow-message.js.map +0 -1
- package/dist/commands/workflow-node-assign-flow.d.ts +0 -3
- package/dist/commands/workflow-node-assign-flow.d.ts.map +0 -1
- package/dist/commands/workflow-node-assign-flow.js.map +0 -1
- package/dist/commands/workflow-node-batch.d.ts +0 -3
- package/dist/commands/workflow-node-batch.d.ts.map +0 -1
- package/dist/commands/workflow-node-batch.js.map +0 -1
- package/dist/commands/workflow-node-empty-handle.d.ts +0 -13
- package/dist/commands/workflow-node-empty-handle.d.ts.map +0 -1
- package/dist/commands/workflow-node-empty-handle.js.map +0 -1
- package/dist/commands/workflow-node-opinion.d.ts +0 -3
- package/dist/commands/workflow-node-opinion.d.ts.map +0 -1
- package/dist/commands/workflow-node-opinion.js.map +0 -1
- package/dist/commands/workflow-node-overtime.d.ts +0 -3
- package/dist/commands/workflow-node-overtime.d.ts.map +0 -1
- package/dist/commands/workflow-node-overtime.js.map +0 -1
- package/dist/commands/workflow-node-reject.d.ts +0 -55
- package/dist/commands/workflow-node-reject.d.ts.map +0 -1
- package/dist/commands/workflow-node-reject.js.map +0 -1
- package/dist/commands/workflow-node-robot.d.ts +0 -3
- package/dist/commands/workflow-node-robot.d.ts.map +0 -1
- package/dist/commands/workflow-node-robot.js.map +0 -1
- package/dist/commands/workflow-node-sign.d.ts +0 -3
- package/dist/commands/workflow-node-sign.d.ts.map +0 -1
- package/dist/commands/workflow-node-sign.js.map +0 -1
- package/dist/commands/workflow-node-validate.d.ts +0 -22
- package/dist/commands/workflow-node-validate.d.ts.map +0 -1
- package/dist/commands/workflow-node-validate.js.map +0 -1
- package/dist/commands/workflow-node.d.ts +0 -5
- package/dist/commands/workflow-node.d.ts.map +0 -1
- package/dist/commands/workflow-node.js.map +0 -1
- package/dist/commands/workflow-numbering.d.ts +0 -17
- package/dist/commands/workflow-numbering.d.ts.map +0 -1
- package/dist/commands/workflow-numbering.js.map +0 -1
- package/dist/commands/workflow-odoc.d.ts +0 -3
- package/dist/commands/workflow-odoc.d.ts.map +0 -1
- package/dist/commands/workflow-odoc.js.map +0 -1
- package/dist/commands/workflow-operator-batch.d.ts +0 -3
- package/dist/commands/workflow-operator-batch.d.ts.map +0 -1
- package/dist/commands/workflow-operator-batch.js.map +0 -1
- package/dist/commands/workflow-operator-sign.d.ts +0 -13
- package/dist/commands/workflow-operator-sign.d.ts.map +0 -1
- package/dist/commands/workflow-operator-sign.js.map +0 -1
- package/dist/commands/workflow-opinion-settings.d.ts +0 -5
- package/dist/commands/workflow-opinion-settings.d.ts.map +0 -1
- package/dist/commands/workflow-opinion-settings.js.map +0 -1
- package/dist/commands/workflow-plan-range.d.ts +0 -13
- package/dist/commands/workflow-plan-range.d.ts.map +0 -1
- package/dist/commands/workflow-plan-range.js.map +0 -1
- package/dist/commands/workflow-segment.d.ts +0 -3
- package/dist/commands/workflow-segment.d.ts.map +0 -1
- package/dist/commands/workflow-segment.js.map +0 -1
- package/dist/commands/workflow-setting.d.ts +0 -3
- package/dist/commands/workflow-setting.d.ts.map +0 -1
- package/dist/commands/workflow-setting.js.map +0 -1
- package/dist/commands/workflow-subprocess.d.ts +0 -3
- package/dist/commands/workflow-subprocess.d.ts.map +0 -1
- package/dist/commands/workflow-subprocess.js.map +0 -1
- package/dist/commands/workflow-title.d.ts +0 -14
- package/dist/commands/workflow-title.d.ts.map +0 -1
- package/dist/commands/workflow-title.js.map +0 -1
- package/dist/commands/workflow.d.ts +0 -26
- package/dist/commands/workflow.d.ts.map +0 -1
- package/dist/commands/workflow.js.map +0 -1
- package/dist/core/auth.d.ts +0 -36
- package/dist/core/auth.d.ts.map +0 -1
- package/dist/core/auth.js.map +0 -1
- package/dist/core/client.d.ts +0 -53
- package/dist/core/client.d.ts.map +0 -1
- package/dist/core/client.js.map +0 -1
- package/dist/core/crypto.d.ts +0 -30
- package/dist/core/crypto.d.ts.map +0 -1
- package/dist/core/crypto.js.map +0 -1
- package/dist/core/edition.d.ts +0 -4
- package/dist/core/edition.d.ts.map +0 -1
- package/dist/core/edition.js.map +0 -1
- package/dist/core/lzw.d.ts +0 -16
- package/dist/core/lzw.d.ts.map +0 -1
- package/dist/core/lzw.js.map +0 -1
- package/dist/index.d.ts +0 -3
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/postinstall.d.ts +0 -2
- package/dist/postinstall.d.ts.map +0 -1
- package/dist/postinstall.js.map +0 -1
- package/dist/services/action-detail.d.ts +0 -116
- package/dist/services/action-detail.d.ts.map +0 -1
- package/dist/services/action-detail.js.map +0 -1
- package/dist/services/actionflow/browser_source.d.ts +0 -9
- package/dist/services/actionflow/browser_source.d.ts.map +0 -1
- package/dist/services/actionflow/browser_source.js.map +0 -1
- package/dist/services/actionflow/build_workflow_draft.d.ts +0 -26
- package/dist/services/actionflow/build_workflow_draft.d.ts.map +0 -1
- package/dist/services/actionflow/build_workflow_draft.js.map +0 -1
- package/dist/services/actionflow/calendar_mapper.d.ts +0 -3
- package/dist/services/actionflow/calendar_mapper.d.ts.map +0 -1
- package/dist/services/actionflow/calendar_mapper.js.map +0 -1
- package/dist/services/actionflow/classified_protection_source.d.ts +0 -10
- package/dist/services/actionflow/classified_protection_source.d.ts.map +0 -1
- package/dist/services/actionflow/classified_protection_source.js.map +0 -1
- package/dist/services/actionflow/command_output.d.ts +0 -21
- package/dist/services/actionflow/command_output.d.ts.map +0 -1
- package/dist/services/actionflow/command_output.js.map +0 -1
- package/dist/services/actionflow/component_registry.d.ts +0 -13
- package/dist/services/actionflow/component_registry.d.ts.map +0 -1
- package/dist/services/actionflow/component_registry.js.map +0 -1
- package/dist/services/actionflow/components/action_eb_add.d.ts +0 -3
- package/dist/services/actionflow/components/action_eb_add.d.ts.map +0 -1
- package/dist/services/actionflow/components/action_eb_add.js.map +0 -1
- package/dist/services/actionflow/components/action_eb_add_compiler.d.ts +0 -4
- package/dist/services/actionflow/components/action_eb_add_compiler.d.ts.map +0 -1
- package/dist/services/actionflow/components/action_eb_add_compiler.js.map +0 -1
- package/dist/services/actionflow/components/action_eb_delete.d.ts +0 -8
- package/dist/services/actionflow/components/action_eb_delete.d.ts.map +0 -1
- package/dist/services/actionflow/components/action_eb_delete.js.map +0 -1
- package/dist/services/actionflow/components/action_eb_delete_compiler.d.ts +0 -4
- package/dist/services/actionflow/components/action_eb_delete_compiler.d.ts.map +0 -1
- package/dist/services/actionflow/components/action_eb_delete_compiler.js.map +0 -1
- package/dist/services/actionflow/components/action_eb_recover.d.ts +0 -3
- package/dist/services/actionflow/components/action_eb_recover.d.ts.map +0 -1
- package/dist/services/actionflow/components/action_eb_recover.js.map +0 -1
- package/dist/services/actionflow/components/action_eb_recover_compiler.d.ts +0 -3
- package/dist/services/actionflow/components/action_eb_recover_compiler.d.ts.map +0 -1
- package/dist/services/actionflow/components/action_eb_recover_compiler.js.map +0 -1
- package/dist/services/actionflow/components/action_eb_save_version.d.ts +0 -3
- package/dist/services/actionflow/components/action_eb_save_version.d.ts.map +0 -1
- package/dist/services/actionflow/components/action_eb_save_version.js.map +0 -1
- package/dist/services/actionflow/components/action_eb_save_version_compiler.d.ts +0 -3
- package/dist/services/actionflow/components/action_eb_save_version_compiler.d.ts.map +0 -1
- package/dist/services/actionflow/components/action_eb_save_version_compiler.js.map +0 -1
- package/dist/services/actionflow/components/action_eb_update.d.ts +0 -3
- package/dist/services/actionflow/components/action_eb_update.d.ts.map +0 -1
- package/dist/services/actionflow/components/action_eb_update.js.map +0 -1
- package/dist/services/actionflow/components/action_eb_update_compiler.d.ts +0 -28
- package/dist/services/actionflow/components/action_eb_update_compiler.d.ts.map +0 -1
- package/dist/services/actionflow/components/action_eb_update_compiler.js.map +0 -1
- package/dist/services/actionflow/components/approve_create.d.ts +0 -3
- package/dist/services/actionflow/components/approve_create.d.ts.map +0 -1
- package/dist/services/actionflow/components/approve_create.js.map +0 -1
- package/dist/services/actionflow/components/approve_trigger.d.ts +0 -10
- package/dist/services/actionflow/components/approve_trigger.d.ts.map +0 -1
- package/dist/services/actionflow/components/approve_trigger.js.map +0 -1
- package/dist/services/actionflow/components/approve_trigger_compiler.d.ts +0 -4
- package/dist/services/actionflow/components/approve_trigger_compiler.d.ts.map +0 -1
- package/dist/services/actionflow/components/approve_trigger_compiler.js.map +0 -1
- package/dist/services/actionflow/components/assign_var.d.ts +0 -12
- package/dist/services/actionflow/components/assign_var.d.ts.map +0 -1
- package/dist/services/actionflow/components/assign_var.js.map +0 -1
- package/dist/services/actionflow/components/condition.d.ts +0 -3
- package/dist/services/actionflow/components/condition.d.ts.map +0 -1
- package/dist/services/actionflow/components/condition.js.map +0 -1
- package/dist/services/actionflow/components/custom_set_form.d.ts +0 -10
- package/dist/services/actionflow/components/custom_set_form.d.ts.map +0 -1
- package/dist/services/actionflow/components/custom_set_form.js.map +0 -1
- package/dist/services/actionflow/components/custom_trigger.d.ts +0 -9
- package/dist/services/actionflow/components/custom_trigger.d.ts.map +0 -1
- package/dist/services/actionflow/components/custom_trigger.js.map +0 -1
- package/dist/services/actionflow/components/date_trigger.d.ts +0 -5
- package/dist/services/actionflow/components/date_trigger.d.ts.map +0 -1
- package/dist/services/actionflow/components/date_trigger.js.map +0 -1
- package/dist/services/actionflow/components/dml_execute.d.ts +0 -11
- package/dist/services/actionflow/components/dml_execute.d.ts.map +0 -1
- package/dist/services/actionflow/components/dml_execute.js.map +0 -1
- package/dist/services/actionflow/components/document_actions.d.ts +0 -28
- package/dist/services/actionflow/components/document_actions.d.ts.map +0 -1
- package/dist/services/actionflow/components/document_actions.js.map +0 -1
- package/dist/services/actionflow/components/eb_get_data_by_id.d.ts +0 -5
- package/dist/services/actionflow/components/eb_get_data_by_id.d.ts.map +0 -1
- package/dist/services/actionflow/components/eb_get_data_by_id.js.map +0 -1
- package/dist/services/actionflow/components/enquiry_form.d.ts +0 -5
- package/dist/services/actionflow/components/enquiry_form.d.ts.map +0 -1
- package/dist/services/actionflow/components/enquiry_form.js.map +0 -1
- package/dist/services/actionflow/components/event_button.d.ts +0 -3
- package/dist/services/actionflow/components/event_button.d.ts.map +0 -1
- package/dist/services/actionflow/components/event_button.js.map +0 -1
- package/dist/services/actionflow/components/event_form_data.d.ts +0 -3
- package/dist/services/actionflow/components/event_form_data.d.ts.map +0 -1
- package/dist/services/actionflow/components/event_form_data.js.map +0 -1
- package/dist/services/actionflow/components/form_data_builder.d.ts +0 -53
- package/dist/services/actionflow/components/form_data_builder.d.ts.map +0 -1
- package/dist/services/actionflow/components/form_data_builder.js.map +0 -1
- package/dist/services/actionflow/components/hrm_actions.d.ts +0 -8
- package/dist/services/actionflow/components/hrm_actions.d.ts.map +0 -1
- package/dist/services/actionflow/components/hrm_actions.js.map +0 -1
- package/dist/services/actionflow/components/http.d.ts +0 -12
- package/dist/services/actionflow/components/http.d.ts.map +0 -1
- package/dist/services/actionflow/components/http.js.map +0 -1
- package/dist/services/actionflow/components/index.d.ts +0 -32
- package/dist/services/actionflow/components/index.d.ts.map +0 -1
- package/dist/services/actionflow/components/index.js.map +0 -1
- package/dist/services/actionflow/components/inner_mq_listener.d.ts +0 -9
- package/dist/services/actionflow/components/inner_mq_listener.d.ts.map +0 -1
- package/dist/services/actionflow/components/inner_mq_listener.js.map +0 -1
- package/dist/services/actionflow/components/inner_mq_send.d.ts +0 -5
- package/dist/services/actionflow/components/inner_mq_send.d.ts.map +0 -1
- package/dist/services/actionflow/components/inner_mq_send.js.map +0 -1
- package/dist/services/actionflow/components/logic_flow_set.d.ts +0 -10
- package/dist/services/actionflow/components/logic_flow_set.d.ts.map +0 -1
- package/dist/services/actionflow/components/logic_flow_set.js.map +0 -1
- package/dist/services/actionflow/components/meeting_create.d.ts +0 -5
- package/dist/services/actionflow/components/meeting_create.d.ts.map +0 -1
- package/dist/services/actionflow/components/meeting_create.js.map +0 -1
- package/dist/services/actionflow/components/multiple_execution.d.ts +0 -5
- package/dist/services/actionflow/components/multiple_execution.d.ts.map +0 -1
- package/dist/services/actionflow/components/multiple_execution.js.map +0 -1
- package/dist/services/actionflow/components/output.d.ts +0 -10
- package/dist/services/actionflow/components/output.d.ts.map +0 -1
- package/dist/services/actionflow/components/output.js.map +0 -1
- package/dist/services/actionflow/components/schedule_create.d.ts +0 -5
- package/dist/services/actionflow/components/schedule_create.d.ts.map +0 -1
- package/dist/services/actionflow/components/schedule_create.js.map +0 -1
- package/dist/services/actionflow/components/send_message.d.ts +0 -7
- package/dist/services/actionflow/components/send_message.d.ts.map +0 -1
- package/dist/services/actionflow/components/send_message.js.map +0 -1
- package/dist/services/actionflow/components/serverless_action.d.ts +0 -5
- package/dist/services/actionflow/components/serverless_action.d.ts.map +0 -1
- package/dist/services/actionflow/components/serverless_action.js.map +0 -1
- package/dist/services/actionflow/components/simple_scheduler.d.ts +0 -5
- package/dist/services/actionflow/components/simple_scheduler.d.ts.map +0 -1
- package/dist/services/actionflow/components/simple_scheduler.js.map +0 -1
- package/dist/services/actionflow/components/time_batch_trigger.d.ts +0 -5
- package/dist/services/actionflow/components/time_batch_trigger.d.ts.map +0 -1
- package/dist/services/actionflow/components/time_batch_trigger.js.map +0 -1
- package/dist/services/actionflow/components/webhook_trigger.d.ts +0 -5
- package/dist/services/actionflow/components/webhook_trigger.d.ts.map +0 -1
- package/dist/services/actionflow/components/webhook_trigger.js.map +0 -1
- package/dist/services/actionflow/components/workflow_actions.d.ts +0 -26
- package/dist/services/actionflow/components/workflow_actions.d.ts.map +0 -1
- package/dist/services/actionflow/components/workflow_actions.js.map +0 -1
- package/dist/services/actionflow/context_data_builder.d.ts +0 -9
- package/dist/services/actionflow/context_data_builder.d.ts.map +0 -1
- package/dist/services/actionflow/context_data_builder.js.map +0 -1
- package/dist/services/actionflow/context_discovery.d.ts +0 -18
- package/dist/services/actionflow/context_discovery.d.ts.map +0 -1
- package/dist/services/actionflow/context_discovery.js.map +0 -1
- package/dist/services/actionflow/context_preflight.d.ts +0 -39
- package/dist/services/actionflow/context_preflight.d.ts.map +0 -1
- package/dist/services/actionflow/context_preflight.js.map +0 -1
- package/dist/services/actionflow/context_provider.d.ts +0 -25
- package/dist/services/actionflow/context_provider.d.ts.map +0 -1
- package/dist/services/actionflow/context_provider.js.map +0 -1
- package/dist/services/actionflow/context_source.d.ts +0 -7
- package/dist/services/actionflow/context_source.d.ts.map +0 -1
- package/dist/services/actionflow/context_source.js.map +0 -1
- package/dist/services/actionflow/custom_trigger_context.d.ts +0 -10
- package/dist/services/actionflow/custom_trigger_context.d.ts.map +0 -1
- package/dist/services/actionflow/custom_trigger_context.js.map +0 -1
- package/dist/services/actionflow/datasource_source.d.ts +0 -18
- package/dist/services/actionflow/datasource_source.d.ts.map +0 -1
- package/dist/services/actionflow/datasource_source.js.map +0 -1
- package/dist/services/actionflow/design_client.d.ts +0 -65
- package/dist/services/actionflow/design_client.d.ts.map +0 -1
- package/dist/services/actionflow/design_client.js.map +0 -1
- package/dist/services/actionflow/document_source.d.ts +0 -10
- package/dist/services/actionflow/document_source.d.ts.map +0 -1
- package/dist/services/actionflow/document_source.js.map +0 -1
- package/dist/services/actionflow/dynamic_resources.d.ts +0 -75
- package/dist/services/actionflow/dynamic_resources.d.ts.map +0 -1
- package/dist/services/actionflow/dynamic_resources.js.map +0 -1
- package/dist/services/actionflow/ebuilder_source.d.ts +0 -19
- package/dist/services/actionflow/ebuilder_source.d.ts.map +0 -1
- package/dist/services/actionflow/ebuilder_source.js.map +0 -1
- package/dist/services/actionflow/enrich_approve_trigger.d.ts +0 -12
- package/dist/services/actionflow/enrich_approve_trigger.d.ts.map +0 -1
- package/dist/services/actionflow/enrich_approve_trigger.js.map +0 -1
- package/dist/services/actionflow/execution_setting.d.ts +0 -11
- package/dist/services/actionflow/execution_setting.d.ts.map +0 -1
- package/dist/services/actionflow/execution_setting.js.map +0 -1
- package/dist/services/actionflow/filter_rules.d.ts +0 -14
- package/dist/services/actionflow/filter_rules.d.ts.map +0 -1
- package/dist/services/actionflow/filter_rules.js.map +0 -1
- package/dist/services/actionflow/form_source.d.ts +0 -155
- package/dist/services/actionflow/form_source.d.ts.map +0 -1
- package/dist/services/actionflow/form_source.js.map +0 -1
- package/dist/services/actionflow/formula_service.d.ts +0 -90
- package/dist/services/actionflow/formula_service.d.ts.map +0 -1
- package/dist/services/actionflow/formula_service.js.map +0 -1
- package/dist/services/actionflow/functions_catalog.d.ts +0 -27
- package/dist/services/actionflow/functions_catalog.d.ts.map +0 -1
- package/dist/services/actionflow/functions_catalog.js.map +0 -1
- package/dist/services/actionflow/functions_source.d.ts +0 -7
- package/dist/services/actionflow/functions_source.d.ts.map +0 -1
- package/dist/services/actionflow/functions_source.js.map +0 -1
- package/dist/services/actionflow/generation_service.d.ts +0 -63
- package/dist/services/actionflow/generation_service.d.ts.map +0 -1
- package/dist/services/actionflow/generation_service.js.map +0 -1
- package/dist/services/actionflow/hrm_source.d.ts +0 -6
- package/dist/services/actionflow/hrm_source.d.ts.map +0 -1
- package/dist/services/actionflow/hrm_source.js.map +0 -1
- package/dist/services/actionflow/http_input_params.d.ts +0 -17
- package/dist/services/actionflow/http_input_params.d.ts.map +0 -1
- package/dist/services/actionflow/http_input_params.js.map +0 -1
- package/dist/services/actionflow/http_source.d.ts +0 -41
- package/dist/services/actionflow/http_source.d.ts.map +0 -1
- package/dist/services/actionflow/http_source.js.map +0 -1
- package/dist/services/actionflow/id_generator.d.ts +0 -15
- package/dist/services/actionflow/id_generator.d.ts.map +0 -1
- package/dist/services/actionflow/id_generator.js.map +0 -1
- package/dist/services/actionflow/logicflow_source.d.ts +0 -5
- package/dist/services/actionflow/logicflow_source.d.ts.map +0 -1
- package/dist/services/actionflow/logicflow_source.js.map +0 -1
- package/dist/services/actionflow/machine_key.d.ts +0 -13
- package/dist/services/actionflow/machine_key.d.ts.map +0 -1
- package/dist/services/actionflow/machine_key.js.map +0 -1
- package/dist/services/actionflow/option_field_types.d.ts +0 -5
- package/dist/services/actionflow/option_field_types.d.ts.map +0 -1
- package/dist/services/actionflow/option_field_types.js.map +0 -1
- package/dist/services/actionflow/param_group_dto.d.ts +0 -5
- package/dist/services/actionflow/param_group_dto.d.ts.map +0 -1
- package/dist/services/actionflow/param_group_dto.js.map +0 -1
- package/dist/services/actionflow/param_mapping_basis.d.ts +0 -3
- package/dist/services/actionflow/param_mapping_basis.d.ts.map +0 -1
- package/dist/services/actionflow/param_mapping_basis.js.map +0 -1
- package/dist/services/actionflow/param_type.d.ts +0 -14
- package/dist/services/actionflow/param_type.d.ts.map +0 -1
- package/dist/services/actionflow/param_type.js.map +0 -1
- package/dist/services/actionflow/person_source.d.ts +0 -7
- package/dist/services/actionflow/person_source.d.ts.map +0 -1
- package/dist/services/actionflow/person_source.js.map +0 -1
- package/dist/services/actionflow/plan_constraints.d.ts +0 -5
- package/dist/services/actionflow/plan_constraints.d.ts.map +0 -1
- package/dist/services/actionflow/plan_constraints.js.map +0 -1
- package/dist/services/actionflow/preflight_service.d.ts +0 -114
- package/dist/services/actionflow/preflight_service.d.ts.map +0 -1
- package/dist/services/actionflow/preflight_service.js.map +0 -1
- package/dist/services/actionflow/query_field_defaults.d.ts +0 -3
- package/dist/services/actionflow/query_field_defaults.d.ts.map +0 -1
- package/dist/services/actionflow/query_field_defaults.js.map +0 -1
- package/dist/services/actionflow/readback_verifier.d.ts +0 -11
- package/dist/services/actionflow/readback_verifier.d.ts.map +0 -1
- package/dist/services/actionflow/readback_verifier.js.map +0 -1
- package/dist/services/actionflow/request.d.ts +0 -13
- package/dist/services/actionflow/request.d.ts.map +0 -1
- package/dist/services/actionflow/request.js.map +0 -1
- package/dist/services/actionflow/runtime_metadata.d.ts +0 -36
- package/dist/services/actionflow/runtime_metadata.d.ts.map +0 -1
- package/dist/services/actionflow/runtime_metadata.js.map +0 -1
- package/dist/services/actionflow/save_workflow_draft.d.ts +0 -50
- package/dist/services/actionflow/save_workflow_draft.d.ts.map +0 -1
- package/dist/services/actionflow/save_workflow_draft.js.map +0 -1
- package/dist/services/actionflow/step_branches.d.ts +0 -18
- package/dist/services/actionflow/step_branches.d.ts.map +0 -1
- package/dist/services/actionflow/step_branches.js.map +0 -1
- package/dist/services/actionflow/system_params.d.ts +0 -5
- package/dist/services/actionflow/system_params.d.ts.map +0 -1
- package/dist/services/actionflow/system_params.js.map +0 -1
- package/dist/services/actionflow/trigger_common.d.ts +0 -6
- package/dist/services/actionflow/trigger_common.d.ts.map +0 -1
- package/dist/services/actionflow/trigger_common.js.map +0 -1
- package/dist/services/actionflow/update_service.d.ts +0 -53
- package/dist/services/actionflow/update_service.d.ts.map +0 -1
- package/dist/services/actionflow/update_service.js.map +0 -1
- package/dist/services/actionflow/webhook_source.d.ts +0 -4
- package/dist/services/actionflow/webhook_source.d.ts.map +0 -1
- package/dist/services/actionflow/webhook_source.js.map +0 -1
- package/dist/services/actionflow/workflow_compiler.d.ts +0 -27
- package/dist/services/actionflow/workflow_compiler.d.ts.map +0 -1
- package/dist/services/actionflow/workflow_compiler.js.map +0 -1
- package/dist/services/actionflow/workflow_request_level.d.ts +0 -3
- package/dist/services/actionflow/workflow_request_level.d.ts.map +0 -1
- package/dist/services/actionflow/workflow_request_level.js.map +0 -1
- package/dist/services/actionflow/workflow_source.d.ts +0 -18
- package/dist/services/actionflow/workflow_source.d.ts.map +0 -1
- package/dist/services/actionflow/workflow_source.js.map +0 -1
- package/dist/services/app-publish.d.ts +0 -252
- package/dist/services/app-publish.d.ts.map +0 -1
- package/dist/services/app-publish.js.map +0 -1
- package/dist/services/app-range.d.ts +0 -66
- package/dist/services/app-range.d.ts.map +0 -1
- package/dist/services/app-range.js.map +0 -1
- package/dist/services/auth-resp-condition.d.ts +0 -39
- package/dist/services/auth-resp-condition.d.ts.map +0 -1
- package/dist/services/auth-resp-condition.js.map +0 -1
- package/dist/services/browser.d.ts +0 -39
- package/dist/services/browser.d.ts.map +0 -1
- package/dist/services/browser.js.map +0 -1
- package/dist/services/condition-rules.d.ts +0 -17
- package/dist/services/condition-rules.d.ts.map +0 -1
- package/dist/services/condition-rules.js.map +0 -1
- package/dist/services/designer-css.d.ts +0 -89
- package/dist/services/designer-css.d.ts.map +0 -1
- package/dist/services/designer-css.js.map +0 -1
- package/dist/services/designer-dataset.d.ts +0 -45
- package/dist/services/designer-dataset.d.ts.map +0 -1
- package/dist/services/designer-dataset.js.map +0 -1
- package/dist/services/designer-event.d.ts +0 -54
- package/dist/services/designer-event.d.ts.map +0 -1
- package/dist/services/designer-event.js.map +0 -1
- package/dist/services/designer-source.d.ts +0 -46
- package/dist/services/designer-source.d.ts.map +0 -1
- package/dist/services/designer-source.js.map +0 -1
- package/dist/services/dom-structure.d.ts +0 -42
- package/dist/services/dom-structure.d.ts.map +0 -1
- package/dist/services/dom-structure.js.map +0 -1
- package/dist/services/esb-interface/document-parser.d.ts +0 -11
- package/dist/services/esb-interface/document-parser.d.ts.map +0 -1
- package/dist/services/esb-interface/document-parser.js.map +0 -1
- package/dist/services/esb-interface/importer.d.ts +0 -12
- package/dist/services/esb-interface/importer.d.ts.map +0 -1
- package/dist/services/esb-interface/importer.js.map +0 -1
- package/dist/services/esb-interface/postman-collection.d.ts +0 -15
- package/dist/services/esb-interface/postman-collection.d.ts.map +0 -1
- package/dist/services/esb-interface/postman-collection.js.map +0 -1
- package/dist/services/esb-interface/types.d.ts +0 -92
- package/dist/services/esb-interface/types.d.ts.map +0 -1
- package/dist/services/esb-interface/types.js.map +0 -1
- package/dist/services/field-identity.d.ts +0 -3
- package/dist/services/field-identity.d.ts.map +0 -1
- package/dist/services/field-identity.js.map +0 -1
- package/dist/services/field-props-data.d.ts +0 -56
- package/dist/services/field-props-data.d.ts.map +0 -1
- package/dist/services/field-props-data.js +0 -732
- package/dist/services/field-props-data.js.map +0 -1
- package/dist/services/form-association.d.ts +0 -89
- package/dist/services/form-association.d.ts.map +0 -1
- package/dist/services/form-association.js.map +0 -1
- package/dist/services/form-attachment-settings.d.ts +0 -137
- package/dist/services/form-attachment-settings.d.ts.map +0 -1
- package/dist/services/form-attachment-settings.js.map +0 -1
- package/dist/services/form-attachment-upload.d.ts +0 -30
- package/dist/services/form-attachment-upload.d.ts.map +0 -1
- package/dist/services/form-attachment-upload.js.map +0 -1
- package/dist/services/form-button-action.d.ts +0 -106
- package/dist/services/form-button-action.d.ts.map +0 -1
- package/dist/services/form-button-action.js.map +0 -1
- package/dist/services/form-button-condition.d.ts +0 -45
- package/dist/services/form-button-condition.d.ts.map +0 -1
- package/dist/services/form-button-condition.js.map +0 -1
- package/dist/services/form-button-context.d.ts +0 -41
- package/dist/services/form-button-context.d.ts.map +0 -1
- package/dist/services/form-button-context.js.map +0 -1
- package/dist/services/form-button-logicflow.d.ts +0 -30
- package/dist/services/form-button-logicflow.d.ts.map +0 -1
- package/dist/services/form-button-logicflow.js.map +0 -1
- package/dist/services/form-button-org.d.ts +0 -30
- package/dist/services/form-button-org.d.ts.map +0 -1
- package/dist/services/form-button-org.js.map +0 -1
- package/dist/services/form-button-permission.d.ts +0 -65
- package/dist/services/form-button-permission.d.ts.map +0 -1
- package/dist/services/form-button-permission.js.map +0 -1
- package/dist/services/form-button-position.d.ts +0 -21
- package/dist/services/form-button-position.d.ts.map +0 -1
- package/dist/services/form-button-position.js.map +0 -1
- package/dist/services/form-button-props.d.ts +0 -55
- package/dist/services/form-button-props.d.ts.map +0 -1
- package/dist/services/form-button-props.js.map +0 -1
- package/dist/services/form-button-save.d.ts +0 -49
- package/dist/services/form-button-save.d.ts.map +0 -1
- package/dist/services/form-button-save.js.map +0 -1
- package/dist/services/form-code.d.ts +0 -53
- package/dist/services/form-code.d.ts.map +0 -1
- package/dist/services/form-code.js.map +0 -1
- package/dist/services/form-create.d.ts +0 -184
- package/dist/services/form-create.d.ts.map +0 -1
- package/dist/services/form-create.js.map +0 -1
- package/dist/services/form-data-openapi.d.ts +0 -144
- package/dist/services/form-data-openapi.d.ts.map +0 -1
- package/dist/services/form-data-openapi.js.map +0 -1
- package/dist/services/form-ebuilder-columns.d.ts +0 -50
- package/dist/services/form-ebuilder-columns.d.ts.map +0 -1
- package/dist/services/form-ebuilder-columns.js.map +0 -1
- package/dist/services/form-ebuilder-filter.d.ts +0 -60
- package/dist/services/form-ebuilder-filter.d.ts.map +0 -1
- package/dist/services/form-ebuilder-filter.js.map +0 -1
- package/dist/services/form-edit-base.d.ts +0 -45
- package/dist/services/form-edit-base.d.ts.map +0 -1
- package/dist/services/form-edit-base.js.map +0 -1
- package/dist/services/form-field-build.d.ts +0 -84
- package/dist/services/form-field-build.d.ts.map +0 -1
- package/dist/services/form-field-build.js.map +0 -1
- package/dist/services/form-field-dataset.d.ts +0 -101
- package/dist/services/form-field-dataset.d.ts.map +0 -1
- package/dist/services/form-field-dataset.js +0 -180
- package/dist/services/form-field-dataset.js.map +0 -1
- package/dist/services/form-field-drop.d.ts +0 -72
- package/dist/services/form-field-drop.d.ts.map +0 -1
- package/dist/services/form-field-drop.js.map +0 -1
- package/dist/services/form-field-patch.d.ts +0 -71
- package/dist/services/form-field-patch.d.ts.map +0 -1
- package/dist/services/form-field-patch.js.map +0 -1
- package/dist/services/form-field-template.d.ts +0 -76
- package/dist/services/form-field-template.d.ts.map +0 -1
- package/dist/services/form-field-template.js.map +0 -1
- package/dist/services/form-field-validate.d.ts +0 -26
- package/dist/services/form-field-validate.d.ts.map +0 -1
- package/dist/services/form-field-validate.js.map +0 -1
- package/dist/services/form-formula-linkage.d.ts +0 -470
- package/dist/services/form-formula-linkage.d.ts.map +0 -1
- package/dist/services/form-formula-linkage.js.map +0 -1
- package/dist/services/form-i18n-label.d.ts +0 -48
- package/dist/services/form-i18n-label.d.ts.map +0 -1
- package/dist/services/form-i18n-label.js.map +0 -1
- package/dist/services/form-id.d.ts +0 -50
- package/dist/services/form-id.d.ts.map +0 -1
- package/dist/services/form-id.js.map +0 -1
- package/dist/services/form-layout-code-reviewed.d.ts +0 -34
- package/dist/services/form-layout-code-reviewed.d.ts.map +0 -1
- package/dist/services/form-layout-code-reviewed.js.map +0 -1
- package/dist/services/form-layout-copy-default.d.ts +0 -94
- package/dist/services/form-layout-copy-default.d.ts.map +0 -1
- package/dist/services/form-layout-copy-default.js.map +0 -1
- package/dist/services/form-layout-describe.d.ts +0 -4
- package/dist/services/form-layout-describe.d.ts.map +0 -1
- package/dist/services/form-layout-describe.js.map +0 -1
- package/dist/services/form-layout-detail-advanced.d.ts +0 -10
- package/dist/services/form-layout-detail-advanced.d.ts.map +0 -1
- package/dist/services/form-layout-detail-advanced.js.map +0 -1
- package/dist/services/form-layout-detail-insert.d.ts +0 -58
- package/dist/services/form-layout-detail-insert.d.ts.map +0 -1
- package/dist/services/form-layout-detail-insert.js.map +0 -1
- package/dist/services/form-layout-detail-settings.d.ts +0 -151
- package/dist/services/form-layout-detail-settings.d.ts.map +0 -1
- package/dist/services/form-layout-detail-settings.js.map +0 -1
- package/dist/services/form-layout-diff.d.ts +0 -37
- package/dist/services/form-layout-diff.d.ts.map +0 -1
- package/dist/services/form-layout-diff.js.map +0 -1
- package/dist/services/form-layout-document-apply.d.ts +0 -23
- package/dist/services/form-layout-document-apply.d.ts.map +0 -1
- package/dist/services/form-layout-document-apply.js.map +0 -1
- package/dist/services/form-layout-document.d.ts +0 -13
- package/dist/services/form-layout-document.d.ts.map +0 -1
- package/dist/services/form-layout-document.js.map +0 -1
- package/dist/services/form-layout-edit.d.ts +0 -21
- package/dist/services/form-layout-edit.d.ts.map +0 -1
- package/dist/services/form-layout-edit.js.map +0 -1
- package/dist/services/form-layout-grid.d.ts +0 -123
- package/dist/services/form-layout-grid.d.ts.map +0 -1
- package/dist/services/form-layout-grid.js.map +0 -1
- package/dist/services/form-layout-init-plan.d.ts +0 -54
- package/dist/services/form-layout-init-plan.d.ts.map +0 -1
- package/dist/services/form-layout-init-plan.js.map +0 -1
- package/dist/services/form-layout-insert.d.ts +0 -129
- package/dist/services/form-layout-insert.d.ts.map +0 -1
- package/dist/services/form-layout-insert.js.map +0 -1
- package/dist/services/form-layout-io.d.ts +0 -18
- package/dist/services/form-layout-io.d.ts.map +0 -1
- package/dist/services/form-layout-io.js.map +0 -1
- package/dist/services/form-layout-source/artifact.d.ts +0 -8
- package/dist/services/form-layout-source/artifact.d.ts.map +0 -1
- package/dist/services/form-layout-source/artifact.js.map +0 -1
- package/dist/services/form-layout-source/binding.d.ts +0 -10
- package/dist/services/form-layout-source/binding.d.ts.map +0 -1
- package/dist/services/form-layout-source/binding.js.map +0 -1
- package/dist/services/form-layout-source/compile.d.ts +0 -7
- package/dist/services/form-layout-source/compile.d.ts.map +0 -1
- package/dist/services/form-layout-source/compile.js.map +0 -1
- package/dist/services/form-layout-source/creation.d.ts +0 -18
- package/dist/services/form-layout-source/creation.d.ts.map +0 -1
- package/dist/services/form-layout-source/creation.js.map +0 -1
- package/dist/services/form-layout-source/excel-extractor.d.ts +0 -7
- package/dist/services/form-layout-source/excel-extractor.d.ts.map +0 -1
- package/dist/services/form-layout-source/excel-extractor.js.map +0 -1
- package/dist/services/form-layout-source/image-border.d.ts +0 -9
- package/dist/services/form-layout-source/image-border.d.ts.map +0 -1
- package/dist/services/form-layout-source/image-border.js.map +0 -1
- package/dist/services/form-layout-source/image-observation.d.ts +0 -14
- package/dist/services/form-layout-source/image-observation.d.ts.map +0 -1
- package/dist/services/form-layout-source/image-observation.js.map +0 -1
- package/dist/services/form-layout-source/image-review.d.ts +0 -32
- package/dist/services/form-layout-source/image-review.d.ts.map +0 -1
- package/dist/services/form-layout-source/image-review.js.map +0 -1
- package/dist/services/form-layout-source/image-style.d.ts +0 -16
- package/dist/services/form-layout-source/image-style.d.ts.map +0 -1
- package/dist/services/form-layout-source/image-style.js.map +0 -1
- package/dist/services/form-layout-source/json.d.ts +0 -3
- package/dist/services/form-layout-source/json.d.ts.map +0 -1
- package/dist/services/form-layout-source/json.js.map +0 -1
- package/dist/services/form-layout-source/presentation.d.ts +0 -23
- package/dist/services/form-layout-source/presentation.d.ts.map +0 -1
- package/dist/services/form-layout-source/presentation.js.map +0 -1
- package/dist/services/form-layout-source/preview.d.ts +0 -4
- package/dist/services/form-layout-source/preview.d.ts.map +0 -1
- package/dist/services/form-layout-source/preview.js.map +0 -1
- package/dist/services/form-layout-source/review.d.ts +0 -4
- package/dist/services/form-layout-source/review.d.ts.map +0 -1
- package/dist/services/form-layout-source/review.js.map +0 -1
- package/dist/services/form-layout-source/schema.d.ts +0 -20
- package/dist/services/form-layout-source/schema.d.ts.map +0 -1
- package/dist/services/form-layout-source/schema.js.map +0 -1
- package/dist/services/form-layout-source/source-grid.d.ts +0 -8
- package/dist/services/form-layout-source/source-grid.d.ts.map +0 -1
- package/dist/services/form-layout-source/source-grid.js.map +0 -1
- package/dist/services/form-layout-source/types.d.ts +0 -242
- package/dist/services/form-layout-source/types.d.ts.map +0 -1
- package/dist/services/form-layout-source/types.js.map +0 -1
- package/dist/services/form-layout-source/verify.d.ts +0 -14
- package/dist/services/form-layout-source/verify.d.ts.map +0 -1
- package/dist/services/form-layout-source/verify.js.map +0 -1
- package/dist/services/form-layout-template-advanced.d.ts +0 -335
- package/dist/services/form-layout-template-advanced.d.ts.map +0 -1
- package/dist/services/form-layout-template-advanced.js.map +0 -1
- package/dist/services/form-layout-template-catalog.d.ts +0 -13
- package/dist/services/form-layout-template-catalog.d.ts.map +0 -1
- package/dist/services/form-layout-template-catalog.js.map +0 -1
- package/dist/services/form-layout-template-easy.d.ts +0 -34
- package/dist/services/form-layout-template-easy.d.ts.map +0 -1
- package/dist/services/form-layout-template-easy.js.map +0 -1
- package/dist/services/form-layout-template-flow.d.ts +0 -23
- package/dist/services/form-layout-template-flow.d.ts.map +0 -1
- package/dist/services/form-layout-template-flow.js.map +0 -1
- package/dist/services/form-layout-template-verification.d.ts +0 -34
- package/dist/services/form-layout-template-verification.d.ts.map +0 -1
- package/dist/services/form-layout-template-verification.js.map +0 -1
- package/dist/services/form-linkage-condition.d.ts +0 -195
- package/dist/services/form-linkage-condition.d.ts.map +0 -1
- package/dist/services/form-linkage-condition.js.map +0 -1
- package/dist/services/form-list-columns.d.ts +0 -65
- package/dist/services/form-list-columns.d.ts.map +0 -1
- package/dist/services/form-list-columns.js.map +0 -1
- package/dist/services/form-list-config.d.ts +0 -93
- package/dist/services/form-list-config.d.ts.map +0 -1
- package/dist/services/form-list-config.js.map +0 -1
- package/dist/services/form-list-fields.d.ts +0 -38
- package/dist/services/form-list-fields.d.ts.map +0 -1
- package/dist/services/form-list-fields.js.map +0 -1
- package/dist/services/form-list-filter-http.d.ts +0 -60
- package/dist/services/form-list-filter-http.d.ts.map +0 -1
- package/dist/services/form-list-filter-http.js.map +0 -1
- package/dist/services/form-list-filter-sql.d.ts +0 -74
- package/dist/services/form-list-filter-sql.d.ts.map +0 -1
- package/dist/services/form-list-filter-sql.js.map +0 -1
- package/dist/services/form-list-search-custom.d.ts +0 -25
- package/dist/services/form-list-search-custom.d.ts.map +0 -1
- package/dist/services/form-list-search-custom.js.map +0 -1
- package/dist/services/form-list-search-group.d.ts +0 -138
- package/dist/services/form-list-search-group.d.ts.map +0 -1
- package/dist/services/form-list-search-group.js.map +0 -1
- package/dist/services/form-list-search.d.ts +0 -111
- package/dist/services/form-list-search.d.ts.map +0 -1
- package/dist/services/form-list-search.js.map +0 -1
- package/dist/services/form-list-stats.d.ts +0 -64
- package/dist/services/form-list-stats.d.ts.map +0 -1
- package/dist/services/form-list-stats.js.map +0 -1
- package/dist/services/form-list-table-fields.d.ts +0 -58
- package/dist/services/form-list-table-fields.d.ts.map +0 -1
- package/dist/services/form-list-table-fields.js.map +0 -1
- package/dist/services/form-message.d.ts +0 -292
- package/dist/services/form-message.d.ts.map +0 -1
- package/dist/services/form-message.js.map +0 -1
- package/dist/services/form-nlist-field-attrs.d.ts +0 -43
- package/dist/services/form-nlist-field-attrs.d.ts.map +0 -1
- package/dist/services/form-nlist-field-attrs.js.map +0 -1
- package/dist/services/form-nlist.d.ts +0 -74
- package/dist/services/form-nlist.d.ts.map +0 -1
- package/dist/services/form-nlist.js.map +0 -1
- package/dist/services/form-obj-meta.d.ts +0 -72
- package/dist/services/form-obj-meta.d.ts.map +0 -1
- package/dist/services/form-obj-meta.js.map +0 -1
- package/dist/services/form-permission-archive.d.ts +0 -156
- package/dist/services/form-permission-archive.d.ts.map +0 -1
- package/dist/services/form-permission-archive.js.map +0 -1
- package/dist/services/form-permission-edit.d.ts +0 -115
- package/dist/services/form-permission-edit.d.ts.map +0 -1
- package/dist/services/form-permission-edit.js.map +0 -1
- package/dist/services/form-physical-table.d.ts +0 -142
- package/dist/services/form-physical-table.d.ts.map +0 -1
- package/dist/services/form-physical-table.js.map +0 -1
- package/dist/services/form-style-template.d.ts +0 -21
- package/dist/services/form-style-template.d.ts.map +0 -1
- package/dist/services/form-style-template.js.map +0 -1
- package/dist/services/form-sub-detail.d.ts +0 -120
- package/dist/services/form-sub-detail.d.ts.map +0 -1
- package/dist/services/form-sub-detail.js.map +0 -1
- package/dist/services/form-table-view.d.ts +0 -137
- package/dist/services/form-table-view.d.ts.map +0 -1
- package/dist/services/form-table-view.js.map +0 -1
- package/dist/services/form-view-linkage-functions.d.ts +0 -19
- package/dist/services/form-view-linkage-functions.d.ts.map +0 -1
- package/dist/services/form-view-linkage-functions.js.map +0 -1
- package/dist/services/form-view-permission.d.ts +0 -30
- package/dist/services/form-view-permission.d.ts.map +0 -1
- package/dist/services/form-view-permission.js.map +0 -1
- package/dist/services/form-view-populate.d.ts +0 -76
- package/dist/services/form-view-populate.d.ts.map +0 -1
- package/dist/services/form-view-populate.js.map +0 -1
- package/dist/services/form-view.d.ts +0 -92
- package/dist/services/form-view.d.ts.map +0 -1
- package/dist/services/form-view.js.map +0 -1
- package/dist/services/form-virtual.d.ts +0 -60
- package/dist/services/form-virtual.d.ts.map +0 -1
- package/dist/services/form-virtual.js.map +0 -1
- package/dist/services/formula-detail.d.ts +0 -186
- package/dist/services/formula-detail.d.ts.map +0 -1
- package/dist/services/formula-detail.js.map +0 -1
- package/dist/services/icon-path.d.ts +0 -70
- package/dist/services/icon-path.d.ts.map +0 -1
- package/dist/services/icon-path.js.map +0 -1
- package/dist/services/matrix-condition.d.ts +0 -162
- package/dist/services/matrix-condition.d.ts.map +0 -1
- package/dist/services/matrix-condition.js.map +0 -1
- package/dist/services/matrix-fields.d.ts +0 -42
- package/dist/services/matrix-fields.d.ts.map +0 -1
- package/dist/services/matrix-fields.js.map +0 -1
- package/dist/services/matrix-maintainer.d.ts +0 -27
- package/dist/services/matrix-maintainer.d.ts.map +0 -1
- package/dist/services/matrix-maintainer.js.map +0 -1
- package/dist/services/matrix-rows.d.ts +0 -43
- package/dist/services/matrix-rows.d.ts.map +0 -1
- package/dist/services/matrix-rows.js.map +0 -1
- package/dist/services/menu-catalog.d.ts +0 -228
- package/dist/services/menu-catalog.d.ts.map +0 -1
- package/dist/services/menu-catalog.js.map +0 -1
- package/dist/services/org-browser.d.ts +0 -60
- package/dist/services/org-browser.d.ts.map +0 -1
- package/dist/services/org-browser.js.map +0 -1
- package/dist/services/org-department.d.ts +0 -127
- package/dist/services/org-department.d.ts.map +0 -1
- package/dist/services/org-department.js.map +0 -1
- package/dist/services/org-employee.d.ts +0 -191
- package/dist/services/org-employee.d.ts.map +0 -1
- package/dist/services/org-employee.js.map +0 -1
- package/dist/services/page-combination.d.ts +0 -58
- package/dist/services/page-combination.d.ts.map +0 -1
- package/dist/services/page-combination.js.map +0 -1
- package/dist/services/page-permission.d.ts +0 -74
- package/dist/services/page-permission.d.ts.map +0 -1
- package/dist/services/page-permission.js.map +0 -1
- package/dist/services/permission-entity.d.ts +0 -55
- package/dist/services/permission-entity.d.ts.map +0 -1
- package/dist/services/permission-entity.js.map +0 -1
- package/dist/services/quick-date-range.d.ts +0 -22
- package/dist/services/quick-date-range.d.ts.map +0 -1
- package/dist/services/quick-date-range.js.map +0 -1
- package/dist/services/report/analyze.d.ts +0 -67
- package/dist/services/report/analyze.d.ts.map +0 -1
- package/dist/services/report/analyze.js.map +0 -1
- package/dist/services/report/blueprint.d.ts +0 -109
- package/dist/services/report/blueprint.d.ts.map +0 -1
- package/dist/services/report/blueprint.js.map +0 -1
- package/dist/services/report/build.d.ts +0 -166
- package/dist/services/report/build.d.ts.map +0 -1
- package/dist/services/report/build.js.map +0 -1
- package/dist/services/report/card.d.ts +0 -65
- package/dist/services/report/card.d.ts.map +0 -1
- package/dist/services/report/card.js.map +0 -1
- package/dist/services/report/cell-edit.d.ts +0 -53
- package/dist/services/report/cell-edit.d.ts.map +0 -1
- package/dist/services/report/cell-edit.js.map +0 -1
- package/dist/services/report/cell-event.d.ts +0 -28
- package/dist/services/report/cell-event.d.ts.map +0 -1
- package/dist/services/report/cell-event.js.map +0 -1
- package/dist/services/report/cell-filter.d.ts +0 -46
- package/dist/services/report/cell-filter.d.ts.map +0 -1
- package/dist/services/report/cell-filter.js.map +0 -1
- package/dist/services/report/constants.d.ts +0 -145
- package/dist/services/report/constants.d.ts.map +0 -1
- package/dist/services/report/constants.js.map +0 -1
- package/dist/services/report/copy-health.d.ts +0 -31
- package/dist/services/report/copy-health.d.ts.map +0 -1
- package/dist/services/report/copy-health.js.map +0 -1
- package/dist/services/report/dataset-heal.d.ts +0 -64
- package/dist/services/report/dataset-heal.d.ts.map +0 -1
- package/dist/services/report/dataset-heal.js.map +0 -1
- package/dist/services/report/dataset-ids.d.ts +0 -70
- package/dist/services/report/dataset-ids.d.ts.map +0 -1
- package/dist/services/report/dataset-ids.js.map +0 -1
- package/dist/services/report/dataset.d.ts +0 -73
- package/dist/services/report/dataset.d.ts.map +0 -1
- package/dist/services/report/dataset.js.map +0 -1
- package/dist/services/report/drill.d.ts +0 -74
- package/dist/services/report/drill.d.ts.map +0 -1
- package/dist/services/report/drill.js.map +0 -1
- package/dist/services/report/empty-dataset.d.ts +0 -51
- package/dist/services/report/empty-dataset.d.ts.map +0 -1
- package/dist/services/report/empty-dataset.js.map +0 -1
- package/dist/services/report/field-binding.d.ts +0 -75
- package/dist/services/report/field-binding.d.ts.map +0 -1
- package/dist/services/report/field-binding.js.map +0 -1
- package/dist/services/report/fields.d.ts +0 -80
- package/dist/services/report/fields.d.ts.map +0 -1
- package/dist/services/report/fields.js.map +0 -1
- package/dist/services/report/forms.d.ts +0 -102
- package/dist/services/report/forms.d.ts.map +0 -1
- package/dist/services/report/forms.js.map +0 -1
- package/dist/services/report/formula-parent.d.ts +0 -25
- package/dist/services/report/formula-parent.d.ts.map +0 -1
- package/dist/services/report/formula-parent.js.map +0 -1
- package/dist/services/report/guard.d.ts +0 -73
- package/dist/services/report/guard.d.ts.map +0 -1
- package/dist/services/report/guard.js.map +0 -1
- package/dist/services/report/http.d.ts +0 -118
- package/dist/services/report/http.d.ts.map +0 -1
- package/dist/services/report/http.js.map +0 -1
- package/dist/services/report/lifecycle.d.ts +0 -107
- package/dist/services/report/lifecycle.d.ts.map +0 -1
- package/dist/services/report/lifecycle.js.map +0 -1
- package/dist/services/report/locate.d.ts +0 -40
- package/dist/services/report/locate.d.ts.map +0 -1
- package/dist/services/report/locate.js.map +0 -1
- package/dist/services/report/permission.d.ts +0 -59
- package/dist/services/report/permission.d.ts.map +0 -1
- package/dist/services/report/permission.js.map +0 -1
- package/dist/services/report/query-checks.d.ts +0 -124
- package/dist/services/report/query-checks.d.ts.map +0 -1
- package/dist/services/report/query-checks.js.map +0 -1
- package/dist/services/report/query.d.ts +0 -106
- package/dist/services/report/query.d.ts.map +0 -1
- package/dist/services/report/query.js.map +0 -1
- package/dist/services/report/render.d.ts +0 -52
- package/dist/services/report/render.d.ts.map +0 -1
- package/dist/services/report/render.js.map +0 -1
- package/dist/services/report/reports.d.ts +0 -114
- package/dist/services/report/reports.d.ts.map +0 -1
- package/dist/services/report/reports.js.map +0 -1
- package/dist/services/report/safe-save.d.ts +0 -57
- package/dist/services/report/safe-save.d.ts.map +0 -1
- package/dist/services/report/safe-save.js.map +0 -1
- package/dist/services/report/scene.d.ts +0 -22
- package/dist/services/report/scene.d.ts.map +0 -1
- package/dist/services/report/scene.js.map +0 -1
- package/dist/services/report/sources.d.ts +0 -48
- package/dist/services/report/sources.d.ts.map +0 -1
- package/dist/services/report/sources.js.map +0 -1
- package/dist/services/report/types.d.ts +0 -340
- package/dist/services/report/types.d.ts.map +0 -1
- package/dist/services/report/types.js.map +0 -1
- package/dist/services/report/validate.d.ts +0 -169
- package/dist/services/report/validate.d.ts.map +0 -1
- package/dist/services/report/validate.js.map +0 -1
- package/dist/services/report/verify.d.ts +0 -96
- package/dist/services/report/verify.d.ts.map +0 -1
- package/dist/services/report/verify.js.map +0 -1
- package/dist/services/report/workbook.d.ts +0 -119
- package/dist/services/report/workbook.d.ts.map +0 -1
- package/dist/services/report/workbook.js.map +0 -1
- package/dist/services/rich-text.d.ts +0 -33
- package/dist/services/rich-text.d.ts.map +0 -1
- package/dist/services/rich-text.js.map +0 -1
- package/dist/services/rich-types.d.ts +0 -74
- package/dist/services/rich-types.d.ts.map +0 -1
- package/dist/services/rich-types.js.map +0 -1
- package/dist/services/role-function-permission.d.ts +0 -12
- package/dist/services/role-function-permission.d.ts.map +0 -1
- package/dist/services/role-function-permission.js.map +0 -1
- package/dist/services/role-member.d.ts +0 -170
- package/dist/services/role-member.d.ts.map +0 -1
- package/dist/services/role-member.js.map +0 -1
- package/dist/services/skill-provision.d.ts +0 -36
- package/dist/services/skill-provision.d.ts.map +0 -1
- package/dist/services/skill-provision.js.map +0 -1
- package/dist/services/special-layout.d.ts +0 -113
- package/dist/services/special-layout.d.ts.map +0 -1
- package/dist/services/special-layout.js.map +0 -1
- package/dist/services/special-page.d.ts +0 -85
- package/dist/services/special-page.d.ts.map +0 -1
- package/dist/services/special-page.js.map +0 -1
- package/dist/services/special-route.d.ts +0 -92
- package/dist/services/special-route.d.ts.map +0 -1
- package/dist/services/special-route.js.map +0 -1
- package/dist/services/update-check.d.ts +0 -31
- package/dist/services/update-check.d.ts.map +0 -1
- package/dist/services/update-check.js.map +0 -1
- package/dist/services/validate-help.d.ts +0 -25
- package/dist/services/validate-help.d.ts.map +0 -1
- package/dist/services/validate-help.js.map +0 -1
- package/dist/services/workflow-add-step.d.ts +0 -45
- package/dist/services/workflow-add-step.d.ts.map +0 -1
- package/dist/services/workflow-add-step.js.map +0 -1
- package/dist/services/workflow-after-submit-comment.d.ts +0 -20
- package/dist/services/workflow-after-submit-comment.d.ts.map +0 -1
- package/dist/services/workflow-after-submit-comment.js.map +0 -1
- package/dist/services/workflow-assign-flow.d.ts +0 -109
- package/dist/services/workflow-assign-flow.d.ts.map +0 -1
- package/dist/services/workflow-assign-flow.js.map +0 -1
- package/dist/services/workflow-base-settings.d.ts +0 -108
- package/dist/services/workflow-base-settings.d.ts.map +0 -1
- package/dist/services/workflow-base-settings.js.map +0 -1
- package/dist/services/workflow-basic-info.d.ts +0 -27
- package/dist/services/workflow-basic-info.d.ts.map +0 -1
- package/dist/services/workflow-basic-info.js.map +0 -1
- package/dist/services/workflow-condition-core.d.ts +0 -48
- package/dist/services/workflow-condition-core.d.ts.map +0 -1
- package/dist/services/workflow-condition-core.js.map +0 -1
- package/dist/services/workflow-context.d.ts +0 -10
- package/dist/services/workflow-context.d.ts.map +0 -1
- package/dist/services/workflow-context.js.map +0 -1
- package/dist/services/workflow-drawback.d.ts +0 -19
- package/dist/services/workflow-drawback.d.ts.map +0 -1
- package/dist/services/workflow-drawback.js.map +0 -1
- package/dist/services/workflow-export.d.ts +0 -80
- package/dist/services/workflow-export.d.ts.map +0 -1
- package/dist/services/workflow-export.js.map +0 -1
- package/dist/services/workflow-field-permission-route.d.ts +0 -49
- package/dist/services/workflow-field-permission-route.d.ts.map +0 -1
- package/dist/services/workflow-field-permission-route.js.map +0 -1
- package/dist/services/workflow-field-permission.d.ts +0 -18
- package/dist/services/workflow-field-permission.d.ts.map +0 -1
- package/dist/services/workflow-field-permission.js.map +0 -1
- package/dist/services/workflow-function-management.d.ts +0 -123
- package/dist/services/workflow-function-management.d.ts.map +0 -1
- package/dist/services/workflow-function-management.js.map +0 -1
- package/dist/services/workflow-function-settings.d.ts +0 -32
- package/dist/services/workflow-function-settings.d.ts.map +0 -1
- package/dist/services/workflow-function-settings.js.map +0 -1
- package/dist/services/workflow-info.d.ts +0 -85
- package/dist/services/workflow-info.d.ts.map +0 -1
- package/dist/services/workflow-info.js.map +0 -1
- package/dist/services/workflow-initiator.d.ts +0 -15
- package/dist/services/workflow-initiator.d.ts.map +0 -1
- package/dist/services/workflow-initiator.js.map +0 -1
- package/dist/services/workflow-layout-components.d.ts +0 -52
- package/dist/services/workflow-layout-components.d.ts.map +0 -1
- package/dist/services/workflow-layout-components.js.map +0 -1
- package/dist/services/workflow-layout-draft.d.ts +0 -49
- package/dist/services/workflow-layout-draft.d.ts.map +0 -1
- package/dist/services/workflow-layout-draft.js.map +0 -1
- package/dist/services/workflow-layout-init-reviewed.d.ts +0 -37
- package/dist/services/workflow-layout-init-reviewed.d.ts.map +0 -1
- package/dist/services/workflow-layout-init-reviewed.js.map +0 -1
- package/dist/services/workflow-layout-structure.d.ts +0 -3
- package/dist/services/workflow-layout-structure.d.ts.map +0 -1
- package/dist/services/workflow-layout-structure.js.map +0 -1
- package/dist/services/workflow-layout.d.ts +0 -129
- package/dist/services/workflow-layout.d.ts.map +0 -1
- package/dist/services/workflow-layout.js.map +0 -1
- package/dist/services/workflow-links.d.ts +0 -51
- package/dist/services/workflow-links.d.ts.map +0 -1
- package/dist/services/workflow-links.js.map +0 -1
- package/dist/services/workflow-matrix-rule.d.ts +0 -34
- package/dist/services/workflow-matrix-rule.d.ts.map +0 -1
- package/dist/services/workflow-matrix-rule.js.map +0 -1
- package/dist/services/workflow-node-batch-spec.d.ts +0 -122
- package/dist/services/workflow-node-batch-spec.d.ts.map +0 -1
- package/dist/services/workflow-node-batch-spec.js.map +0 -1
- package/dist/services/workflow-node-batch.d.ts +0 -73
- package/dist/services/workflow-node-batch.d.ts.map +0 -1
- package/dist/services/workflow-node-batch.js.map +0 -1
- package/dist/services/workflow-node-layout.d.ts +0 -386
- package/dist/services/workflow-node-layout.d.ts.map +0 -1
- package/dist/services/workflow-node-layout.js.map +0 -1
- package/dist/services/workflow-node-menu.d.ts +0 -57
- package/dist/services/workflow-node-menu.d.ts.map +0 -1
- package/dist/services/workflow-node-menu.js.map +0 -1
- package/dist/services/workflow-node-opinion-description.d.ts +0 -12
- package/dist/services/workflow-node-opinion-description.d.ts.map +0 -1
- package/dist/services/workflow-node-opinion-description.js.map +0 -1
- package/dist/services/workflow-node-opinion-layout.d.ts +0 -22
- package/dist/services/workflow-node-opinion-layout.d.ts.map +0 -1
- package/dist/services/workflow-node-opinion-layout.js.map +0 -1
- package/dist/services/workflow-node-opinion-range.d.ts +0 -21
- package/dist/services/workflow-node-opinion-range.d.ts.map +0 -1
- package/dist/services/workflow-node-opinion-range.js.map +0 -1
- package/dist/services/workflow-node-opinion.d.ts +0 -43
- package/dist/services/workflow-node-opinion.d.ts.map +0 -1
- package/dist/services/workflow-node-opinion.js.map +0 -1
- package/dist/services/workflow-odoc-setting.d.ts +0 -43
- package/dist/services/workflow-odoc-setting.d.ts.map +0 -1
- package/dist/services/workflow-odoc-setting.js.map +0 -1
- package/dist/services/workflow-operator-batch-condition.d.ts +0 -23
- package/dist/services/workflow-operator-batch-condition.d.ts.map +0 -1
- package/dist/services/workflow-operator-batch-condition.js.map +0 -1
- package/dist/services/workflow-operator.d.ts +0 -99
- package/dist/services/workflow-operator.d.ts.map +0 -1
- package/dist/services/workflow-operator.js.map +0 -1
- package/dist/services/workflow-opinion-settings.d.ts +0 -81
- package/dist/services/workflow-opinion-settings.d.ts.map +0 -1
- package/dist/services/workflow-opinion-settings.js.map +0 -1
- package/dist/services/workflow-overtime.d.ts +0 -95
- package/dist/services/workflow-overtime.d.ts.map +0 -1
- package/dist/services/workflow-overtime.js.map +0 -1
- package/dist/services/workflow-plan-range.d.ts +0 -18
- package/dist/services/workflow-plan-range.d.ts.map +0 -1
- package/dist/services/workflow-plan-range.js.map +0 -1
- package/dist/services/workflow-sign-file-settings.d.ts +0 -16
- package/dist/services/workflow-sign-file-settings.d.ts.map +0 -1
- package/dist/services/workflow-sign-file-settings.js.map +0 -1
- package/dist/services/workflow-submit-confirm.d.ts +0 -14
- package/dist/services/workflow-submit-confirm.d.ts.map +0 -1
- package/dist/services/workflow-submit-confirm.js.map +0 -1
- package/dist/services/workflow-tab-config.d.ts +0 -54
- package/dist/services/workflow-tab-config.d.ts.map +0 -1
- package/dist/services/workflow-tab-config.js.map +0 -1
- package/dist/services/workflow-tabs-editor.d.ts +0 -28
- package/dist/services/workflow-tabs-editor.d.ts.map +0 -1
- package/dist/services/workflow-tabs-editor.js.map +0 -1
- package/dist/services/workflow-watermark-template.d.ts +0 -8
- package/dist/services/workflow-watermark-template.d.ts.map +0 -1
- package/dist/services/workflow-watermark-template.js.map +0 -1
- package/dist/types.d.ts +0 -57
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js.map +0 -1
- package/dist/utils/column-name.d.ts +0 -37
- package/dist/utils/column-name.d.ts.map +0 -1
- package/dist/utils/column-name.js.map +0 -1
|
@@ -1,939 +1,939 @@
|
|
|
1
|
-
# 查询条件 API 写入规范
|
|
2
|
-
|
|
3
|
-
> **适用场景**:通过 `saveQueryItem` / `saveQueryConfig` API 或脚本添加、修复报表查询条件。
|
|
4
|
-
> **金标准报表**:`1304979556231593985`(EBU 经营数据统计)
|
|
5
|
-
> **核心规则**:数据集合选取后,**选择类型未特别指定 SQL 时,一律默认为「条件字段」**。
|
|
6
|
-
|
|
7
|
-
## ⚡ TL;DR — 显示方式(2026-09-11 定案,务必先读 §2.1)
|
|
8
|
-
|
|
9
|
-
| 事实 | 结论 |
|
|
10
|
-
|---|---|
|
|
11
|
-
| 条件级 `queryType` 正确落库值 | **JSON 数组字符串** `'["advance"]'`(高级搜索)/ `'["filter"]'`(筛选) |
|
|
12
|
-
| 前端回显判据 | 只看首字符是否 `[`;`'["advance"]'` → 勾选 ✅,`"advancedSearch"` → 不勾 ❌ |
|
|
13
|
-
| **`updateQueryType` 是最大陷阱** | 它把入参 `queryType` **批量写进所有条件**;传长码 = 一键摧毁全表回显(§2.1.3) |
|
|
14
|
-
| 保存后必须自检 | `e10-cli report query check-echo --report-id <id> --app-id <appId>` |
|
|
15
|
-
| 一键修复 | `e10-cli report query fix-echo --report-id <id> --app-id <appId>` |
|
|
16
|
-
|
|
17
|
-
---
|
|
18
|
-
|
|
19
|
-
## 一、选择类型(设计器 UI ↔ API)
|
|
20
|
-
|
|
21
|
-
| 设计器「选择类型」 | 顶层 `filterType` | `conditions[]` 内 | 说明 |
|
|
22
|
-
|-------------------|-------------------|-------------------|------|
|
|
23
|
-
| **条件字段**(默认) | `"default"` | **仅** `dataSetId` + `fieldId` + `relation` | 绑定数据集字段,禁止 SQL |
|
|
24
|
-
| **SQL**(显式指定) | `"sql"` | `"filterType": "sql"` + `sql` | 私有化环境才可用 |
|
|
25
|
-
|
|
26
|
-
**Agent 硬约束**:除非需求明确写「SQL 条件」,否则不得使用 `filterType: "sql"`。
|
|
27
|
-
|
|
28
|
-
**常见错误**
|
|
29
|
-
|
|
30
|
-
| 错误写法 | 后果 |
|
|
31
|
-
|----------|------|
|
|
32
|
-
| `conditions[].filterType: "field"` | 设计器「选择类型」无法回显为「条件字段」 |
|
|
33
|
-
| 顶层 `dataSetId` / `name` 有值 | 与设计器 save 形态不一致,回显异常 |
|
|
34
|
-
| `sqlOptions: {selected: ...}` | 条件字段应为 `{}` |
|
|
35
|
-
| `defaultValue: "3"`(非 JSON 数组) | `getQueryItem` 解析失败,整表 500 |
|
|
36
|
-
| **`queryItems` 传数组 `[]`/`[{…}]`** | 服务端 `parseObject` 单对象失败 / NPE → **saveQueryItem 500** |
|
|
37
|
-
| **`queryItems` 为 `{}` 且无 `conditions`** | `getConditions().size()` NPE → **500** |
|
|
38
|
-
| **JSON body 而非 multipart** | 参数绑不上 / 权限校验异常 → 常 500 |
|
|
39
|
-
| 缺 `ebBusinessId` | `wrapEbRightCheck` 编辑权限失败 |
|
|
40
|
-
|
|
41
|
-
---
|
|
42
|
-
|
|
43
|
-
## 二、条件字段标准形态(saveQueryItem)
|
|
44
|
-
|
|
45
|
-
设计器 save 后回读的金标准结构:
|
|
46
|
-
|
|
47
|
-
| 字段 | 条件字段正确值 |
|
|
48
|
-
|------|----------------|
|
|
49
|
-
| 顶层 `dataSetId` | **`null`** |
|
|
50
|
-
| 顶层 `name` | **`null`** |
|
|
51
|
-
| `nameIndex` | **`"0"`** |
|
|
52
|
-
| `filterType` | **`"default"`** |
|
|
53
|
-
| `sqlOptions` | **`{}`** |
|
|
54
|
-
| `conditions[]` | 仅 `dataSetId` + `fieldId` + `relation` |
|
|
55
|
-
| `fieldOptions` | 必传(含 `selected`、`dataSetField`、`relation`);`getQueryItem` 不持久化,更新时须重带 |
|
|
56
|
-
| `asNameIndex` | **唯一且 > 0**;更新时**必须回传**,否则置 0。`showOrder`(弹窗「排序」)人工配置通常留 **`0`**(= 未设,平台回落按 `asNameIndex` 排)——API 建条件时若自行填 1,2,3… 会在弹窗上留下可见差异(2026-09-14 验证参照报表 5 条全为 0)。事件超链接传查询值用 `{searchfield` + 三位补零 + `}`(如 `asNameIndex=1` → `{searchfield001}`,区间另加 `_start`/`_end`),见 `event-hreflink-guide.md` |
|
|
57
|
-
| **默认值三件套** | **必填**:`defaultValueType`(`default`=常规 / `custom`=自定义)+ `defaultValue`(当前生效值)+ `type1DefaultValue`(常规那份)/ `type2DefaultValue`(自定义那份);值均为 **JSON 字符串**。**漏写 → 设计器弹窗「默认值类型」= 请选择、默认值区炸开、后续整段行被顶出可视区**(见 §2.1.10) |
|
|
58
|
-
| `fieldId` / `dataSetField` | fieldKey:`{dataSetId}.{sourceId}.{fieldName}` |
|
|
59
|
-
| **`queryType`(显示方式)** | **必填 JSON 数组字符串**,见 §2.1;`'["advance"]'`(高级搜索,默认)或 `'["filter"]'`(筛选),可双选 `'["advance","filter"]'`。**服务端也接受长码字符串 `"advancedSearch"`,但那样设计器 UI 不会勾选** |
|
|
60
|
-
| `showWhere`(遗留) | 设计器一律写 `""`;**勿**用它表达显示方式 |
|
|
61
|
-
| `browserType` / `browserTypeStr` | `displayType=browser` 时必填;富对象优先,落库判据是 `browserTypeStr`(见 §2.1.2) |
|
|
62
|
-
|
|
63
|
-
```python
|
|
64
|
-
def build_conditions(ds_id, field_id, relation):
|
|
65
|
-
return [{"dataSetId": ds_id, "fieldId": field_id, "relation": relation}]
|
|
66
|
-
|
|
67
|
-
def build_field_options(ds_id, field_id, relation, item_id=None):
|
|
68
|
-
row = {"dataSetField": field_id, "relation": relation, "queryItemValue": "输入值"}
|
|
69
|
-
if item_id:
|
|
70
|
-
row["id"] = str(item_id)
|
|
71
|
-
return {"selected": ds_id, ds_id: [row]}
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
API:`POST /api/bs/edc/report/saveQueryItem`
|
|
75
|
-
|
|
76
|
-
| 项 | 正确 | 错误 → 常 500 |
|
|
77
|
-
|----|------|----------------|
|
|
78
|
-
| Content-Type | **`multipart/form-data`** | `application/json` 整包 body |
|
|
79
|
-
| 表单字段 | `reportId` + **`queryItems`** | 缺参、或写成 `queryItem` / `items` |
|
|
80
|
-
| `queryItems` 值 | **单个** QueryField **对象**的 JSON 字符串 | **`[]` / `[{...}]` 数组**(源码 `parseObject` 单对象) |
|
|
81
|
-
| Header | `eteamsid` + `Cookie` + **`ebBusinessId`/`ebbusinessid`=appId** | 缺业务 app,权限包装失败 |
|
|
82
|
-
| Referer | `/sp/edc/report/designer/{reportId}` | 可无,但建议带 |
|
|
83
|
-
|
|
84
|
-
```http
|
|
85
|
-
POST /api/bs/edc/report/saveQueryItem
|
|
86
|
-
Content-Type: multipart/form-data; boundary=----x
|
|
87
|
-
|
|
88
|
-
------x
|
|
89
|
-
Content-Disposition: form-data; name="reportId"
|
|
90
|
-
|
|
91
|
-
{reportId}
|
|
92
|
-
------x
|
|
93
|
-
Content-Disposition: form-data; name="queryItems"
|
|
94
|
-
|
|
95
|
-
{"dataSetId":null,"name":null,...,"conditions":[{...}],"fieldOptions":{...}}
|
|
96
|
-
------x--
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
**硬约束(源码 `EdcReportDevDesignServiceImpl.saveQueryItem`)**
|
|
100
|
-
|
|
101
|
-
1. `JSONObject.parseObject(queryItems, QueryFieldDto.class)` → **禁止**传数组。
|
|
102
|
-
2. 非私有化环境会对 `queryField.getConditions()` 做 `jsonArray.size()`;**`conditions` 为 null**(如 `queryItems="{}"`)→ **NPE → 接口 500**。
|
|
103
|
-
3. 一次请求只保存**一条**条件;多条 → **循环多次** `saveQueryItem`(每条一个对象)。
|
|
104
|
-
4. 更新已有条件:对象内带 `id`(字符串雪花);新建不带 `id`,服务端生成并自动递增 `asNameIndex`。
|
|
105
|
-
5. `saveQueryConfig` **不能代替** `saveQueryItem`;可先可后,但有高级搜索条件时建议条件级 `queryType: '["advance"]'`(见 §2.1)。
|
|
106
|
-
|
|
107
|
-
```javascript
|
|
108
|
-
// ✅
|
|
109
|
-
await saveQueryItem({ reportId, queryItems: JSON.stringify(oneItemObject) });
|
|
110
|
-
// ❌
|
|
111
|
-
await saveQueryItem({ reportId, queryItems: JSON.stringify([oneItemObject]) });
|
|
112
|
-
await saveQueryItem({ reportId, queryItems: '[]' });
|
|
113
|
-
await saveQueryItem({ reportId, queryItems: '{}' }); // conditions 缺失 → 500
|
|
114
|
-
```
|
|
115
|
-
|
|
116
|
-
---
|
|
117
|
-
|
|
118
|
-
### 2.1 显示方式(强制 · 不可不选)
|
|
119
|
-
|
|
120
|
-
> **✅ 终局定案(2026-09-11 · 以「设计器手工配置的真实条件」为金标准反推)**
|
|
121
|
-
>
|
|
122
|
-
> 条件级「显示方式」的正确落库值是 **JSON 数组字符串**:
|
|
123
|
-
>
|
|
124
|
-
> | 显示方式 | 正确落库值 |
|
|
125
|
-
> |---|---|
|
|
126
|
-
> | 高级搜索 | `'["advance"]'` |
|
|
127
|
-
> | 筛选 | `'["filter"]'` |
|
|
128
|
-
> | 两者都选 | `'["advance","filter"]'` |
|
|
129
|
-
>
|
|
130
|
-
> **服务端对取值不敏感**:`'["advance"]'` / `'["filter"]'` / `'["advance","filter"]'` / `"advancedSearch"` / `"filter"` **全部返回 200 并原样落库**。
|
|
131
|
-
> **但只有 JSON 数组形态能在设计器 UI 正确回显勾选**;长码字符串 `"advancedSearch"` 会导致 **UI 两个都不勾**(旧版文档「写短码 500」的说法是错的,见下方推翻记录)。
|
|
132
|
-
|
|
133
|
-
#### 2.1.1 前端回显规则(源码级 · `_src/route_DatasetList.js`)
|
|
134
|
-
|
|
135
|
-
前端**只看首字符是否为 `[`**,据此决定是否 JSON 解析:
|
|
136
|
-
|
|
137
|
-
```js
|
|
138
|
-
// ① 读取(initCondition)—— 唯一判定逻辑
|
|
139
|
-
t.queryType = (t.queryType?.indexOf("[") > -1)
|
|
140
|
-
? JSON.parse(t.queryType || "[]") // 含 "[" → 解析成数组
|
|
141
|
-
: t.queryType || []; // 不含 → 原样保留(普通字符串)
|
|
142
|
-
```
|
|
143
|
-
|
|
144
|
-
```js
|
|
145
|
-
// ② 复选项定义(initConditionFormStore)—— 选项 id 是「短码」
|
|
146
|
-
queryType:{ itemType:"CHECKBOX", required:!0,
|
|
147
|
-
data:[{ id: ze.g.advance, content:"高级搜索" },
|
|
148
|
-
{ id: ze.g.filter, content:"筛选" }],
|
|
149
|
-
otherParams:{ minSelected:1 } }
|
|
150
|
-
```
|
|
151
|
-
|
|
152
|
-
```js
|
|
153
|
-
// ③ 短码枚举(lib.js)
|
|
154
|
-
function(e){ e.filter="filter"; e.advance="advance" }(i||(i={}))
|
|
155
|
-
```
|
|
156
|
-
|
|
157
|
-
```js
|
|
158
|
-
// ④ 新建条件默认值(仅 fieldKey 为空时)
|
|
159
|
-
this.fieldKey || (i.queryType = ["advance"]) // ← 注意:默认就是「数组」
|
|
160
|
-
```
|
|
161
|
-
|
|
162
|
-
```js
|
|
163
|
-
// ⑤ 保存 —— 表单值原样写回,不做类型转换
|
|
164
|
-
var l = e.conditionFormStore.getFormDatas();
|
|
165
|
-
r.queryType = l.queryType;
|
|
166
|
-
s.append("queryItems", JSON.stringify(r));
|
|
167
|
-
```
|
|
168
|
-
|
|
169
|
-
**推论(四条必须记牢)**
|
|
170
|
-
|
|
171
|
-
1. `CheckboxGroup` 用**严格相等**匹配:表单 value 的每个元素 vs `data[].id`。
|
|
172
|
-
2. 落库 `'["advance"]'` → 解析为 `["advance"]` → 元素 `"advance"` === 选项 id `"advance"` → **勾选 ✅**
|
|
173
|
-
3. 落库 `"advancedSearch"` → 不含 `[` → 保留为字符串 `"advancedSearch"` → 与选项 id 严格不等 → **不勾选 ❌**
|
|
174
|
-
4. **设计器自己写出的就是数组**(见 ④ 默认值、⑥ 接口返回);长码 `"advancedSearch"` 只可能由**脚本手写**产生 → 它是**错误值**。
|
|
175
|
-
|
|
176
|
-
#### 2.1.2 验证证据链(2026-09-11,报表 `1313798296523022337`,应用「进销存管理-共享表」)
|
|
177
|
-
|
|
178
|
-
**A. API 写入实验(`saveQueryItem`,同一条件往返改 4 种值)**
|
|
179
|
-
|
|
180
|
-
| 写入值 | 返回 | 回读落库 | UI「显示方式」 |
|
|
181
|
-
|---|---|---|---|
|
|
182
|
-
| `'["advance"]'` | **200** | `'["advance"]'` | **高级搜索 ☑ ✅** |
|
|
183
|
-
| `'["filter"]'` | **200** | `'["filter"]'` | 筛选 ☑ ✅ |
|
|
184
|
-
| `'["advance","filter"]'` | **200** | `'["advance","filter"]'` | 双选 ☑ ✅ |
|
|
185
|
-
| `"advancedSearch"`(长码) | **200** | `"advancedSearch"` | **两个都不勾 ❌** |
|
|
186
|
-
|
|
187
|
-
> ⚠️ 四者**全部 200**,不存在「写短码 → 500」。旧结论 500 的真实成因是**手写 multipart payload 的结构/字段不被服务端封装接受**,与 `queryType` 取值无关。
|
|
188
|
-
|
|
189
|
-
**B. 三条条件 UI 回显对照(CDP 真实鼠标点击 tag → 读弹窗 checkbox)**
|
|
190
|
-
|
|
191
|
-
| 条件 | 落库 `queryType` | UI「显示方式」 |
|
|
192
|
-
|---|---|---|
|
|
193
|
-
| 销售部门(**人工手工配置**) | `'["advance"]'` | **高级搜索 ☑** |
|
|
194
|
-
| 销售人员(脚本写长码) | `"advancedSearch"` | **两个都 ☐** |
|
|
195
|
-
| 销售日期(脚本写长码) | `"advancedSearch"` | **两个都 ☐** |
|
|
196
|
-
|
|
197
|
-
→ 脚本手工写的长码条件**全军覆没**,人工配置的数组条件**正确回显**。把两条长码条件改为 `'["advance"]'` 后,三条**全部回显 ☑ 高级搜索**,闭环验证通过。
|
|
198
|
-
|
|
199
|
-
**C. 设计器真实 `saveQueryItem` 接口返回(人工点击「确定」)**
|
|
200
|
-
|
|
201
|
-
```
|
|
202
|
-
Content-Disposition: form-data; name="queryItems"
|
|
203
|
-
|
|
204
|
-
{"id":"…","sheetId":"…","nameIndex":"0","text":"销售部门","displayType":"browser",
|
|
205
|
-
"showWhere":"","advancedSearchType":"openCondition","queryType":["advance"], … }
|
|
206
|
-
^^^^^^^^^^^^^^^^^^
|
|
207
|
-
数组(短码),非字符串长码
|
|
208
|
-
```
|
|
209
|
-
|
|
210
|
-
> 设计器上行 payload 里就是 `"queryType":["advance"]`(**数组 + 短码**)—— 这是平台的权威写法。
|
|
211
|
-
|
|
212
|
-
#### 2.1.3 🔴 真正根因:`updateQueryType` 会**批量覆盖所有条件**(最关键)
|
|
213
|
-
|
|
214
|
-
> **`POST /api/bs/edc/report/updateQueryType` 不是「只改报表级设置」** —— 它会把入参 `queryType` **全量写进该报表的每一条查询条件**,覆盖刚保存好的数组值。
|
|
215
|
-
> 这是「条件显示方式永远不勾选」的**真正单点根因**,也是历史定位一直抓不到的那个洞。
|
|
216
|
-
|
|
217
|
-
**验证矩阵**(同一报表连续调用,观察条件级 `queryType`)
|
|
218
|
-
|
|
219
|
-
| 调用 `updateQueryType(queryType=…)` | 三条条件级 `queryType` 变为 | 设计器回显 |
|
|
220
|
-
|---|---|---|
|
|
221
|
-
| `"advancedSearch"`(长码) | `advancedSearch` ×3 | **全不勾 ❌** |
|
|
222
|
-
| `"advance"`(裸短码) | `advance` ×3 | 不勾 ❌ |
|
|
223
|
-
| `"filter"` | `filter` ×3 | 不勾 ❌ |
|
|
224
|
-
| **`'["advance"]'`(数组短码)** | `'["advance"]'` ×3 | **全勾 ✅** |
|
|
225
|
-
|
|
226
|
-
**为什么历史定位一直失败**
|
|
227
|
-
|
|
228
|
-
```text
|
|
229
|
-
旧 CLI 的 save 流程: saveQueryItem(写 '["advance"]' ✅) → updateQueryType("advancedSearch" ❌)
|
|
230
|
-
↓ 刚写好的数组 ↓ 立刻被批量打回长码
|
|
231
|
-
设计器打开 → 不勾选
|
|
232
|
-
人工在页面直接配条件: 只走 saveQueryItem,不经过 updateQueryType → '["advance"]' 完好 → 正常勾选
|
|
233
|
-
```
|
|
234
|
-
|
|
235
|
-
于是「人工配的能勾、API 写的不能勾」,长期被误判为「平台前端缺陷,客户端不可修」。**实际是 CLI 自己把值写坏了。**
|
|
236
|
-
|
|
237
|
-
**硬约束**
|
|
238
|
-
|
|
239
|
-
1. **`updateQueryType` 的 `queryType` 必须传数组短码**:`'["advance"]'` / `'["filter"]'`,**与条件级同形态**。传长码 = 一键摧毁全表回显。
|
|
240
|
-
2. **保存条件的推荐调用顺序**:`saveQueryItem`(数组) → `updateQueryType`(**同一个数组值**)。
|
|
241
|
-
3. **不要**在保存后用长码 `updateQueryType`「对齐报表级显示形式」—— 它顺带把条件级也改坏。若只需报表级 `advancedSearchType`(如 `openCondition`),仍须把 `queryType` 传成数组形态。
|
|
242
|
-
4. 落库后**必须回读自检**:`e10-cli report query check-echo --report-id <id> --app-id <appId>`。
|
|
243
|
-
|
|
244
|
-
#### 2.1.4 落库门禁
|
|
245
|
-
|
|
246
|
-
| 检查 | 接口 | 通过标准 |
|
|
247
|
-
|------|------|----------|
|
|
248
|
-
| **条件级显示方式(落库)** | `POST /api/bs/edc/report/getQueryItemNew`(multipart `reportId` + `query:'{}'`) | 每条 `queryType` 是 **含 `[` 的 JSON 数组字符串**,元素 ∈ `advance` / `filter` |
|
|
249
|
-
| 报表级 + 条件级批量对齐 | `POST /api/bs/edc/report/updateQueryType` | `code=200`,且入参 `queryType` **为数组短码**(§2.1.3) |
|
|
250
|
-
|
|
251
|
-
**硬约束**
|
|
252
|
-
|
|
253
|
-
1. **写 `queryType` = JSON 数组字符串**:`'["advance"]'` / `'["filter"]'` / `'["advance","filter"]'`。**不要写长码 `"advancedSearch"`**(可落库但 UI 不回显)。
|
|
254
|
-
2. **写 `showWhere: ""`**(遗留字段,设计器一致行为)。
|
|
255
|
-
3. **回读判据**:`getQueryItemNew` 的 `queryType` **必须以 `[` 开头**。若是 `"advancedSearch"` → **回显必不勾**,需改写为 `'["advance"]'`。
|
|
256
|
-
4. **强制走 CLI**:Agent 禁止手写 multipart 调 `saveQueryItem`;统一 `e10-cli report query save|type|list|check-echo|fix-echo` / `validate query`。
|
|
257
|
-
5. 用户反馈「显示方式没勾选」时:**先 `check-echo` 回读 `queryType`**。若为长码 → **可修复的落库错误**,`fix-echo` 即恢复(**不要再解释为平台缺陷**);同时定位是否被 `updateQueryType` 长码覆盖过。
|
|
258
|
-
|
|
259
|
-
#### 2.1.5 报表级 vs 条件级(勿混淆)
|
|
260
|
-
|
|
261
|
-
| 层面 | 字段 | 正确值 | 存储形态 |
|
|
262
|
-
|---|---|---|---|
|
|
263
|
-
| **条件级**「显示方式」(编辑查询条件弹窗内) | `queryType` | `'["advance"]'` / `'["filter"]'` | **JSON 数组字符串**(§2.1) |
|
|
264
|
-
| **报表级**「高级搜索显示形式」(查询设置弹窗) | `queryType`(入参) | **也须 `'["advance"]'` / `'["filter"]'`** | 会被批量写入所有条件(§2.1.3) |
|
|
265
|
-
|
|
266
|
-
> 「查询设置」弹窗只有 `高级搜索显示形式 + 默认样式/展开条件` 等报表级开关;条件级的「显示方式 ☑高级搜索 ☑筛选」在**「编辑查询条件」**弹窗里,两者入口不同,但**落库字段同名、同形态、且共享覆盖关系**。
|
|
267
|
-
|
|
268
|
-
#### 2.1.6 ⚠️ 旧结论推翻记录(避免回退)
|
|
269
|
-
|
|
270
|
-
| 旧结论(2026-09-10/11 早期) | 现结论(2026-09-11 定案) |
|
|
271
|
-
|---|---|
|
|
272
|
-
| 落库必须写长码 `"advancedSearch"` | ❌ 错。落库必须写数组 `'["advance"]'` |
|
|
273
|
-
| 写短码 `"advance"` → 服务端 500 | ❌ 错。写数组短码 **200 正常落库** |
|
|
274
|
-
| 「UI 不勾选 = 平台缺陷,客户端不可修」 | ❌ 错。**改数组即可修复**,是脚本落库值写错 |
|
|
275
|
-
| `advancedSearch` 前端 0 次出现 → 服务端产物 | ⚠️ 部分成立(前台确实无此串),但它**不是**服务端要求的取值,而是脚本臆造的 |
|
|
276
|
-
| 前端 `edit` 直取长码灌表单 → 死循环 | ❌ 错。`edit` 灌的就是落库值;落库是数组时**正常勾选** |
|
|
277
|
-
| 条件级与报表级是两个独立字段,互不影响 | ❌ 错。`updateQueryType` 用 `queryType` **批量覆盖所有条件**(§2.1.3 真正根因) |
|
|
278
|
-
| `updateQueryType` 只改报表级「高级搜索显示形式」 | ❌ 错。它会把入参写进每条条件 → 长码一键摧毁全表回显 |
|
|
279
|
-
|
|
280
|
-
**旧结论怎么来的 / 为什么错**:早期用 JS 合成事件点击条件 tag,实际点到了**左侧字段面板**的「显示方式」(那是字段属性,非条件显示方式),读取勾选态得到假信号;且未把「人工配置的条件」作为金标准对照。**修复方式**:改用 **CDP `Input.dispatchMouseEvent` 真实鼠标事件**点条件 tag,读「编辑查询条件」弹窗,并以人工条件为参照。
|
|
281
|
-
|
|
282
|
-
**真正根因的发现路径**:给 `save` 加「落库后回读自检」时,发现**刚写入的数组被回读成长码** → 隔离实验证明只有 `saveQueryItem` 时数组完好,一旦再调 `updateQueryType` 即被批量覆盖 → 穷举入参证明 `updateQueryType` 是「全表条件 `queryType` 批量写」。**AI 自检回读是抓到它的关键手段**,务必保留。
|
|
283
|
-
|
|
284
|
-
#### 2.1.7 修复已有错误条件的操作
|
|
285
|
-
|
|
286
|
-
**首选(CLI 一键):**
|
|
287
|
-
|
|
288
|
-
```bash
|
|
289
|
-
e10-cli report query check-echo --report-id <id> --app-id <appId> # 诊断
|
|
290
|
-
e10-cli report query fix-echo --report-id <id> --app-id <appId> # 修正为数组短码
|
|
291
|
-
```
|
|
292
|
-
|
|
293
|
-
**手动脚本(等价实现,含 `updateQueryType` 数组化):**
|
|
294
|
-
|
|
295
|
-
```python
|
|
296
|
-
# 读取 → 把长码条件就地改为数组短码 → 保存 → 再用数组形态对齐报表级(批量)
|
|
297
|
-
import json, copy, sys
|
|
298
|
-
import _eb
|
|
299
|
-
|
|
300
|
-
APP, RID = "<appId>", "<reportId>"
|
|
301
|
-
DROP = {"browserTypeStr","selectOptionsStr","conditionStr","sqlOptionsStr",
|
|
302
|
-
"filterParamStr","handleDefaultValue","updateTime"} # 回显列,服务端不接受
|
|
303
|
-
|
|
304
|
-
def read():
|
|
305
|
-
r = _eb.post("/api/bs/edc/report/getQueryItemNew",
|
|
306
|
-
data={"reportId": RID, "query": "{}"}, app_id=APP)
|
|
307
|
-
return ((r.get("data") or {}).get("list")) or []
|
|
308
|
-
|
|
309
|
-
def save(item):
|
|
310
|
-
it = {k: v for k, v in item.items() if k not in DROP}
|
|
311
|
-
return _eb.post("/api/bs/edc/report/saveQueryItem",
|
|
312
|
-
data={"reportId": RID, "queryItems": json.dumps(it, ensure_ascii=False)},
|
|
313
|
-
app_id=APP)
|
|
314
|
-
|
|
315
|
-
for q in read():
|
|
316
|
-
if not str(q.get("queryType") or "").startswith("["): # 长码/空 → 修正
|
|
317
|
-
it = copy.deepcopy(q)
|
|
318
|
-
it["queryType"] = '["filter"]' if q.get("queryType") == "filter" else '["advance"]'
|
|
319
|
-
print(q["text"], "->", save(it).get("code"))
|
|
320
|
-
|
|
321
|
-
# ⚠️ 关键:若还要对齐报表级高级搜索显示形式,updateQueryType 的 queryType 必须用数组形态,
|
|
322
|
-
# 否则它会把全部条件重新打回长码(§2.1.3)。
|
|
323
|
-
_eb.post("/api/bs/edc/report/updateQueryType",
|
|
324
|
-
data={"reportId": RID, "queryType": '["advance"]', "advancedSearchType": "openCondition"},
|
|
325
|
-
app_id=APP)
|
|
326
|
-
```
|
|
327
|
-
|
|
328
|
-
**设计器真实保存形态(金标准,从 `saveQueryItem` 接口返回)**
|
|
329
|
-
|
|
330
|
-
```json
|
|
331
|
-
{
|
|
332
|
-
"id": "…", "sheetId": "<reportId>", "nameIndex": "0",
|
|
333
|
-
"text": "销售部门",
|
|
334
|
-
"displayType": "browser",
|
|
335
|
-
"browserType": [{ "id": "3332180495306215437", "name": "部门", "type": "department",
|
|
336
|
-
"module": "hrm", "groupId": "<groupId>", "tenantKey": "<tenantKey>",
|
|
337
|
-
"dataId": "2005096031068185488", "labelId": "52148",
|
|
338
|
-
"licenseModule": "hrm", "systemDefault": 1, "ebuliderDataBrowser": false, "disable": 0 }],
|
|
339
|
-
"browserTypeStr": "[{\"id\":\"HrmDepartmentComInfo\"}]",
|
|
340
|
-
"showWhere": "",
|
|
341
|
-
"queryType": ["advance"],
|
|
342
|
-
"dateType": "ymd",
|
|
343
|
-
"filterParam": { "optionTile": {}, "isTile": false, "multiple": true, "dataOptions": [],
|
|
344
|
-
"enableOption": false, "required": false, "dateSelectDefaultValue": "",
|
|
345
|
-
"numberSelectDefaultValue": "", "eBuilderForm": "", "titleField": "" },
|
|
346
|
-
"defaultValue": "[[],\"\"]", "handleDefaultValue": "[[],\"\"]",
|
|
347
|
-
"filterType": "default", "fieldOptions": {},
|
|
348
|
-
"conditions": [{ "dataSetId": "…", "fieldId": "…", "relation": "Equals" }],
|
|
349
|
-
"asNameIndex": 1, "showOrder": 1
|
|
350
|
-
}
|
|
351
|
-
```
|
|
352
|
-
|
|
353
|
-
---
|
|
354
|
-
|
|
355
|
-
### 2.1.9 🔴 `advancedSearchType` —— **禁止静默注入**(会改掉报表页查询区的「样式」)
|
|
356
|
-
|
|
357
|
-
> **事故(2026-09-14)**:在报表 `1314970921403138199` 加 5 条查询条件后,用户质问
|
|
358
|
-
> 「怎么又把查询条件的样式改了,这个之前强调过不能动页面上原有展示格式」。
|
|
359
|
-
> 定位结论:**用户的 payload 里根本没有 `advancedSearchType`**,是 CLI `e10-cli report query save`
|
|
360
|
-
> 在保存时**无条件注入** `advancedSearchType: 'openCondition'`(=「展开条件」)。
|
|
361
|
-
|
|
362
|
-
**字段语义(源码级)**
|
|
363
|
-
|
|
364
|
-
| 项 | 结论 |
|
|
365
|
-
|---|---|
|
|
366
|
-
| 实体字段 | `QueryFieldCommon.advancedSearchType`(`@ApiModelProperty("高级搜索类型")`) |
|
|
367
|
-
| 唯一功能读点 | `SheetServiceImpl`:取**第一条**高级搜索条件的 `advancedSearchType`,`=='openCondition'` → `isOpenCondition=true` |
|
|
368
|
-
| 页面效果 | `isOpenCondition=true` → 报表页查询区**展开铺开**(「展开条件」);否则 → **默认样式**(右上角搜索图标,点击才展开) |
|
|
369
|
-
| 设计器入口 | 报表级「查询设置」弹窗的 **高级搜索显示形式:默认样式 / 展开条件** |
|
|
370
|
-
| 人工条件(金标准) | **该键不存在**(`undefined`),平台不主动写 |
|
|
371
|
-
|
|
372
|
-
**硬规则**
|
|
373
|
-
|
|
374
|
-
1. **入参没有该键 → 就别写该键**(保持线上原值)。CLI 只在显式 `--advanced-search-type openCondition` 时才写。
|
|
375
|
-
2. `updateQueryType`(批量对齐 `queryType`)**不得夹带** `advancedSearchType`。
|
|
376
|
-
3. 该字段属于**展示样式**,与「显示方式」(`queryType`:高级搜索/筛选)**是两回事**,不得绑定在一起写。
|
|
377
|
-
4. 用户没说「展开条件」时,任何情况下都不要写它。
|
|
378
|
-
|
|
379
|
-
**判别与修复**
|
|
380
|
-
|
|
381
|
-
```bash
|
|
382
|
-
# 判别:条件里 advancedSearchType 非空 = 被注入过
|
|
383
|
-
e10-cli report query list --report-id <id> --app-id <appId>
|
|
384
|
-
|
|
385
|
-
# 修复(默认 dry-run;--apply 落库;只清该字段,保留 id/顺序/queryType)
|
|
386
|
-
e10-cli report fix query-style --report-id <id> --app-id <appId> [--id <itemId>...] [--apply]
|
|
387
|
-
|
|
388
|
-
# 附带修复「不带 id 保存 → 变成新增」造成的重复条件行(删除必须显式列 id)
|
|
389
|
-
e10-cli report fix query-style --report-id <id> --app-id <appId> --delete-id <itemId> --apply
|
|
390
|
-
```
|
|
391
|
-
|
|
392
|
-
> ⚠️ **另一个必须记住的坑**:`saveQueryItem` **必须带 `id` 才是原地更新**;
|
|
393
|
-
> 不带 `id` 会**INSERT 一条新条件**(`asNameIndex` 自增),报表上出现重复条件。
|
|
394
|
-
> 更新存量条件时,payload 一律从线上回读对象派生并**保留 `id`**。
|
|
395
|
-
|
|
396
|
-
---
|
|
397
|
-
|
|
398
|
-
### 2.1.10 🔴 「默认值三件套」漏写 → 设计器弹窗整段坏掉(2026-09-14 事故)
|
|
399
|
-
|
|
400
|
-
**用户看到的现象**("查询条件的样式被改了"):
|
|
401
|
-
|
|
402
|
-
| 现象 | 说明 |
|
|
403
|
-
|------|------|
|
|
404
|
-
| 「默认值类型」= **请选择** | 本该是「常规」或「自定义」 |
|
|
405
|
-
| 「默认值」区**同时铺开所有控件变体** | 请输入 / 开始日期-结束日期 / 选择日期时间 / 请选择 / 选择日期 / 选择月份 / 选择年份 … 一屏全来 |
|
|
406
|
-
| 「日期类型 / 显示位置 / 条件必填 / 查询条件」**看不见** | 被上面那一大片顶出可视区(弹窗高度固定),并非真被删除 |
|
|
407
|
-
|
|
408
|
-
**根因**:弹窗的默认值区由 `defaultValueType` 驱动渲染。不写它 → 前端取不到模式 → 每个变体都渲染一遍。
|
|
409
|
-
|
|
410
|
-
**数据模型(验证参照报表 `1314938962594906121`,人工配置的权威形态)**
|
|
411
|
-
|
|
412
|
-
| 键 | 含义 | 参照「年月」取值 | 参照「部门」取值 | 参照「人员/加班/聘用」取值 |
|
|
413
|
-
|----|------|------------------|------------------|----------------------------|
|
|
414
|
-
| `defaultValueType` | 模式:`default`=常规 / `custom`=自定义(前端 label:`55337`=常规、`53999`=自定义) | `custom` | `default` | `default` |
|
|
415
|
-
| `defaultValue` | **当前生效**的值 | `["{yearmonth:-0}",""]` | `[[],""]` | `["",""]` |
|
|
416
|
-
| `type1DefaultValue` | 「常规」模式下保存的值 | `""` | `[[],""]` | `["",""]` |
|
|
417
|
-
| `type2DefaultValue` | 「自定义」模式下保存的值 | `["{yearmonth:-0}",""]` | `""` | `""` |
|
|
418
|
-
| `handleDefaultValue` | 平台解析后的实际值(**服务端自己算并回写**) | `["2026-09",""]` | `[[],""]` | `["",""]` |
|
|
419
|
-
|
|
420
|
-
> ⚠️ **全部是 JSON 字符串**(`"[[],\""]"` 这种),不是对象/数组本身。
|
|
421
|
-
> ⚠️ 日期占位符(`{yearmonth:-0}` 等)**不用自己解析**:落库时平台会把 `handleDefaultValue` 回写成 `["2026-09",""]`(验证)。
|
|
422
|
-
> 设计器「新建条件」模板本身带 `defaultValueType:"default"` + `defaultValue:["",""]`,所以**人工配的条件永远不会缺** —— 只有用 API 建条件时才会漏。
|
|
423
|
-
|
|
424
|
-
**修复**
|
|
425
|
-
|
|
426
|
-
```bash
|
|
427
|
-
# 只补缺失项(默认模式、空默认值 —— 弹窗恢复正常渲染,不改取数范围)
|
|
428
|
-
e10-cli report fix query-default --report-id <id> --app-id <appId> --apply
|
|
429
|
-
|
|
430
|
-
# 点名某条用「自定义」默认值(如 年月默认当月,与参照报表一致)
|
|
431
|
-
e10-cli report fix query-default --report-id <id> --app-id <appId> \
|
|
432
|
-
--set '年月=custom:["{yearmonth:-0}",""]' --set '部门=default:[[],""]' --apply
|
|
433
|
-
|
|
434
|
-
# 顺带把「排序」对齐为设计器模板值 0
|
|
435
|
-
e10-cli report fix query-default --report-id <id> --app-id <appId> --all --show-order 0 --apply
|
|
436
|
-
```
|
|
437
|
-
|
|
438
|
-
落库后脚本会自动回读校验(`stillMissingDefaultValueType` 必须为空)。
|
|
439
|
-
|
|
440
|
-
---
|
|
441
|
-
|
|
442
|
-
### 2.1.11 ★ 查询条件合规体检(Q1~Q10 判据总表 · `e10-cli report verify query`)
|
|
443
|
-
|
|
444
|
-
> 把本章所有坑的**判据**固化成一条只读命令。搭完条件、改完条件、用户投诉后,第一件事就是跑它。
|
|
445
|
-
> **命令**:`e10-cli report verify query <reportId> <appId> [--json] [--fix]`(等价别名 `e10-cli report query verify ...`)
|
|
446
|
-
> 有 FAIL → exit 1;`--fix` 只做幂等安全项(清样式字段 / 补三件套 / 短码化),**绝不新增或删除条件**。
|
|
447
|
-
|
|
448
|
-
| # | 判据 | 级别 | 不通过时页面上的表现 | 出处 |
|
|
449
|
-
|---|------|------|----------------------|------|
|
|
450
|
-
| Q1 | `queryType` 是 **JSON 数组短码**(以 `[` 开头且可 parse 成数组) | FAIL | 设计器「显示方式」复选框是空的 | §2.1.1 / QUERY-1 |
|
|
451
|
-
| Q2 | `advancedSearchType` **必须为空** | FAIL | 报表页查询区从「默认样式」变成「展开条件」铺开 | §2.1.9 / QUERY-5 |
|
|
452
|
-
| Q3 | `defaultValueType` 有值(`default`\|`custom`) | FAIL | 弹窗「默认值类型」=请选择,默认值区把**所有**控件变体炸开 | §2.1.10 / QUERY-7 |
|
|
453
|
-
| Q4 | `defaultValue` 有值(JSON 字符串) | WARN | 默认值区仍可能铺开 | QUERY-7 |
|
|
454
|
-
| Q5 | `type1DefaultValue`(常规)/ `type2DefaultValue`(自定义)随模式在位 | WARN | 切换模式时值丢失 | QUERY-7 |
|
|
455
|
-
| Q6 | `id` 存在且 `asNameIndex` **唯一且 >0** | FAIL | 重复条件 / 保存变新增 | QUERY-6 |
|
|
456
|
-
| Q7 | `displayType=browser` 时 `browserType` 富对象非空 + `browserTypeStr` 非空 | FAIL | 关联类型为空、条件点不开 | §2.1.2 / QUERY-3 |
|
|
457
|
-
| Q8 | `filterParam.required` / `showType` 在位 | WARN | 「显示位置 / 条件必填」等弹窗后段字段为空 | — |
|
|
458
|
-
| Q9 | `showOrder` 是否为设计器模板值 `0` | INFO | 弹窗「排序」与人工配置有可见差异 | QUERY-7 |
|
|
459
|
-
| Q10 | 报表级 `queryType` **是否混杂**(同时存在多种写法) | WARN | 曾被 `updateQueryType` 批量覆盖过 | §2.1.3 / QUERY-2 |
|
|
460
|
-
|
|
461
|
-
> **不要拿 `getQueryConfig` 当判据** —— 本环境它恒返回 `data:null`(QUERY-4)。判据一律走 `getQueryItemNew` 回读。
|
|
462
|
-
|
|
463
|
-
---
|
|
464
|
-
|
|
465
|
-
### 2.1.2 关联类型 `browserType`:必须写「富对象」,不是 `[{id}]` 简写(强制)
|
|
466
|
-
|
|
467
|
-
> **事故**:同报表查询条件「销售部门」绑定字段 `originFieldType=Department`,但设计器关联类型显示为空/默认**人员**。**定案根因:`browserType` 写成了简写 `[{"id":"HrmDepartmentComInfo"}]`,缺少 `name`/`type` 等字段 → 前端无法解析显示名 → 退回默认「人员」标签页。**
|
|
468
|
-
|
|
469
|
-
**设计器真实形态(金标准)**:`browserType` 是 **全字段富对象数组**,关键字段 `name`(显示名)、`type`(`department`/`employee`)、`module`、`groupId`、`tenantKey`、`dataId`、`labelId`、`id`。**`browserTypeStr` 才是落库判据**(服务端存 `[{"id":"HrmDepartmentComInfo"}]` 形式的字符串)。
|
|
470
|
-
|
|
471
|
-
| 字段 `originFieldType` | `displayType` | `browserTypeStr`(落库) | 设计器关联类型 |
|
|
472
|
-
|------------------------|---------------|--------------------------|----------------|
|
|
473
|
-
| `Employee` | `browser` | `[{"id":"HrmEmployeeComInfo"}]` | **人员** |
|
|
474
|
-
| `Department` | `browser` | `[{"id":"HrmDepartmentComInfo"}]` | **部门** |
|
|
475
|
-
| `DepartmentAllPath` | `browser` | `[{"id":"HrmDepartmentAllPathComInfo"}]` | 部门全路径 |
|
|
476
|
-
|
|
477
|
-
**推荐获取富对象的正确姿势(最稳)**:**不要手拼** `browserType` 富对象;用 `saveQueryItem` 时:
|
|
478
|
-
1. `displayType: "browser"` + `browserTypeStr` 写 `[{"id":"HrmDepartmentComInfo"}]`;
|
|
479
|
-
2. 或在设计器里手动选一次「部门」让前端生成富对象后接口返回复用(本环境已验证:手动选后可正确回显「部门」)。
|
|
480
|
-
|
|
481
|
-
**硬约束**
|
|
482
|
-
|
|
483
|
-
1. `displayType: browser` **禁止** `browserTypeStr: "[]"`;必须按字段 `originFieldType` 写入对应 ComInfo id。
|
|
484
|
-
2. 仅写 `[{"id":...}]` 简写**服务端可接受**(`browserTypeStr` 落库正确),但**前端回显可能为空**;若要求 UI 正确显示,需富对象。
|
|
485
|
-
3. `e10-cli report query save` 内置 `applyQueryDisplayType()` 自动补 `browserType`(未显式指定 `displayType` 时);不匹配时输出 **WARN**。
|
|
486
|
-
4. 回读核对:`browserTypeStr` 不得为 `"[]"`(丢了 → 退回「人员」)。
|
|
487
|
-
5. 跳过自动推导用 `--skip-display-type`(仅在确实要手填时)。
|
|
488
|
-
|
|
489
|
-
---
|
|
490
|
-
|
|
491
|
-
```javascript
|
|
492
|
-
// 显示方式:条件级落库值 = JSON 数组字符串(前端唯一能回显勾选的形态)
|
|
493
|
-
function resolveQueryType(userHint) {
|
|
494
|
-
const s = String(userHint || '').toLowerCase();
|
|
495
|
-
if (/筛选|filter/.test(s) && !/高级搜索|advanced/.test(s)) return '["filter"]';
|
|
496
|
-
return '["advance"]'; // 默认「高级搜索」· 不可不选
|
|
497
|
-
}
|
|
498
|
-
// 注意:showWhere 一律写 ''(遗留字段)
|
|
499
|
-
// 条件级选项 id 是短码 advance/filter;落库必须是含 "[" 的 JSON 数组字符串,
|
|
500
|
-
// 否则前端首字符判定落空 → 退化为普通字符串 → 严格相等失败 → UI 不勾选(见 §2.1)
|
|
501
|
-
// 报表级 updateQueryType 的 queryType 也须用数组形态(它会批量覆盖所有条件,见 §2.1.3)
|
|
502
|
-
```
|
|
503
|
-
|
|
504
|
-
### 2.1.8 「显示方式没勾选」诊断卡(对接用户质询时用)
|
|
505
|
-
|
|
506
|
-
| 用户说法 | 你的回答要点 |
|
|
507
|
-
|---|---|
|
|
508
|
-
| 「页面上显示方式没勾选」 | 先 `getQueryItemNew` 回读 `queryType`:**是否以 `[` 开头**? |
|
|
509
|
-
| 「回读是 `'["advance"]'` 却仍不勾」 | 极罕见;先强刷设计器页面(CDN/缓存),再核对条件 `id` 是否为最新 |
|
|
510
|
-
| 「回读是 `"advancedSearch"` 长码」 | **这是落库值写错了**,属可修复问题 → 改写为 `'["advance"]'`,重开弹窗即勾选 |
|
|
511
|
-
| 「能修吗?」 | **能修**:把 `queryType` 改为 JSON 数组字符串(§2.1.7 脚本 / `e10-cli report query fix-echo`) |
|
|
512
|
-
| 交付口径 | 「已修正落库值,条件显示方式回显正常」——**不要再解释为平台缺陷** |
|
|
513
|
-
|
|
514
|
-
**判据一行流**
|
|
515
|
-
|
|
516
|
-
```text
|
|
517
|
-
queryType 以 "[" 开头 → 数组 → UI 勾选正常 ✅
|
|
518
|
-
queryType 是其它字符串 → 退化 → UI 不勾选 ❌(改写为 '["advance"]')
|
|
519
|
-
```
|
|
520
|
-
|
|
521
|
-
> (`route_DatasetList.js` 179879B / `route_ReportDesigner.js` 702877B / `lib.js` 661658B);
|
|
522
|
-
> UI 回显用 `_q_real2.py`(CDP `Input.dispatchMouseEvent` 真实鼠标点击条件 tag + 读「编辑查询条件」弹窗 checkbox)。
|
|
523
|
-
|
|
524
|
-
### 2.1.2.1 关联浏览分类元数据接口(⚠️ 富对象唯一正确来源)
|
|
525
|
-
|
|
526
|
-
> **勿手拼富对象!** 富对象的 13 个字段值全部来自服务端接口,手拼易错(`labelId`/`dataId` 无法猜)。
|
|
527
|
-
> 本接口 2026-09-11 定位、**2026-09-14 修正为 GET `browserBeanSearch`**,为「部门 / 人员 / 岗位 …」全部关联类型的权威数据源。
|
|
528
|
-
|
|
529
|
-
```http
|
|
530
|
-
GET /api/bcw/relevanceBrowser/browserBeanSearch?searchValue=<中文分类名>
|
|
531
|
-
Header: ebbusinessid: <appId>
|
|
532
|
-
→ data.data[] 每条 = 13 键富对象
|
|
533
|
-
```
|
|
534
|
-
|
|
535
|
-
> 🔴 **2026-09-14 修正**:旧文档写的 `POST /api/bcw/relevanceBrowser/getBrowserBean` 在**本环境恒返回 `{"code":500,"msg":"接口错误"}`**(前端其实把 `browserBeanSearch` 的响应**本地拦截**了 —— 见 `lib.js` 里 `relationList()` 分支,所以它在页面上看起来"能用")。
|
|
536
|
-
> 可用的是 **GET `browserBeanSearch`**;`searchValue` 必须用**中文分类名**(拼音检索服务端不支持:`bm` / `ry` 返回 0 条),空串只返回档案/工作流等非 HRM 分类。
|
|
537
|
-
> CLI 已内置此回退:`themes/e10-cli report query save` 的 `fetchBrowserBeanSearch()`;`displayType=browser` 且 `browserType` 仅为 `[{id}]` 简写时**自动升级为富对象**。
|
|
538
|
-
|
|
539
|
-
**验证取值(租户 `tmxislnm9p` / 应用 1178336857624084480)**
|
|
540
|
-
|
|
541
|
-
```http
|
|
542
|
-
GET …/browserBeanSearch?searchValue=部门 → 命中 3 条,取 name=部门
|
|
543
|
-
GET …/browserBeanSearch?searchValue=人员 → 命中 3 条,取 name=人员
|
|
544
|
-
```
|
|
545
|
-
|
|
546
|
-
**「部门」完整富对象(验证取值)**
|
|
547
|
-
|
|
548
|
-
```json
|
|
549
|
-
{"id":"2005096031068185488","tenantKey":"all_teams","deleteType":0,
|
|
550
|
-
"dataId":"2005096031068185488","licenseModule":"hrm","labelId":"52148",
|
|
551
|
-
"title":"人事: 部门","disable":0,"systemDefault":1,"ebuliderDataBrowser":false,
|
|
552
|
-
"name":"部门","module":"hrm","type":"department","groupId":"8574699142778669114"}
|
|
553
|
-
```
|
|
554
|
-
|
|
555
|
-
**「人员」完整富对象(验证取值)**
|
|
556
|
-
|
|
557
|
-
```json
|
|
558
|
-
{"id":"2005096031068185492","tenantKey":"all_teams","deleteType":0,
|
|
559
|
-
"dataId":"2005096031068185492","licenseModule":"hrm","labelId":"29511",
|
|
560
|
-
"title":"人事: 人员","disable":0,"systemDefault":1,"ebuliderDataBrowser":false,
|
|
561
|
-
"name":"人员","module":"hrm","type":"resource","groupId":"8574699142778669114"}
|
|
562
|
-
```
|
|
563
|
-
|
|
564
|
-
> ⚠️ 两条的 `id` 都是**业务 id**(= `dataId`,部门 …488 / 人员 …492),**不等于** ComInfo 短 id。
|
|
565
|
-
> 因此校验「关联类型对不对」**不能按 id 比**,要按 `name`(人员/部门)或 `type`(resource/department)判 —— 否则会误报"不匹配"(已修 `e10-cli report query save`)。
|
|
566
|
-
> 同一环境里还有近名分类:`部门字段`(…498) / `人员字段`(…502),按 `name` **精确**取,勿用 `indexOf`。
|
|
567
|
-
|
|
568
|
-
**落库判据对照**
|
|
569
|
-
|
|
570
|
-
| 关联类型 | `browserTypeStr`(落库判据) | 富对象 `name` / `type` |
|
|
571
|
-
|---|---|---|
|
|
572
|
-
| 部门 | `[{"id":"HrmDepartmentComInfo"}]` | 部门 / `department` |
|
|
573
|
-
| 人员 | `[{"id":"HrmEmployeeComInfo"}]` | 人员 / `resource` |
|
|
574
|
-
| 部门全路径 | `[{"id":"HrmDepartmentAllPathComInfo"}]` | 部门字段 / `departmentDesc` |
|
|
575
|
-
|
|
576
|
-
**修复存量条件(最小侵入,已验证 HTTP 200)**
|
|
577
|
-
|
|
578
|
-
```python
|
|
579
|
-
# 1) 读取
|
|
580
|
-
q = POST /api/bs/edc/report/getQueryItemNew (multipart: reportId + query:'{}')
|
|
581
|
-
items = q["data"]["list"] # ⚠️ 在 data.list,不是 data.queryItems
|
|
582
|
-
# 2) 取富对象
|
|
583
|
-
bean = GET /api/bcw/relevanceBrowser/browserBeanSearch?searchValue=人员 → name=="人员" 那条
|
|
584
|
-
# 3) 替换 + 同步 browserTypeStr + 保存
|
|
585
|
-
item["browserType"] = [bean]
|
|
586
|
-
item["browserTypeStr"] = json.dumps([{"id":"HrmEmployeeComInfo"}], ensure_ascii=False)
|
|
587
|
-
POST /api/bs/edc/report/saveQueryItem (multipart: reportId + queryItems 单对象JSON)
|
|
588
|
-
```
|
|
589
|
-
|
|
590
|
-
**UI 验证要点**:打开「编辑查询条件」弹窗,查 `.ui-browser-type-search-input` 的 `value`:
|
|
591
|
-
- `""` + 控件容器带 `is-empty` 类 → 关联类型**丢失**
|
|
592
|
-
- `"人员"` / `"部门"` → **正确回显** ✅
|
|
593
|
-
|
|
594
|
-
> 验证:修复前「销售人员」`value=""`(`is-empty`);修复后 `value="人员"` ✅
|
|
595
|
-
|
|
596
|
-
---
|
|
597
|
-
|
|
598
|
-
## 二点五、saveQueryItem 始终 500 定位(强制)
|
|
599
|
-
|
|
600
|
-
> **事故**:议题类报表搭建时,改字段/单条/空数组/`queryConfig`/`sheetId` 均 500 → 根因是**调用形态**,不是业务字段内容。
|
|
601
|
-
|
|
602
|
-
| 检查顺序 | 项 | 通过标准 |
|
|
603
|
-
|----------|----|----------|
|
|
604
|
-
| 1 | Content-Type | `multipart/form-data`,字段名 `reportId`、`queryItems` |
|
|
605
|
-
| 2 | `queryItems` 形态 | **单个对象** JSON;禁止数组、禁止空 `{}` |
|
|
606
|
-
| 3 | `conditions` | **非 null 数组**,至少 1 个 `{dataSetId, fieldId, relation}` |
|
|
607
|
-
| 4 | Header | `ebBusinessId` = 报表所属 **appId**;`eteamsid` + Cookie |
|
|
608
|
-
| 5 | 多条条件 | **多次** POST,每次一条;不要一次塞数组 |
|
|
609
|
-
| 6 | 对照金标准 | 先 `getQueryItem` 拉已有报表一条,改 `text`/`fieldId` 再 save |
|
|
610
|
-
|
|
611
|
-
**不要**:为排 500 去开浏览器扫页(浪费);先按上表自检。仍 500 时看响应 `msg` 是否权限/报表不存在,再问用户。
|
|
612
|
-
|
|
613
|
-
**优先 CLI**(强制):
|
|
614
|
-
|
|
615
|
-
```bash
|
|
616
|
-
# 保存条件(自动默认条件级 queryType='["advance"]',并 updateQueryType)
|
|
617
|
-
e10-cli report query save --report-id <id> --app-id <appId> --item queryItem.json
|
|
618
|
-
e10-cli report query save ... --show-where "筛选" # 仅用户点名筛选时
|
|
619
|
-
e10-cli report query type --report-id <id> --app-id <appId> # 只对齐报表级显示方式勾选
|
|
620
|
-
e10-cli report query list --report-id <id> --app-id <appId>
|
|
621
|
-
e10-cli report validate query --map-show-where "高级搜索"
|
|
622
|
-
e10-cli report validate query --validate-show-where --file item.json
|
|
623
|
-
# queryItem.json = 单条对象(禁止数组);须含非空 conditions;条件级 queryType='["advance"]'
|
|
624
|
-
```
|
|
625
|
-
|
|
626
|
-
**不卡死(强制)**:`saveQueryItem` / `e10-cli report query save` 按形态自检并重试 **至多 1 次** 仍失败 → **立即提示用户**(可在设计器手动配查询条件)→ **继续**权限/其它布局/交付主表 → 任务收尾再自动补试 1 次。**禁止**在查询条件步骤死循环。见 `failure-cleanup-and-nonblocking-guide.md` §二。
|
|
627
|
-
|
|
628
|
-
**与布局 500 区分**:`saveReportDevInfo` 的 border `style` 须为**数字**(如 `1`)与查询无关;查询 500 优先查本节。
|
|
629
|
-
|
|
630
|
-
---
|
|
631
|
-
|
|
632
|
-
| 需求 | displayType | relation | 备注 |
|
|
633
|
-
|------|-------------|----------|------|
|
|
634
|
-
| 文本(包含) | `text` | `Contain` | 勿写 `select` |
|
|
635
|
-
| 文本(等于) | `text` | `Equals` | |
|
|
636
|
-
| **日期区间**(日/时间) | `date` / `date.ymd` | `between` | 见 §3.1 自动匹配 |
|
|
637
|
-
| **年月/年** | `date.ym` / `date` | `between` | 见 §3.1 |
|
|
638
|
-
| 下拉 | `select` | `Equals` | **必须**自动拉选项写入 `selectOptions`(§3.2) |
|
|
639
|
-
| 数字范围 | `number` | 默认 | |
|
|
640
|
-
| 人员浏览按钮 | `browser` | `Equals` | 人员类字段 |
|
|
641
|
-
|
|
642
|
-
**日期 displayType 与字段 format**
|
|
643
|
-
|
|
644
|
-
| 数据集字段 format | 查询条件 displayType |
|
|
645
|
-
|-------------------|----------------------|
|
|
646
|
-
| `yyyy-MM-dd`(及带时分秒) | `date.ymd` |
|
|
647
|
-
| `yyyy-MM` | `date.ym` |
|
|
648
|
-
| `yyyy` / 仅「年」 | `date` |
|
|
649
|
-
| 其他日期 | `date` |
|
|
650
|
-
|
|
651
|
-
首条查询条件可设 `advancedSearchType: "openCondition"`(如集团军默认展开)。
|
|
652
|
-
|
|
653
|
-
---
|
|
654
|
-
|
|
655
|
-
### 3.1 查询条件类型自动匹配(强制)
|
|
656
|
-
|
|
657
|
-
> Agent 配置 / 修复查询条件时,**禁止**一律写成 `text`。必须按 **条件显示名 + 数据集字段类型/format** 自行判断。
|
|
658
|
-
|
|
659
|
-
**判定顺序**(命中即停):
|
|
660
|
-
|
|
661
|
-
| 优先级 | 信号(名称或字段元数据) | displayType | relation | 设计器形态 |
|
|
662
|
-
|--------|--------------------------|-------------|----------|------------|
|
|
663
|
-
| 1 | 名称含「年月」;或 format=`yyyy-MM` | `date.ym` | `between` | 年月区间 |
|
|
664
|
-
| 2 | 名称含「年份」「年度」或纯「年」;format=`yyyy` | `date` | `between` | 日期(年) |
|
|
665
|
-
| 3 | 名称含「日期」「时间」「时段」「期间」;或 `fieldType`/`originFieldType` ∈ Date/DateTime/Time/datetime | `date.ymd`(format 非 yyyy-MM 时)或 `date` | **`between`** | **日期区间** |
|
|
666
|
-
| 4 | 人员 / Employee / 浏览按钮字段 | `browser` | `Equals` | 人员 |
|
|
667
|
-
| 5 | **Select / 下拉框 / Check**(`compType`/`type`/`originFieldType` 为 Select)或需求明确下拉 | `select` | `Equals` | 下拉(**§3.2 必拉选项**) |
|
|
668
|
-
| 6 | 其他 | `text` | `Contain`(模糊)或 `Equals` | 文本 |
|
|
669
|
-
|
|
670
|
-
**硬约束**
|
|
671
|
-
|
|
672
|
-
1. 日期/时间类 **必须** `relation: "between"`,**禁止** `Equals` + `displayType: text`(事故:签订日期被配成文本等于)。
|
|
673
|
-
2. 判定依据优先:`fieldsAndOriginFields` 的 `fieldType` / `originFieldType` / `config.format`;名称作辅助(如条件叫「签订日期」字段叫「合同签订日期」)。
|
|
674
|
-
3. 写成日期区间时同步带齐 §四:`filterParam.enableOption=true`、21 项 `dataOptions`、`selectOptions=[]`。
|
|
675
|
-
4. **`displayType: select` 时禁止 `selectOptions: []`** — 必须按 §3.2 按匹配字段自动获取选项(事故:供应商等级下拉无选项)。
|
|
676
|
-
5. 回读 `getQueryItem`:核对 `displayType` + `conditions[0].relation` +(下拉时)`selectOptions.length > 0` 且 `selectKey`/`selectValue` 方向正确。
|
|
677
|
-
6. **定点场景**:用户只点一条条件 → 只改该条,禁止重配全部查询(`targeted-fix-guide.md`)。
|
|
678
|
-
|
|
679
|
-
---
|
|
680
|
-
|
|
681
|
-
### 3.2 下拉查询条件:按匹配字段自动获取选项(强制)
|
|
682
|
-
|
|
683
|
-
> **事故**:报表「供应商-1」`1312703681350901760`,「供应商等级」已是 `displayType: select`,但 `selectOptions: []` → 预览/高级搜索无选项映射。
|
|
684
|
-
|
|
685
|
-
当判定为下拉(§3.1 优先级 5)或用户要求下拉时:
|
|
686
|
-
|
|
687
|
-
1. 从 `conditions[0].fieldId` 解析三段 fieldKey:`{dataSetId}.{sourceId}.{fieldName}`
|
|
688
|
-
- `fieldName` 在报表内多为 `field_{雪花ID}`(绑定 fieldsKey)
|
|
689
|
-
- **取选项时** `fieldName` 参数必须用 **裸雪花 ID**(去掉 `field_` 前缀)
|
|
690
|
-
2. 调用:
|
|
691
|
-
|
|
692
|
-
```
|
|
693
|
-
GET /api/ebuilder/form/ds/options
|
|
694
|
-
?sourceType=FORM
|
|
695
|
-
&objId={sourceId}
|
|
696
|
-
&fieldName={裸雪花ID} ← 禁止传 field_xxx(会返回空数组)
|
|
697
|
-
```
|
|
698
|
-
|
|
699
|
-
`FORM` 无数据时可再试 `sourceType=LOGIC`。也可用 `ds/fields` 里该字段 `config.options`(`name` + `valueKey`/`value`)作为兜底。
|
|
700
|
-
|
|
701
|
-
3. 映射写入 `selectOptions` / `selectOptionsStr`(**键值方向勿反**):
|
|
702
|
-
|
|
703
|
-
| 字段 | 含义 | 示例 |
|
|
704
|
-
|------|------|------|
|
|
705
|
-
| `selectKey` | **选项值 / ID**(过滤用) | `"864407987151323141"` |
|
|
706
|
-
| `selectValue` | **显示名称** | `"准入供应商"` |
|
|
707
|
-
| `id` | 同 `selectKey` | `"864407987151323141"` |
|
|
708
|
-
|
|
709
|
-
```javascript
|
|
710
|
-
// ds/options → saveQueryItem(事故:曾把名称写进 selectKey、ID 写进 selectValue)
|
|
711
|
-
selectOptions = data
|
|
712
|
-
.filter(o => String(o.archive ?? '0') !== '1')
|
|
713
|
-
.map(o => ({
|
|
714
|
-
selectKey: String(o.id), // 数值 / 选项 ID
|
|
715
|
-
selectValue: o.name, // 名称
|
|
716
|
-
id: String(o.id),
|
|
717
|
-
}));
|
|
718
|
-
```
|
|
719
|
-
|
|
720
|
-
4. `relation` 用 `Equals`;`showWhere` 仍遵守 §2.1。
|
|
721
|
-
5. **禁止**:只设 `displayType: select` 却留下空 `selectOptions`;**禁止**用带 `field_` 前缀调 `/ds/options` 后误判「字段无选项」。
|
|
722
|
-
|
|
723
|
-
```javascript
|
|
724
|
-
async function fetchSelectOptionsForQuery(sourceId, fieldNameFromKey) {
|
|
725
|
-
const bare = String(fieldNameFromKey).replace(/^field_/, '');
|
|
726
|
-
const r = await get('/api/ebuilder/form/ds/options', {
|
|
727
|
-
sourceType: 'FORM', objId: sourceId, fieldName: bare,
|
|
728
|
-
});
|
|
729
|
-
if (!r.data?.length) throw new Error(`select options empty for ${bare}`);
|
|
730
|
-
return r.data.filter(o => String(o.archive ?? '0') !== '1')
|
|
731
|
-
.map(o => ({ selectKey: String(o.id), selectValue: o.name, id: String(o.id) }));
|
|
732
|
-
}
|
|
733
|
-
```
|
|
734
|
-
|
|
735
|
-
```javascript
|
|
736
|
-
function inferQueryDisplay(text, fieldMeta) {
|
|
737
|
-
const name = `${text||''} ${fieldMeta?.text||''}`;
|
|
738
|
-
const ft = String(fieldMeta?.fieldType||'').toLowerCase();
|
|
739
|
-
const oft = String(fieldMeta?.originFieldType||'').toLowerCase();
|
|
740
|
-
const fmt = String(fieldMeta?.config?.format || fieldMeta?.format || '');
|
|
741
|
-
if (/年月/.test(name) || fmt === 'yyyy-MM')
|
|
742
|
-
return { displayType: 'date.ym', relation: 'between' };
|
|
743
|
-
if (/年份|^年$|年度/.test(name) || fmt === 'yyyy')
|
|
744
|
-
return { displayType: 'date', relation: 'between' };
|
|
745
|
-
if (/日期|时间|时段|期间/.test(name) ||
|
|
746
|
-
['date','datetime','time','timestamp'].includes(ft) ||
|
|
747
|
-
['date','datetime','time'].includes(oft))
|
|
748
|
-
return { displayType: fmt.startsWith('yyyy-MM-dd') || !fmt ? 'date.ymd' : 'date',
|
|
749
|
-
relation: 'between' };
|
|
750
|
-
return { displayType: 'text', relation: 'Contain' };
|
|
751
|
-
}
|
|
752
|
-
```
|
|
753
|
-
|
|
754
|
-
---
|
|
755
|
-
|
|
756
|
-
## 四、日期区间:快捷选项(21 项)
|
|
757
|
-
|
|
758
|
-
设计器手动 save 后的**正确形态**(勿用旧版 15 项数字码 + 9 项 selectOptions):
|
|
759
|
-
|
|
760
|
-
| 字段 | 正确值 |
|
|
761
|
-
|------|--------|
|
|
762
|
-
| `selectOptions` | **`[]`** |
|
|
763
|
-
| `filterParam.enableOption` | **`true`** |
|
|
764
|
-
| `filterParam.isTile` | **`true`** |
|
|
765
|
-
| `filterParam.dataOptions` | **21 行**,`id` = `selectValue`(camelCase,如 `day3`、`thisMonth`) |
|
|
766
|
-
| `filterParam.optionTile` | **`{}`** |
|
|
767
|
-
| `filterParam.dateSelectDefaultValue` | **`""`(空)** |
|
|
768
|
-
|
|
769
|
-
**错误做法**:写入 `filterParam.dateSelectDefaultValue: "thisMonth"` 或填满 `optionTile` — 设计器齿轮菜单往往**只剩「自定义」**。
|
|
770
|
-
|
|
771
|
-
```python
|
|
772
|
-
# 见 apply_ebu_from_xlsx.py → _default_date_filter_param()
|
|
773
|
-
```
|
|
774
|
-
|
|
775
|
-
---
|
|
776
|
-
|
|
777
|
-
## 五、日期区间:系统参数默认值(设计器「自定义」)
|
|
778
|
-
|
|
779
|
-
默认值**不是** `dateSelectDefaultValue`,而是顶层:
|
|
780
|
-
|
|
781
|
-
| 字段 | 说明 |
|
|
782
|
-
|------|------|
|
|
783
|
-
| `defaultValueType` | **`"custom"`** |
|
|
784
|
-
| `defaultValue` | JSON **字符串**,形如 `'["{thismonth}",""]'` |
|
|
785
|
-
|
|
786
|
-
运行时由 `SystemVariableUtil` + `DynamicParamsBuilder` 解析;`getQueryItem` 回读的 `handleDefaultValue` 为解析后结果。
|
|
787
|
-
|
|
788
|
-
### 5.1 已验证系统参数
|
|
789
|
-
|
|
790
|
-
| 场景 | defaultValue | handleDefaultValue 示例 |
|
|
791
|
-
|------|--------------|-------------------------|
|
|
792
|
-
| **本月** | `["{thismonth}",""]` | `["2026-08-01,2026-08-31",""]` |
|
|
793
|
-
| **今天** | `["{date}","{date}"]` | `["2026-08-19","2026-08-19"]` |
|
|
794
|
-
| **本周** | `["{thisweek}",""]` | `["2026-08-17,2026-08-23",""]` |
|
|
795
|
-
| **今年** | `["{thisyear}",""]` | `["2026-01-01,2026-12-31",""]` |
|
|
796
|
-
| **当前用户姓名** | `["{lastname}",""]` | `["张三",""]`(高级搜索文本等于) |
|
|
797
|
-
| **当前用户 ID** | 数据集筛选 **`eq`** + `{userid}` | 人员字段「创建者 = 当前登录人员」 |
|
|
798
|
-
|
|
799
|
-
**注意**
|
|
800
|
-
|
|
801
|
-
- `{today}` **无效**(不会被解析,占位符会被清空);「今天」用 **`{date}`**。
|
|
802
|
-
- `{currmonth}` 无效;「本月」用 **`{thismonth}`**。
|
|
803
|
-
- 区间型参数(本月/本周)写在**数组首项**;今天需起止同一天则写 **`["{date}","{date}"]`**。
|
|
804
|
-
- `defaultValue` 必须是 **JSON 数组字符串**,禁止裸写 `"3"` 等(会导致 `getQueryItem` 500)。
|
|
805
|
-
|
|
806
|
-
### 5.2 设计器操作对应
|
|
807
|
-
|
|
808
|
-
1. 默认值类型 → **自定义**
|
|
809
|
-
2. 默认值 → 填 `{thismonth}`、`{date}` 等(设计器存为 JSON 数组)
|
|
810
|
-
3. 日期区间 + **启用选项** ON → 21 项快捷按钮(§四)
|
|
811
|
-
|
|
812
|
-
### 5.3 跨报表传参:目标条件的默认值(报表跳报表 · 2026-11-03 实测)
|
|
813
|
-
|
|
814
|
-
来源报表把参数拼在钻取地址上:
|
|
815
|
-
|
|
816
|
-
```text
|
|
817
|
-
/sp/edc/report/view/<目标报表>?searchfield002=13261367755986572676
|
|
818
|
-
```
|
|
819
|
-
|
|
820
|
-
目标报表**不会**按参数名自动过滤。要接住它,目标报表的查询条件必须把参数名写进「自定义默认值」:
|
|
821
|
-
|
|
822
|
-
| 键 | 值 |
|
|
823
|
-
|---|---|
|
|
824
|
-
| `defaultValueType` | `"custom"` |
|
|
825
|
-
| `defaultValue` | `'["{searchfield002}",""]'` |
|
|
826
|
-
| `type2DefaultValue` | 同上;`type1DefaultValue` 置空 |
|
|
827
|
-
|
|
828
|
-
设计器「默认值」框里显示成 `(searchfield002)` —— **圆括号只是 UI 渲染,落库必须是花括号**。
|
|
829
|
-
|
|
830
|
-
运行时:
|
|
831
|
-
|
|
832
|
-
- 请求里带同名字段 → `handleDefaultValue` 变成传入值(如 `["江苏EBU一部",""]`),报表按它过滤;
|
|
833
|
-
- 不带 / 传空 → 占位清空成 `["",""]`,直接打开报表不过滤。
|
|
834
|
-
|
|
835
|
-
⚠️ 条件保持「常规 / 空」时,URL 参数会被**静默忽略**:页面能打开、不报错、数据一条不少。这是钻取不过滤最常见的原因。
|
|
836
|
-
|
|
837
|
-
- **参数名以 `{…}` 里的名字为准**,链接的 key 必须与它一致;通常就是条件标识 `searchfield00x`。
|
|
838
|
-
- 日期区间用 `{searchfield001_start}` / `{searchfield001_end}`,URL 参数名同名。
|
|
839
|
-
- 体检:`e10-cli report verify drill <来源报表> --app-id <id>` —— 扫来源链接、读目标条件,缺绑定直接失败并给出修法。
|
|
840
|
-
|
|
841
|
-
---
|
|
842
|
-
|
|
843
|
-
## 六、EBU 报表示例(三条高级搜索 + 数据集行级筛选)
|
|
844
|
-
|
|
845
|
-
报表 `1304979556231593985` · 数据集 EBU团队 `1304979556231593994`
|
|
846
|
-
|
|
847
|
-
| 显示名称 | fieldKey 末段 | displayType | relation | 默认值 | queryType |
|
|
848
|
-
|----------|---------------|-------------|----------|--------|-----------|
|
|
849
|
-
| 集团军 | `field_1299763447342276612` | `text` | `Contain` | 无 | `["advance"]` |
|
|
850
|
-
| 入职时间 | `field_1299763447342276619` | `date.ymd` | `between` | `["{thismonth}",""]` | `["advance"]` |
|
|
851
|
-
| EBU成立时间 | `field_1299763447342276620` | `date.ym` | `between` | `["{date}","{date}"]` | `["advance"]` |
|
|
852
|
-
|
|
853
|
-
> 三条均为「高级搜索」显示方式 → 条件级 `queryType` 一律 `'["advance"]'`(见 §2.1)。
|
|
854
|
-
> 「高级搜索显示形式」(报表级、`saveQueryConfig` → `{"advancedSearchType":"openCondition"}`)是**报表级**开关,与条件级显示方式共享 `queryType` 覆盖关系(§2.1.3)。
|
|
855
|
-
|
|
856
|
-
---
|
|
857
|
-
|
|
858
|
-
## 七、数据集筛选(设计器左侧 · 行级权限)
|
|
859
|
-
|
|
860
|
-
> **完整规范已独立成文**:`dataset-query-filter-guide.md`(func 对照、字段对比、日期 format、AND/OR、EBU 金标准、验证清单)。
|
|
861
|
-
> 本节仅保留与高级搜索的边界说明。
|
|
862
|
-
|
|
863
|
-
**与高级搜索不同**:设计器左侧数据集右键「筛选条件」走 **`queryInfoSave` / `queryInfoGet`**(`conditionData` + `otherData`),**不是** `saveQueryItem`。
|
|
864
|
-
|
|
865
|
-
| API | 参数 |
|
|
866
|
-
|-----|------|
|
|
867
|
-
| 保存 | `POST /api/bs/edc/dataset/queryInfoSave` → `datasetId`, `filterData`, `otherData` |
|
|
868
|
-
| 读取 | `GET /api/bs/edc/dataset/queryInfoGet` → `datasetId` |
|
|
869
|
-
|
|
870
|
-
**快速对照**
|
|
871
|
-
|
|
872
|
-
| 需求入口 | 读哪份文档 |
|
|
873
|
-
|----------|-----------|
|
|
874
|
-
| 页面 → 查询设置(高级搜索) | 本文 §二–§六 |
|
|
875
|
-
| 左侧数据集 → 筛选条件 | **`dataset-query-filter-guide.md`** |
|
|
876
|
-
| 单元格自定义筛选 / datasetFilter | `cross-dataset-filter-guide.md` |
|
|
877
|
-
|
|
878
|
-
---
|
|
879
|
-
|
|
880
|
-
## 八、验证清单
|
|
881
|
-
|
|
882
|
-
写入后 `getQueryItem` 回读:
|
|
883
|
-
|
|
884
|
-
**形态**
|
|
885
|
-
|
|
886
|
-
- [ ] **调用**:multipart + `queryItems`=**单对象**(非数组);`conditions` 非 null
|
|
887
|
-
- [ ] 顶层 `filterType: "default"`;`conditions[]` 无 `filterType`
|
|
888
|
-
- [ ] 顶层 `dataSetId` / `name` 为 `null`;`nameIndex: "0"`;`sqlOptions: {}`
|
|
889
|
-
- [ ] **`queryType` 为 JSON 数组字符串**:`'["advance"]'`(高级搜索)或 `'["filter"]'`(筛选),可双选 `'["advance","filter"]'`(§2.1);**必须以 `[` 开头**
|
|
890
|
-
- [ ] **回显自检**:落库为长码 `"advancedSearch"` → 设计器「显示方式」**必不勾选**(落库错误,改数组即修复);不要解释为平台缺陷
|
|
891
|
-
- [ ] `asNameIndex` 唯一且 > 0;与 `showOrder` 一致
|
|
892
|
-
- [ ] `fieldOptions` 与 `conditions` 字段一致
|
|
893
|
-
|
|
894
|
-
**浏览按钮(人员 / 部门)**
|
|
895
|
-
|
|
896
|
-
- [ ] `displayType: "browser"` 且 **`browserTypeStr` 非空**(§2.1.2)
|
|
897
|
-
- [ ] 字段 `originFieldType=Employee` → `HrmEmployeeComInfo`
|
|
898
|
-
- [ ] 字段 `originFieldType=Department` → `HrmDepartmentComInfo`
|
|
899
|
-
- [ ] `browserTypeStr` 不得为 `"[]"`(关联类型丢失 → 退回「人员」)
|
|
900
|
-
- [ ] 若要求 UI 正确回显显示名,`browserType` 用富对象(含 `name`/`type`),非 `[{"id"}]` 简写
|
|
901
|
-
|
|
902
|
-
**文本**
|
|
903
|
-
|
|
904
|
-
- [ ] `displayType: "text"`(非 `select`)
|
|
905
|
-
|
|
906
|
-
**下拉**
|
|
907
|
-
|
|
908
|
-
- [ ] `displayType: "select"` 且 `selectOptions.length > 0`
|
|
909
|
-
- [ ] 选项来自匹配字段的 `/ds/options`(`fieldName` 为裸 ID,见 §3.2)
|
|
910
|
-
- [ ] 每项:`selectKey`=选项 ID(数值)、`selectValue`=显示名称(勿写反)
|
|
911
|
-
|
|
912
|
-
**日期选项**
|
|
913
|
-
|
|
914
|
-
- [ ] `enableOption=true`、`isTile=true`、`dataOptions` 21 项、`selectOptions=[]`、`optionTile={}`
|
|
915
|
-
|
|
916
|
-
**日期默认值**
|
|
917
|
-
|
|
918
|
-
- [ ] `defaultValueType: "custom"`(有默认值时)
|
|
919
|
-
- [ ] `handleDefaultValue` 非空且符合预期(如本月区间、今天同一天)
|
|
920
|
-
- [ ] **未**依赖 `filterParam.dateSelectDefaultValue`
|
|
921
|
-
|
|
922
|
-
**工具**
|
|
923
|
-
|
|
924
|
-
- [ ] 设计器刷新:齿轮菜单 21 项、默认值回显、删一条不影响其他条件
|
|
925
|
-
|
|
926
|
-
---
|
|
927
|
-
|
|
928
|
-
## 八、相关文档
|
|
929
|
-
|
|
930
|
-
| 文件 | 用途 |
|
|
931
|
-
|------|------|
|
|
932
|
-
| **`dataset-query-filter-guide.md`** | **左侧数据集筛选**(queryInfoSave 完整规范) |
|
|
933
|
-
| **`cell-transform-guide.md`** | **`browserType` 关联类型预设**(人员/部门 ComInfo id) |
|
|
934
|
-
| **`event-hreflink-guide.md`** | 事件链接传 `{searchfield00x}` / 单元格坐标 |
|
|
935
|
-
| `date-range-query-reference.md` | 21 项 dataOptions catalog |
|
|
936
|
-
| `cross-dataset-filter-guide.md` | datasetFilter / customFilterField |
|
|
937
|
-
| `report-building-guide.md` §6 | 设计器操作步骤 |
|
|
938
|
-
| `report-config-schema.md` §五 | Schema 摘要 |
|
|
939
|
-
| `SKILL.md` §6.3–§6.4 | Agent 步骤入口 |
|
|
1
|
+
# 查询条件 API 写入规范
|
|
2
|
+
|
|
3
|
+
> **适用场景**:通过 `saveQueryItem` / `saveQueryConfig` API 或脚本添加、修复报表查询条件。
|
|
4
|
+
> **金标准报表**:`1304979556231593985`(EBU 经营数据统计)
|
|
5
|
+
> **核心规则**:数据集合选取后,**选择类型未特别指定 SQL 时,一律默认为「条件字段」**。
|
|
6
|
+
|
|
7
|
+
## ⚡ TL;DR — 显示方式(2026-09-11 定案,务必先读 §2.1)
|
|
8
|
+
|
|
9
|
+
| 事实 | 结论 |
|
|
10
|
+
|---|---|
|
|
11
|
+
| 条件级 `queryType` 正确落库值 | **JSON 数组字符串** `'["advance"]'`(高级搜索)/ `'["filter"]'`(筛选) |
|
|
12
|
+
| 前端回显判据 | 只看首字符是否 `[`;`'["advance"]'` → 勾选 ✅,`"advancedSearch"` → 不勾 ❌ |
|
|
13
|
+
| **`updateQueryType` 是最大陷阱** | 它把入参 `queryType` **批量写进所有条件**;传长码 = 一键摧毁全表回显(§2.1.3) |
|
|
14
|
+
| 保存后必须自检 | `e10-cli report query check-echo --report-id <id> --app-id <appId>` |
|
|
15
|
+
| 一键修复 | `e10-cli report query fix-echo --report-id <id> --app-id <appId>` |
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## 一、选择类型(设计器 UI ↔ API)
|
|
20
|
+
|
|
21
|
+
| 设计器「选择类型」 | 顶层 `filterType` | `conditions[]` 内 | 说明 |
|
|
22
|
+
|-------------------|-------------------|-------------------|------|
|
|
23
|
+
| **条件字段**(默认) | `"default"` | **仅** `dataSetId` + `fieldId` + `relation` | 绑定数据集字段,禁止 SQL |
|
|
24
|
+
| **SQL**(显式指定) | `"sql"` | `"filterType": "sql"` + `sql` | 私有化环境才可用 |
|
|
25
|
+
|
|
26
|
+
**Agent 硬约束**:除非需求明确写「SQL 条件」,否则不得使用 `filterType: "sql"`。
|
|
27
|
+
|
|
28
|
+
**常见错误**
|
|
29
|
+
|
|
30
|
+
| 错误写法 | 后果 |
|
|
31
|
+
|----------|------|
|
|
32
|
+
| `conditions[].filterType: "field"` | 设计器「选择类型」无法回显为「条件字段」 |
|
|
33
|
+
| 顶层 `dataSetId` / `name` 有值 | 与设计器 save 形态不一致,回显异常 |
|
|
34
|
+
| `sqlOptions: {selected: ...}` | 条件字段应为 `{}` |
|
|
35
|
+
| `defaultValue: "3"`(非 JSON 数组) | `getQueryItem` 解析失败,整表 500 |
|
|
36
|
+
| **`queryItems` 传数组 `[]`/`[{…}]`** | 服务端 `parseObject` 单对象失败 / NPE → **saveQueryItem 500** |
|
|
37
|
+
| **`queryItems` 为 `{}` 且无 `conditions`** | `getConditions().size()` NPE → **500** |
|
|
38
|
+
| **JSON body 而非 multipart** | 参数绑不上 / 权限校验异常 → 常 500 |
|
|
39
|
+
| 缺 `ebBusinessId` | `wrapEbRightCheck` 编辑权限失败 |
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## 二、条件字段标准形态(saveQueryItem)
|
|
44
|
+
|
|
45
|
+
设计器 save 后回读的金标准结构:
|
|
46
|
+
|
|
47
|
+
| 字段 | 条件字段正确值 |
|
|
48
|
+
|------|----------------|
|
|
49
|
+
| 顶层 `dataSetId` | **`null`** |
|
|
50
|
+
| 顶层 `name` | **`null`** |
|
|
51
|
+
| `nameIndex` | **`"0"`** |
|
|
52
|
+
| `filterType` | **`"default"`** |
|
|
53
|
+
| `sqlOptions` | **`{}`** |
|
|
54
|
+
| `conditions[]` | 仅 `dataSetId` + `fieldId` + `relation` |
|
|
55
|
+
| `fieldOptions` | 必传(含 `selected`、`dataSetField`、`relation`);`getQueryItem` 不持久化,更新时须重带 |
|
|
56
|
+
| `asNameIndex` | **唯一且 > 0**;更新时**必须回传**,否则置 0。`showOrder`(弹窗「排序」)人工配置通常留 **`0`**(= 未设,平台回落按 `asNameIndex` 排)——API 建条件时若自行填 1,2,3… 会在弹窗上留下可见差异(2026-09-14 验证参照报表 5 条全为 0)。事件超链接传查询值用 `{searchfield` + 三位补零 + `}`(如 `asNameIndex=1` → `{searchfield001}`,区间另加 `_start`/`_end`),见 `event-hreflink-guide.md` |
|
|
57
|
+
| **默认值三件套** | **必填**:`defaultValueType`(`default`=常规 / `custom`=自定义)+ `defaultValue`(当前生效值)+ `type1DefaultValue`(常规那份)/ `type2DefaultValue`(自定义那份);值均为 **JSON 字符串**。**漏写 → 设计器弹窗「默认值类型」= 请选择、默认值区炸开、后续整段行被顶出可视区**(见 §2.1.10) |
|
|
58
|
+
| `fieldId` / `dataSetField` | fieldKey:`{dataSetId}.{sourceId}.{fieldName}` |
|
|
59
|
+
| **`queryType`(显示方式)** | **必填 JSON 数组字符串**,见 §2.1;`'["advance"]'`(高级搜索,默认)或 `'["filter"]'`(筛选),可双选 `'["advance","filter"]'`。**服务端也接受长码字符串 `"advancedSearch"`,但那样设计器 UI 不会勾选** |
|
|
60
|
+
| `showWhere`(遗留) | 设计器一律写 `""`;**勿**用它表达显示方式 |
|
|
61
|
+
| `browserType` / `browserTypeStr` | `displayType=browser` 时必填;富对象优先,落库判据是 `browserTypeStr`(见 §2.1.2) |
|
|
62
|
+
|
|
63
|
+
```python
|
|
64
|
+
def build_conditions(ds_id, field_id, relation):
|
|
65
|
+
return [{"dataSetId": ds_id, "fieldId": field_id, "relation": relation}]
|
|
66
|
+
|
|
67
|
+
def build_field_options(ds_id, field_id, relation, item_id=None):
|
|
68
|
+
row = {"dataSetField": field_id, "relation": relation, "queryItemValue": "输入值"}
|
|
69
|
+
if item_id:
|
|
70
|
+
row["id"] = str(item_id)
|
|
71
|
+
return {"selected": ds_id, ds_id: [row]}
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
API:`POST /api/bs/edc/report/saveQueryItem`
|
|
75
|
+
|
|
76
|
+
| 项 | 正确 | 错误 → 常 500 |
|
|
77
|
+
|----|------|----------------|
|
|
78
|
+
| Content-Type | **`multipart/form-data`** | `application/json` 整包 body |
|
|
79
|
+
| 表单字段 | `reportId` + **`queryItems`** | 缺参、或写成 `queryItem` / `items` |
|
|
80
|
+
| `queryItems` 值 | **单个** QueryField **对象**的 JSON 字符串 | **`[]` / `[{...}]` 数组**(源码 `parseObject` 单对象) |
|
|
81
|
+
| Header | `eteamsid` + `Cookie` + **`ebBusinessId`/`ebbusinessid`=appId** | 缺业务 app,权限包装失败 |
|
|
82
|
+
| Referer | `/sp/edc/report/designer/{reportId}` | 可无,但建议带 |
|
|
83
|
+
|
|
84
|
+
```http
|
|
85
|
+
POST /api/bs/edc/report/saveQueryItem
|
|
86
|
+
Content-Type: multipart/form-data; boundary=----x
|
|
87
|
+
|
|
88
|
+
------x
|
|
89
|
+
Content-Disposition: form-data; name="reportId"
|
|
90
|
+
|
|
91
|
+
{reportId}
|
|
92
|
+
------x
|
|
93
|
+
Content-Disposition: form-data; name="queryItems"
|
|
94
|
+
|
|
95
|
+
{"dataSetId":null,"name":null,...,"conditions":[{...}],"fieldOptions":{...}}
|
|
96
|
+
------x--
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
**硬约束(源码 `EdcReportDevDesignServiceImpl.saveQueryItem`)**
|
|
100
|
+
|
|
101
|
+
1. `JSONObject.parseObject(queryItems, QueryFieldDto.class)` → **禁止**传数组。
|
|
102
|
+
2. 非私有化环境会对 `queryField.getConditions()` 做 `jsonArray.size()`;**`conditions` 为 null**(如 `queryItems="{}"`)→ **NPE → 接口 500**。
|
|
103
|
+
3. 一次请求只保存**一条**条件;多条 → **循环多次** `saveQueryItem`(每条一个对象)。
|
|
104
|
+
4. 更新已有条件:对象内带 `id`(字符串雪花);新建不带 `id`,服务端生成并自动递增 `asNameIndex`。
|
|
105
|
+
5. `saveQueryConfig` **不能代替** `saveQueryItem`;可先可后,但有高级搜索条件时建议条件级 `queryType: '["advance"]'`(见 §2.1)。
|
|
106
|
+
|
|
107
|
+
```javascript
|
|
108
|
+
// ✅
|
|
109
|
+
await saveQueryItem({ reportId, queryItems: JSON.stringify(oneItemObject) });
|
|
110
|
+
// ❌
|
|
111
|
+
await saveQueryItem({ reportId, queryItems: JSON.stringify([oneItemObject]) });
|
|
112
|
+
await saveQueryItem({ reportId, queryItems: '[]' });
|
|
113
|
+
await saveQueryItem({ reportId, queryItems: '{}' }); // conditions 缺失 → 500
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
---
|
|
117
|
+
|
|
118
|
+
### 2.1 显示方式(强制 · 不可不选)
|
|
119
|
+
|
|
120
|
+
> **✅ 终局定案(2026-09-11 · 以「设计器手工配置的真实条件」为金标准反推)**
|
|
121
|
+
>
|
|
122
|
+
> 条件级「显示方式」的正确落库值是 **JSON 数组字符串**:
|
|
123
|
+
>
|
|
124
|
+
> | 显示方式 | 正确落库值 |
|
|
125
|
+
> |---|---|
|
|
126
|
+
> | 高级搜索 | `'["advance"]'` |
|
|
127
|
+
> | 筛选 | `'["filter"]'` |
|
|
128
|
+
> | 两者都选 | `'["advance","filter"]'` |
|
|
129
|
+
>
|
|
130
|
+
> **服务端对取值不敏感**:`'["advance"]'` / `'["filter"]'` / `'["advance","filter"]'` / `"advancedSearch"` / `"filter"` **全部返回 200 并原样落库**。
|
|
131
|
+
> **但只有 JSON 数组形态能在设计器 UI 正确回显勾选**;长码字符串 `"advancedSearch"` 会导致 **UI 两个都不勾**(旧版文档「写短码 500」的说法是错的,见下方推翻记录)。
|
|
132
|
+
|
|
133
|
+
#### 2.1.1 前端回显规则(源码级 · `_src/route_DatasetList.js`)
|
|
134
|
+
|
|
135
|
+
前端**只看首字符是否为 `[`**,据此决定是否 JSON 解析:
|
|
136
|
+
|
|
137
|
+
```js
|
|
138
|
+
// ① 读取(initCondition)—— 唯一判定逻辑
|
|
139
|
+
t.queryType = (t.queryType?.indexOf("[") > -1)
|
|
140
|
+
? JSON.parse(t.queryType || "[]") // 含 "[" → 解析成数组
|
|
141
|
+
: t.queryType || []; // 不含 → 原样保留(普通字符串)
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
```js
|
|
145
|
+
// ② 复选项定义(initConditionFormStore)—— 选项 id 是「短码」
|
|
146
|
+
queryType:{ itemType:"CHECKBOX", required:!0,
|
|
147
|
+
data:[{ id: ze.g.advance, content:"高级搜索" },
|
|
148
|
+
{ id: ze.g.filter, content:"筛选" }],
|
|
149
|
+
otherParams:{ minSelected:1 } }
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
```js
|
|
153
|
+
// ③ 短码枚举(lib.js)
|
|
154
|
+
function(e){ e.filter="filter"; e.advance="advance" }(i||(i={}))
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
```js
|
|
158
|
+
// ④ 新建条件默认值(仅 fieldKey 为空时)
|
|
159
|
+
this.fieldKey || (i.queryType = ["advance"]) // ← 注意:默认就是「数组」
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
```js
|
|
163
|
+
// ⑤ 保存 —— 表单值原样写回,不做类型转换
|
|
164
|
+
var l = e.conditionFormStore.getFormDatas();
|
|
165
|
+
r.queryType = l.queryType;
|
|
166
|
+
s.append("queryItems", JSON.stringify(r));
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
**推论(四条必须记牢)**
|
|
170
|
+
|
|
171
|
+
1. `CheckboxGroup` 用**严格相等**匹配:表单 value 的每个元素 vs `data[].id`。
|
|
172
|
+
2. 落库 `'["advance"]'` → 解析为 `["advance"]` → 元素 `"advance"` === 选项 id `"advance"` → **勾选 ✅**
|
|
173
|
+
3. 落库 `"advancedSearch"` → 不含 `[` → 保留为字符串 `"advancedSearch"` → 与选项 id 严格不等 → **不勾选 ❌**
|
|
174
|
+
4. **设计器自己写出的就是数组**(见 ④ 默认值、⑥ 接口返回);长码 `"advancedSearch"` 只可能由**脚本手写**产生 → 它是**错误值**。
|
|
175
|
+
|
|
176
|
+
#### 2.1.2 验证证据链(2026-09-11,报表 `1313798296523022337`,应用「进销存管理-共享表」)
|
|
177
|
+
|
|
178
|
+
**A. API 写入实验(`saveQueryItem`,同一条件往返改 4 种值)**
|
|
179
|
+
|
|
180
|
+
| 写入值 | 返回 | 回读落库 | UI「显示方式」 |
|
|
181
|
+
|---|---|---|---|
|
|
182
|
+
| `'["advance"]'` | **200** | `'["advance"]'` | **高级搜索 ☑ ✅** |
|
|
183
|
+
| `'["filter"]'` | **200** | `'["filter"]'` | 筛选 ☑ ✅ |
|
|
184
|
+
| `'["advance","filter"]'` | **200** | `'["advance","filter"]'` | 双选 ☑ ✅ |
|
|
185
|
+
| `"advancedSearch"`(长码) | **200** | `"advancedSearch"` | **两个都不勾 ❌** |
|
|
186
|
+
|
|
187
|
+
> ⚠️ 四者**全部 200**,不存在「写短码 → 500」。旧结论 500 的真实成因是**手写 multipart payload 的结构/字段不被服务端封装接受**,与 `queryType` 取值无关。
|
|
188
|
+
|
|
189
|
+
**B. 三条条件 UI 回显对照(CDP 真实鼠标点击 tag → 读弹窗 checkbox)**
|
|
190
|
+
|
|
191
|
+
| 条件 | 落库 `queryType` | UI「显示方式」 |
|
|
192
|
+
|---|---|---|
|
|
193
|
+
| 销售部门(**人工手工配置**) | `'["advance"]'` | **高级搜索 ☑** |
|
|
194
|
+
| 销售人员(脚本写长码) | `"advancedSearch"` | **两个都 ☐** |
|
|
195
|
+
| 销售日期(脚本写长码) | `"advancedSearch"` | **两个都 ☐** |
|
|
196
|
+
|
|
197
|
+
→ 脚本手工写的长码条件**全军覆没**,人工配置的数组条件**正确回显**。把两条长码条件改为 `'["advance"]'` 后,三条**全部回显 ☑ 高级搜索**,闭环验证通过。
|
|
198
|
+
|
|
199
|
+
**C. 设计器真实 `saveQueryItem` 接口返回(人工点击「确定」)**
|
|
200
|
+
|
|
201
|
+
```
|
|
202
|
+
Content-Disposition: form-data; name="queryItems"
|
|
203
|
+
|
|
204
|
+
{"id":"…","sheetId":"…","nameIndex":"0","text":"销售部门","displayType":"browser",
|
|
205
|
+
"showWhere":"","advancedSearchType":"openCondition","queryType":["advance"], … }
|
|
206
|
+
^^^^^^^^^^^^^^^^^^
|
|
207
|
+
数组(短码),非字符串长码
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
> 设计器上行 payload 里就是 `"queryType":["advance"]`(**数组 + 短码**)—— 这是平台的权威写法。
|
|
211
|
+
|
|
212
|
+
#### 2.1.3 🔴 真正根因:`updateQueryType` 会**批量覆盖所有条件**(最关键)
|
|
213
|
+
|
|
214
|
+
> **`POST /api/bs/edc/report/updateQueryType` 不是「只改报表级设置」** —— 它会把入参 `queryType` **全量写进该报表的每一条查询条件**,覆盖刚保存好的数组值。
|
|
215
|
+
> 这是「条件显示方式永远不勾选」的**真正单点根因**,也是历史定位一直抓不到的那个洞。
|
|
216
|
+
|
|
217
|
+
**验证矩阵**(同一报表连续调用,观察条件级 `queryType`)
|
|
218
|
+
|
|
219
|
+
| 调用 `updateQueryType(queryType=…)` | 三条条件级 `queryType` 变为 | 设计器回显 |
|
|
220
|
+
|---|---|---|
|
|
221
|
+
| `"advancedSearch"`(长码) | `advancedSearch` ×3 | **全不勾 ❌** |
|
|
222
|
+
| `"advance"`(裸短码) | `advance` ×3 | 不勾 ❌ |
|
|
223
|
+
| `"filter"` | `filter` ×3 | 不勾 ❌ |
|
|
224
|
+
| **`'["advance"]'`(数组短码)** | `'["advance"]'` ×3 | **全勾 ✅** |
|
|
225
|
+
|
|
226
|
+
**为什么历史定位一直失败**
|
|
227
|
+
|
|
228
|
+
```text
|
|
229
|
+
旧 CLI 的 save 流程: saveQueryItem(写 '["advance"]' ✅) → updateQueryType("advancedSearch" ❌)
|
|
230
|
+
↓ 刚写好的数组 ↓ 立刻被批量打回长码
|
|
231
|
+
设计器打开 → 不勾选
|
|
232
|
+
人工在页面直接配条件: 只走 saveQueryItem,不经过 updateQueryType → '["advance"]' 完好 → 正常勾选
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
于是「人工配的能勾、API 写的不能勾」,长期被误判为「平台前端缺陷,客户端不可修」。**实际是 CLI 自己把值写坏了。**
|
|
236
|
+
|
|
237
|
+
**硬约束**
|
|
238
|
+
|
|
239
|
+
1. **`updateQueryType` 的 `queryType` 必须传数组短码**:`'["advance"]'` / `'["filter"]'`,**与条件级同形态**。传长码 = 一键摧毁全表回显。
|
|
240
|
+
2. **保存条件的推荐调用顺序**:`saveQueryItem`(数组) → `updateQueryType`(**同一个数组值**)。
|
|
241
|
+
3. **不要**在保存后用长码 `updateQueryType`「对齐报表级显示形式」—— 它顺带把条件级也改坏。若只需报表级 `advancedSearchType`(如 `openCondition`),仍须把 `queryType` 传成数组形态。
|
|
242
|
+
4. 落库后**必须回读自检**:`e10-cli report query check-echo --report-id <id> --app-id <appId>`。
|
|
243
|
+
|
|
244
|
+
#### 2.1.4 落库门禁
|
|
245
|
+
|
|
246
|
+
| 检查 | 接口 | 通过标准 |
|
|
247
|
+
|------|------|----------|
|
|
248
|
+
| **条件级显示方式(落库)** | `POST /api/bs/edc/report/getQueryItemNew`(multipart `reportId` + `query:'{}'`) | 每条 `queryType` 是 **含 `[` 的 JSON 数组字符串**,元素 ∈ `advance` / `filter` |
|
|
249
|
+
| 报表级 + 条件级批量对齐 | `POST /api/bs/edc/report/updateQueryType` | `code=200`,且入参 `queryType` **为数组短码**(§2.1.3) |
|
|
250
|
+
|
|
251
|
+
**硬约束**
|
|
252
|
+
|
|
253
|
+
1. **写 `queryType` = JSON 数组字符串**:`'["advance"]'` / `'["filter"]'` / `'["advance","filter"]'`。**不要写长码 `"advancedSearch"`**(可落库但 UI 不回显)。
|
|
254
|
+
2. **写 `showWhere: ""`**(遗留字段,设计器一致行为)。
|
|
255
|
+
3. **回读判据**:`getQueryItemNew` 的 `queryType` **必须以 `[` 开头**。若是 `"advancedSearch"` → **回显必不勾**,需改写为 `'["advance"]'`。
|
|
256
|
+
4. **强制走 CLI**:Agent 禁止手写 multipart 调 `saveQueryItem`;统一 `e10-cli report query save|type|list|check-echo|fix-echo` / `validate query`。
|
|
257
|
+
5. 用户反馈「显示方式没勾选」时:**先 `check-echo` 回读 `queryType`**。若为长码 → **可修复的落库错误**,`fix-echo` 即恢复(**不要再解释为平台缺陷**);同时定位是否被 `updateQueryType` 长码覆盖过。
|
|
258
|
+
|
|
259
|
+
#### 2.1.5 报表级 vs 条件级(勿混淆)
|
|
260
|
+
|
|
261
|
+
| 层面 | 字段 | 正确值 | 存储形态 |
|
|
262
|
+
|---|---|---|---|
|
|
263
|
+
| **条件级**「显示方式」(编辑查询条件弹窗内) | `queryType` | `'["advance"]'` / `'["filter"]'` | **JSON 数组字符串**(§2.1) |
|
|
264
|
+
| **报表级**「高级搜索显示形式」(查询设置弹窗) | `queryType`(入参) | **也须 `'["advance"]'` / `'["filter"]'`** | 会被批量写入所有条件(§2.1.3) |
|
|
265
|
+
|
|
266
|
+
> 「查询设置」弹窗只有 `高级搜索显示形式 + 默认样式/展开条件` 等报表级开关;条件级的「显示方式 ☑高级搜索 ☑筛选」在**「编辑查询条件」**弹窗里,两者入口不同,但**落库字段同名、同形态、且共享覆盖关系**。
|
|
267
|
+
|
|
268
|
+
#### 2.1.6 ⚠️ 旧结论推翻记录(避免回退)
|
|
269
|
+
|
|
270
|
+
| 旧结论(2026-09-10/11 早期) | 现结论(2026-09-11 定案) |
|
|
271
|
+
|---|---|
|
|
272
|
+
| 落库必须写长码 `"advancedSearch"` | ❌ 错。落库必须写数组 `'["advance"]'` |
|
|
273
|
+
| 写短码 `"advance"` → 服务端 500 | ❌ 错。写数组短码 **200 正常落库** |
|
|
274
|
+
| 「UI 不勾选 = 平台缺陷,客户端不可修」 | ❌ 错。**改数组即可修复**,是脚本落库值写错 |
|
|
275
|
+
| `advancedSearch` 前端 0 次出现 → 服务端产物 | ⚠️ 部分成立(前台确实无此串),但它**不是**服务端要求的取值,而是脚本臆造的 |
|
|
276
|
+
| 前端 `edit` 直取长码灌表单 → 死循环 | ❌ 错。`edit` 灌的就是落库值;落库是数组时**正常勾选** |
|
|
277
|
+
| 条件级与报表级是两个独立字段,互不影响 | ❌ 错。`updateQueryType` 用 `queryType` **批量覆盖所有条件**(§2.1.3 真正根因) |
|
|
278
|
+
| `updateQueryType` 只改报表级「高级搜索显示形式」 | ❌ 错。它会把入参写进每条条件 → 长码一键摧毁全表回显 |
|
|
279
|
+
|
|
280
|
+
**旧结论怎么来的 / 为什么错**:早期用 JS 合成事件点击条件 tag,实际点到了**左侧字段面板**的「显示方式」(那是字段属性,非条件显示方式),读取勾选态得到假信号;且未把「人工配置的条件」作为金标准对照。**修复方式**:改用 **CDP `Input.dispatchMouseEvent` 真实鼠标事件**点条件 tag,读「编辑查询条件」弹窗,并以人工条件为参照。
|
|
281
|
+
|
|
282
|
+
**真正根因的发现路径**:给 `save` 加「落库后回读自检」时,发现**刚写入的数组被回读成长码** → 隔离实验证明只有 `saveQueryItem` 时数组完好,一旦再调 `updateQueryType` 即被批量覆盖 → 穷举入参证明 `updateQueryType` 是「全表条件 `queryType` 批量写」。**AI 自检回读是抓到它的关键手段**,务必保留。
|
|
283
|
+
|
|
284
|
+
#### 2.1.7 修复已有错误条件的操作
|
|
285
|
+
|
|
286
|
+
**首选(CLI 一键):**
|
|
287
|
+
|
|
288
|
+
```bash
|
|
289
|
+
e10-cli report query check-echo --report-id <id> --app-id <appId> # 诊断
|
|
290
|
+
e10-cli report query fix-echo --report-id <id> --app-id <appId> # 修正为数组短码
|
|
291
|
+
```
|
|
292
|
+
|
|
293
|
+
**手动脚本(等价实现,含 `updateQueryType` 数组化):**
|
|
294
|
+
|
|
295
|
+
```python
|
|
296
|
+
# 读取 → 把长码条件就地改为数组短码 → 保存 → 再用数组形态对齐报表级(批量)
|
|
297
|
+
import json, copy, sys
|
|
298
|
+
import _eb
|
|
299
|
+
|
|
300
|
+
APP, RID = "<appId>", "<reportId>"
|
|
301
|
+
DROP = {"browserTypeStr","selectOptionsStr","conditionStr","sqlOptionsStr",
|
|
302
|
+
"filterParamStr","handleDefaultValue","updateTime"} # 回显列,服务端不接受
|
|
303
|
+
|
|
304
|
+
def read():
|
|
305
|
+
r = _eb.post("/api/bs/edc/report/getQueryItemNew",
|
|
306
|
+
data={"reportId": RID, "query": "{}"}, app_id=APP)
|
|
307
|
+
return ((r.get("data") or {}).get("list")) or []
|
|
308
|
+
|
|
309
|
+
def save(item):
|
|
310
|
+
it = {k: v for k, v in item.items() if k not in DROP}
|
|
311
|
+
return _eb.post("/api/bs/edc/report/saveQueryItem",
|
|
312
|
+
data={"reportId": RID, "queryItems": json.dumps(it, ensure_ascii=False)},
|
|
313
|
+
app_id=APP)
|
|
314
|
+
|
|
315
|
+
for q in read():
|
|
316
|
+
if not str(q.get("queryType") or "").startswith("["): # 长码/空 → 修正
|
|
317
|
+
it = copy.deepcopy(q)
|
|
318
|
+
it["queryType"] = '["filter"]' if q.get("queryType") == "filter" else '["advance"]'
|
|
319
|
+
print(q["text"], "->", save(it).get("code"))
|
|
320
|
+
|
|
321
|
+
# ⚠️ 关键:若还要对齐报表级高级搜索显示形式,updateQueryType 的 queryType 必须用数组形态,
|
|
322
|
+
# 否则它会把全部条件重新打回长码(§2.1.3)。
|
|
323
|
+
_eb.post("/api/bs/edc/report/updateQueryType",
|
|
324
|
+
data={"reportId": RID, "queryType": '["advance"]', "advancedSearchType": "openCondition"},
|
|
325
|
+
app_id=APP)
|
|
326
|
+
```
|
|
327
|
+
|
|
328
|
+
**设计器真实保存形态(金标准,从 `saveQueryItem` 接口返回)**
|
|
329
|
+
|
|
330
|
+
```json
|
|
331
|
+
{
|
|
332
|
+
"id": "…", "sheetId": "<reportId>", "nameIndex": "0",
|
|
333
|
+
"text": "销售部门",
|
|
334
|
+
"displayType": "browser",
|
|
335
|
+
"browserType": [{ "id": "3332180495306215437", "name": "部门", "type": "department",
|
|
336
|
+
"module": "hrm", "groupId": "<groupId>", "tenantKey": "<tenantKey>",
|
|
337
|
+
"dataId": "2005096031068185488", "labelId": "52148",
|
|
338
|
+
"licenseModule": "hrm", "systemDefault": 1, "ebuliderDataBrowser": false, "disable": 0 }],
|
|
339
|
+
"browserTypeStr": "[{\"id\":\"HrmDepartmentComInfo\"}]",
|
|
340
|
+
"showWhere": "",
|
|
341
|
+
"queryType": ["advance"],
|
|
342
|
+
"dateType": "ymd",
|
|
343
|
+
"filterParam": { "optionTile": {}, "isTile": false, "multiple": true, "dataOptions": [],
|
|
344
|
+
"enableOption": false, "required": false, "dateSelectDefaultValue": "",
|
|
345
|
+
"numberSelectDefaultValue": "", "eBuilderForm": "", "titleField": "" },
|
|
346
|
+
"defaultValue": "[[],\"\"]", "handleDefaultValue": "[[],\"\"]",
|
|
347
|
+
"filterType": "default", "fieldOptions": {},
|
|
348
|
+
"conditions": [{ "dataSetId": "…", "fieldId": "…", "relation": "Equals" }],
|
|
349
|
+
"asNameIndex": 1, "showOrder": 1
|
|
350
|
+
}
|
|
351
|
+
```
|
|
352
|
+
|
|
353
|
+
---
|
|
354
|
+
|
|
355
|
+
### 2.1.9 🔴 `advancedSearchType` —— **禁止静默注入**(会改掉报表页查询区的「样式」)
|
|
356
|
+
|
|
357
|
+
> **事故(2026-09-14)**:在报表 `1314970921403138199` 加 5 条查询条件后,用户质问
|
|
358
|
+
> 「怎么又把查询条件的样式改了,这个之前强调过不能动页面上原有展示格式」。
|
|
359
|
+
> 定位结论:**用户的 payload 里根本没有 `advancedSearchType`**,是 CLI `e10-cli report query save`
|
|
360
|
+
> 在保存时**无条件注入** `advancedSearchType: 'openCondition'`(=「展开条件」)。
|
|
361
|
+
|
|
362
|
+
**字段语义(源码级)**
|
|
363
|
+
|
|
364
|
+
| 项 | 结论 |
|
|
365
|
+
|---|---|
|
|
366
|
+
| 实体字段 | `QueryFieldCommon.advancedSearchType`(`@ApiModelProperty("高级搜索类型")`) |
|
|
367
|
+
| 唯一功能读点 | `SheetServiceImpl`:取**第一条**高级搜索条件的 `advancedSearchType`,`=='openCondition'` → `isOpenCondition=true` |
|
|
368
|
+
| 页面效果 | `isOpenCondition=true` → 报表页查询区**展开铺开**(「展开条件」);否则 → **默认样式**(右上角搜索图标,点击才展开) |
|
|
369
|
+
| 设计器入口 | 报表级「查询设置」弹窗的 **高级搜索显示形式:默认样式 / 展开条件** |
|
|
370
|
+
| 人工条件(金标准) | **该键不存在**(`undefined`),平台不主动写 |
|
|
371
|
+
|
|
372
|
+
**硬规则**
|
|
373
|
+
|
|
374
|
+
1. **入参没有该键 → 就别写该键**(保持线上原值)。CLI 只在显式 `--advanced-search-type openCondition` 时才写。
|
|
375
|
+
2. `updateQueryType`(批量对齐 `queryType`)**不得夹带** `advancedSearchType`。
|
|
376
|
+
3. 该字段属于**展示样式**,与「显示方式」(`queryType`:高级搜索/筛选)**是两回事**,不得绑定在一起写。
|
|
377
|
+
4. 用户没说「展开条件」时,任何情况下都不要写它。
|
|
378
|
+
|
|
379
|
+
**判别与修复**
|
|
380
|
+
|
|
381
|
+
```bash
|
|
382
|
+
# 判别:条件里 advancedSearchType 非空 = 被注入过
|
|
383
|
+
e10-cli report query list --report-id <id> --app-id <appId>
|
|
384
|
+
|
|
385
|
+
# 修复(默认 dry-run;--apply 落库;只清该字段,保留 id/顺序/queryType)
|
|
386
|
+
e10-cli report fix query-style --report-id <id> --app-id <appId> [--id <itemId>...] [--apply]
|
|
387
|
+
|
|
388
|
+
# 附带修复「不带 id 保存 → 变成新增」造成的重复条件行(删除必须显式列 id)
|
|
389
|
+
e10-cli report fix query-style --report-id <id> --app-id <appId> --delete-id <itemId> --apply
|
|
390
|
+
```
|
|
391
|
+
|
|
392
|
+
> ⚠️ **另一个必须记住的坑**:`saveQueryItem` **必须带 `id` 才是原地更新**;
|
|
393
|
+
> 不带 `id` 会**INSERT 一条新条件**(`asNameIndex` 自增),报表上出现重复条件。
|
|
394
|
+
> 更新存量条件时,payload 一律从线上回读对象派生并**保留 `id`**。
|
|
395
|
+
|
|
396
|
+
---
|
|
397
|
+
|
|
398
|
+
### 2.1.10 🔴 「默认值三件套」漏写 → 设计器弹窗整段坏掉(2026-09-14 事故)
|
|
399
|
+
|
|
400
|
+
**用户看到的现象**("查询条件的样式被改了"):
|
|
401
|
+
|
|
402
|
+
| 现象 | 说明 |
|
|
403
|
+
|------|------|
|
|
404
|
+
| 「默认值类型」= **请选择** | 本该是「常规」或「自定义」 |
|
|
405
|
+
| 「默认值」区**同时铺开所有控件变体** | 请输入 / 开始日期-结束日期 / 选择日期时间 / 请选择 / 选择日期 / 选择月份 / 选择年份 … 一屏全来 |
|
|
406
|
+
| 「日期类型 / 显示位置 / 条件必填 / 查询条件」**看不见** | 被上面那一大片顶出可视区(弹窗高度固定),并非真被删除 |
|
|
407
|
+
|
|
408
|
+
**根因**:弹窗的默认值区由 `defaultValueType` 驱动渲染。不写它 → 前端取不到模式 → 每个变体都渲染一遍。
|
|
409
|
+
|
|
410
|
+
**数据模型(验证参照报表 `1314938962594906121`,人工配置的权威形态)**
|
|
411
|
+
|
|
412
|
+
| 键 | 含义 | 参照「年月」取值 | 参照「部门」取值 | 参照「人员/加班/聘用」取值 |
|
|
413
|
+
|----|------|------------------|------------------|----------------------------|
|
|
414
|
+
| `defaultValueType` | 模式:`default`=常规 / `custom`=自定义(前端 label:`55337`=常规、`53999`=自定义) | `custom` | `default` | `default` |
|
|
415
|
+
| `defaultValue` | **当前生效**的值 | `["{yearmonth:-0}",""]` | `[[],""]` | `["",""]` |
|
|
416
|
+
| `type1DefaultValue` | 「常规」模式下保存的值 | `""` | `[[],""]` | `["",""]` |
|
|
417
|
+
| `type2DefaultValue` | 「自定义」模式下保存的值 | `["{yearmonth:-0}",""]` | `""` | `""` |
|
|
418
|
+
| `handleDefaultValue` | 平台解析后的实际值(**服务端自己算并回写**) | `["2026-09",""]` | `[[],""]` | `["",""]` |
|
|
419
|
+
|
|
420
|
+
> ⚠️ **全部是 JSON 字符串**(`"[[],\""]"` 这种),不是对象/数组本身。
|
|
421
|
+
> ⚠️ 日期占位符(`{yearmonth:-0}` 等)**不用自己解析**:落库时平台会把 `handleDefaultValue` 回写成 `["2026-09",""]`(验证)。
|
|
422
|
+
> 设计器「新建条件」模板本身带 `defaultValueType:"default"` + `defaultValue:["",""]`,所以**人工配的条件永远不会缺** —— 只有用 API 建条件时才会漏。
|
|
423
|
+
|
|
424
|
+
**修复**
|
|
425
|
+
|
|
426
|
+
```bash
|
|
427
|
+
# 只补缺失项(默认模式、空默认值 —— 弹窗恢复正常渲染,不改取数范围)
|
|
428
|
+
e10-cli report fix query-default --report-id <id> --app-id <appId> --apply
|
|
429
|
+
|
|
430
|
+
# 点名某条用「自定义」默认值(如 年月默认当月,与参照报表一致)
|
|
431
|
+
e10-cli report fix query-default --report-id <id> --app-id <appId> \
|
|
432
|
+
--set '年月=custom:["{yearmonth:-0}",""]' --set '部门=default:[[],""]' --apply
|
|
433
|
+
|
|
434
|
+
# 顺带把「排序」对齐为设计器模板值 0
|
|
435
|
+
e10-cli report fix query-default --report-id <id> --app-id <appId> --all --show-order 0 --apply
|
|
436
|
+
```
|
|
437
|
+
|
|
438
|
+
落库后脚本会自动回读校验(`stillMissingDefaultValueType` 必须为空)。
|
|
439
|
+
|
|
440
|
+
---
|
|
441
|
+
|
|
442
|
+
### 2.1.11 ★ 查询条件合规体检(Q1~Q10 判据总表 · `e10-cli report verify query`)
|
|
443
|
+
|
|
444
|
+
> 把本章所有坑的**判据**固化成一条只读命令。搭完条件、改完条件、用户投诉后,第一件事就是跑它。
|
|
445
|
+
> **命令**:`e10-cli report verify query <reportId> <appId> [--json] [--fix]`(等价别名 `e10-cli report query verify ...`)
|
|
446
|
+
> 有 FAIL → exit 1;`--fix` 只做幂等安全项(清样式字段 / 补三件套 / 短码化),**绝不新增或删除条件**。
|
|
447
|
+
|
|
448
|
+
| # | 判据 | 级别 | 不通过时页面上的表现 | 出处 |
|
|
449
|
+
|---|------|------|----------------------|------|
|
|
450
|
+
| Q1 | `queryType` 是 **JSON 数组短码**(以 `[` 开头且可 parse 成数组) | FAIL | 设计器「显示方式」复选框是空的 | §2.1.1 / QUERY-1 |
|
|
451
|
+
| Q2 | `advancedSearchType` **必须为空** | FAIL | 报表页查询区从「默认样式」变成「展开条件」铺开 | §2.1.9 / QUERY-5 |
|
|
452
|
+
| Q3 | `defaultValueType` 有值(`default`\|`custom`) | FAIL | 弹窗「默认值类型」=请选择,默认值区把**所有**控件变体炸开 | §2.1.10 / QUERY-7 |
|
|
453
|
+
| Q4 | `defaultValue` 有值(JSON 字符串) | WARN | 默认值区仍可能铺开 | QUERY-7 |
|
|
454
|
+
| Q5 | `type1DefaultValue`(常规)/ `type2DefaultValue`(自定义)随模式在位 | WARN | 切换模式时值丢失 | QUERY-7 |
|
|
455
|
+
| Q6 | `id` 存在且 `asNameIndex` **唯一且 >0** | FAIL | 重复条件 / 保存变新增 | QUERY-6 |
|
|
456
|
+
| Q7 | `displayType=browser` 时 `browserType` 富对象非空 + `browserTypeStr` 非空 | FAIL | 关联类型为空、条件点不开 | §2.1.2 / QUERY-3 |
|
|
457
|
+
| Q8 | `filterParam.required` / `showType` 在位 | WARN | 「显示位置 / 条件必填」等弹窗后段字段为空 | — |
|
|
458
|
+
| Q9 | `showOrder` 是否为设计器模板值 `0` | INFO | 弹窗「排序」与人工配置有可见差异 | QUERY-7 |
|
|
459
|
+
| Q10 | 报表级 `queryType` **是否混杂**(同时存在多种写法) | WARN | 曾被 `updateQueryType` 批量覆盖过 | §2.1.3 / QUERY-2 |
|
|
460
|
+
|
|
461
|
+
> **不要拿 `getQueryConfig` 当判据** —— 本环境它恒返回 `data:null`(QUERY-4)。判据一律走 `getQueryItemNew` 回读。
|
|
462
|
+
|
|
463
|
+
---
|
|
464
|
+
|
|
465
|
+
### 2.1.2 关联类型 `browserType`:必须写「富对象」,不是 `[{id}]` 简写(强制)
|
|
466
|
+
|
|
467
|
+
> **事故**:同报表查询条件「销售部门」绑定字段 `originFieldType=Department`,但设计器关联类型显示为空/默认**人员**。**定案根因:`browserType` 写成了简写 `[{"id":"HrmDepartmentComInfo"}]`,缺少 `name`/`type` 等字段 → 前端无法解析显示名 → 退回默认「人员」标签页。**
|
|
468
|
+
|
|
469
|
+
**设计器真实形态(金标准)**:`browserType` 是 **全字段富对象数组**,关键字段 `name`(显示名)、`type`(`department`/`employee`)、`module`、`groupId`、`tenantKey`、`dataId`、`labelId`、`id`。**`browserTypeStr` 才是落库判据**(服务端存 `[{"id":"HrmDepartmentComInfo"}]` 形式的字符串)。
|
|
470
|
+
|
|
471
|
+
| 字段 `originFieldType` | `displayType` | `browserTypeStr`(落库) | 设计器关联类型 |
|
|
472
|
+
|------------------------|---------------|--------------------------|----------------|
|
|
473
|
+
| `Employee` | `browser` | `[{"id":"HrmEmployeeComInfo"}]` | **人员** |
|
|
474
|
+
| `Department` | `browser` | `[{"id":"HrmDepartmentComInfo"}]` | **部门** |
|
|
475
|
+
| `DepartmentAllPath` | `browser` | `[{"id":"HrmDepartmentAllPathComInfo"}]` | 部门全路径 |
|
|
476
|
+
|
|
477
|
+
**推荐获取富对象的正确姿势(最稳)**:**不要手拼** `browserType` 富对象;用 `saveQueryItem` 时:
|
|
478
|
+
1. `displayType: "browser"` + `browserTypeStr` 写 `[{"id":"HrmDepartmentComInfo"}]`;
|
|
479
|
+
2. 或在设计器里手动选一次「部门」让前端生成富对象后接口返回复用(本环境已验证:手动选后可正确回显「部门」)。
|
|
480
|
+
|
|
481
|
+
**硬约束**
|
|
482
|
+
|
|
483
|
+
1. `displayType: browser` **禁止** `browserTypeStr: "[]"`;必须按字段 `originFieldType` 写入对应 ComInfo id。
|
|
484
|
+
2. 仅写 `[{"id":...}]` 简写**服务端可接受**(`browserTypeStr` 落库正确),但**前端回显可能为空**;若要求 UI 正确显示,需富对象。
|
|
485
|
+
3. `e10-cli report query save` 内置 `applyQueryDisplayType()` 自动补 `browserType`(未显式指定 `displayType` 时);不匹配时输出 **WARN**。
|
|
486
|
+
4. 回读核对:`browserTypeStr` 不得为 `"[]"`(丢了 → 退回「人员」)。
|
|
487
|
+
5. 跳过自动推导用 `--skip-display-type`(仅在确实要手填时)。
|
|
488
|
+
|
|
489
|
+
---
|
|
490
|
+
|
|
491
|
+
```javascript
|
|
492
|
+
// 显示方式:条件级落库值 = JSON 数组字符串(前端唯一能回显勾选的形态)
|
|
493
|
+
function resolveQueryType(userHint) {
|
|
494
|
+
const s = String(userHint || '').toLowerCase();
|
|
495
|
+
if (/筛选|filter/.test(s) && !/高级搜索|advanced/.test(s)) return '["filter"]';
|
|
496
|
+
return '["advance"]'; // 默认「高级搜索」· 不可不选
|
|
497
|
+
}
|
|
498
|
+
// 注意:showWhere 一律写 ''(遗留字段)
|
|
499
|
+
// 条件级选项 id 是短码 advance/filter;落库必须是含 "[" 的 JSON 数组字符串,
|
|
500
|
+
// 否则前端首字符判定落空 → 退化为普通字符串 → 严格相等失败 → UI 不勾选(见 §2.1)
|
|
501
|
+
// 报表级 updateQueryType 的 queryType 也须用数组形态(它会批量覆盖所有条件,见 §2.1.3)
|
|
502
|
+
```
|
|
503
|
+
|
|
504
|
+
### 2.1.8 「显示方式没勾选」诊断卡(对接用户质询时用)
|
|
505
|
+
|
|
506
|
+
| 用户说法 | 你的回答要点 |
|
|
507
|
+
|---|---|
|
|
508
|
+
| 「页面上显示方式没勾选」 | 先 `getQueryItemNew` 回读 `queryType`:**是否以 `[` 开头**? |
|
|
509
|
+
| 「回读是 `'["advance"]'` 却仍不勾」 | 极罕见;先强刷设计器页面(CDN/缓存),再核对条件 `id` 是否为最新 |
|
|
510
|
+
| 「回读是 `"advancedSearch"` 长码」 | **这是落库值写错了**,属可修复问题 → 改写为 `'["advance"]'`,重开弹窗即勾选 |
|
|
511
|
+
| 「能修吗?」 | **能修**:把 `queryType` 改为 JSON 数组字符串(§2.1.7 脚本 / `e10-cli report query fix-echo`) |
|
|
512
|
+
| 交付口径 | 「已修正落库值,条件显示方式回显正常」——**不要再解释为平台缺陷** |
|
|
513
|
+
|
|
514
|
+
**判据一行流**
|
|
515
|
+
|
|
516
|
+
```text
|
|
517
|
+
queryType 以 "[" 开头 → 数组 → UI 勾选正常 ✅
|
|
518
|
+
queryType 是其它字符串 → 退化 → UI 不勾选 ❌(改写为 '["advance"]')
|
|
519
|
+
```
|
|
520
|
+
|
|
521
|
+
> (`route_DatasetList.js` 179879B / `route_ReportDesigner.js` 702877B / `lib.js` 661658B);
|
|
522
|
+
> UI 回显用 `_q_real2.py`(CDP `Input.dispatchMouseEvent` 真实鼠标点击条件 tag + 读「编辑查询条件」弹窗 checkbox)。
|
|
523
|
+
|
|
524
|
+
### 2.1.2.1 关联浏览分类元数据接口(⚠️ 富对象唯一正确来源)
|
|
525
|
+
|
|
526
|
+
> **勿手拼富对象!** 富对象的 13 个字段值全部来自服务端接口,手拼易错(`labelId`/`dataId` 无法猜)。
|
|
527
|
+
> 本接口 2026-09-11 定位、**2026-09-14 修正为 GET `browserBeanSearch`**,为「部门 / 人员 / 岗位 …」全部关联类型的权威数据源。
|
|
528
|
+
|
|
529
|
+
```http
|
|
530
|
+
GET /api/bcw/relevanceBrowser/browserBeanSearch?searchValue=<中文分类名>
|
|
531
|
+
Header: ebbusinessid: <appId>
|
|
532
|
+
→ data.data[] 每条 = 13 键富对象
|
|
533
|
+
```
|
|
534
|
+
|
|
535
|
+
> 🔴 **2026-09-14 修正**:旧文档写的 `POST /api/bcw/relevanceBrowser/getBrowserBean` 在**本环境恒返回 `{"code":500,"msg":"接口错误"}`**(前端其实把 `browserBeanSearch` 的响应**本地拦截**了 —— 见 `lib.js` 里 `relationList()` 分支,所以它在页面上看起来"能用")。
|
|
536
|
+
> 可用的是 **GET `browserBeanSearch`**;`searchValue` 必须用**中文分类名**(拼音检索服务端不支持:`bm` / `ry` 返回 0 条),空串只返回档案/工作流等非 HRM 分类。
|
|
537
|
+
> CLI 已内置此回退:`themes/e10-cli report query save` 的 `fetchBrowserBeanSearch()`;`displayType=browser` 且 `browserType` 仅为 `[{id}]` 简写时**自动升级为富对象**。
|
|
538
|
+
|
|
539
|
+
**验证取值(租户 `tmxislnm9p` / 应用 1178336857624084480)**
|
|
540
|
+
|
|
541
|
+
```http
|
|
542
|
+
GET …/browserBeanSearch?searchValue=部门 → 命中 3 条,取 name=部门
|
|
543
|
+
GET …/browserBeanSearch?searchValue=人员 → 命中 3 条,取 name=人员
|
|
544
|
+
```
|
|
545
|
+
|
|
546
|
+
**「部门」完整富对象(验证取值)**
|
|
547
|
+
|
|
548
|
+
```json
|
|
549
|
+
{"id":"2005096031068185488","tenantKey":"all_teams","deleteType":0,
|
|
550
|
+
"dataId":"2005096031068185488","licenseModule":"hrm","labelId":"52148",
|
|
551
|
+
"title":"人事: 部门","disable":0,"systemDefault":1,"ebuliderDataBrowser":false,
|
|
552
|
+
"name":"部门","module":"hrm","type":"department","groupId":"8574699142778669114"}
|
|
553
|
+
```
|
|
554
|
+
|
|
555
|
+
**「人员」完整富对象(验证取值)**
|
|
556
|
+
|
|
557
|
+
```json
|
|
558
|
+
{"id":"2005096031068185492","tenantKey":"all_teams","deleteType":0,
|
|
559
|
+
"dataId":"2005096031068185492","licenseModule":"hrm","labelId":"29511",
|
|
560
|
+
"title":"人事: 人员","disable":0,"systemDefault":1,"ebuliderDataBrowser":false,
|
|
561
|
+
"name":"人员","module":"hrm","type":"resource","groupId":"8574699142778669114"}
|
|
562
|
+
```
|
|
563
|
+
|
|
564
|
+
> ⚠️ 两条的 `id` 都是**业务 id**(= `dataId`,部门 …488 / 人员 …492),**不等于** ComInfo 短 id。
|
|
565
|
+
> 因此校验「关联类型对不对」**不能按 id 比**,要按 `name`(人员/部门)或 `type`(resource/department)判 —— 否则会误报"不匹配"(已修 `e10-cli report query save`)。
|
|
566
|
+
> 同一环境里还有近名分类:`部门字段`(…498) / `人员字段`(…502),按 `name` **精确**取,勿用 `indexOf`。
|
|
567
|
+
|
|
568
|
+
**落库判据对照**
|
|
569
|
+
|
|
570
|
+
| 关联类型 | `browserTypeStr`(落库判据) | 富对象 `name` / `type` |
|
|
571
|
+
|---|---|---|
|
|
572
|
+
| 部门 | `[{"id":"HrmDepartmentComInfo"}]` | 部门 / `department` |
|
|
573
|
+
| 人员 | `[{"id":"HrmEmployeeComInfo"}]` | 人员 / `resource` |
|
|
574
|
+
| 部门全路径 | `[{"id":"HrmDepartmentAllPathComInfo"}]` | 部门字段 / `departmentDesc` |
|
|
575
|
+
|
|
576
|
+
**修复存量条件(最小侵入,已验证 HTTP 200)**
|
|
577
|
+
|
|
578
|
+
```python
|
|
579
|
+
# 1) 读取
|
|
580
|
+
q = POST /api/bs/edc/report/getQueryItemNew (multipart: reportId + query:'{}')
|
|
581
|
+
items = q["data"]["list"] # ⚠️ 在 data.list,不是 data.queryItems
|
|
582
|
+
# 2) 取富对象
|
|
583
|
+
bean = GET /api/bcw/relevanceBrowser/browserBeanSearch?searchValue=人员 → name=="人员" 那条
|
|
584
|
+
# 3) 替换 + 同步 browserTypeStr + 保存
|
|
585
|
+
item["browserType"] = [bean]
|
|
586
|
+
item["browserTypeStr"] = json.dumps([{"id":"HrmEmployeeComInfo"}], ensure_ascii=False)
|
|
587
|
+
POST /api/bs/edc/report/saveQueryItem (multipart: reportId + queryItems 单对象JSON)
|
|
588
|
+
```
|
|
589
|
+
|
|
590
|
+
**UI 验证要点**:打开「编辑查询条件」弹窗,查 `.ui-browser-type-search-input` 的 `value`:
|
|
591
|
+
- `""` + 控件容器带 `is-empty` 类 → 关联类型**丢失**
|
|
592
|
+
- `"人员"` / `"部门"` → **正确回显** ✅
|
|
593
|
+
|
|
594
|
+
> 验证:修复前「销售人员」`value=""`(`is-empty`);修复后 `value="人员"` ✅
|
|
595
|
+
|
|
596
|
+
---
|
|
597
|
+
|
|
598
|
+
## 二点五、saveQueryItem 始终 500 定位(强制)
|
|
599
|
+
|
|
600
|
+
> **事故**:议题类报表搭建时,改字段/单条/空数组/`queryConfig`/`sheetId` 均 500 → 根因是**调用形态**,不是业务字段内容。
|
|
601
|
+
|
|
602
|
+
| 检查顺序 | 项 | 通过标准 |
|
|
603
|
+
|----------|----|----------|
|
|
604
|
+
| 1 | Content-Type | `multipart/form-data`,字段名 `reportId`、`queryItems` |
|
|
605
|
+
| 2 | `queryItems` 形态 | **单个对象** JSON;禁止数组、禁止空 `{}` |
|
|
606
|
+
| 3 | `conditions` | **非 null 数组**,至少 1 个 `{dataSetId, fieldId, relation}` |
|
|
607
|
+
| 4 | Header | `ebBusinessId` = 报表所属 **appId**;`eteamsid` + Cookie |
|
|
608
|
+
| 5 | 多条条件 | **多次** POST,每次一条;不要一次塞数组 |
|
|
609
|
+
| 6 | 对照金标准 | 先 `getQueryItem` 拉已有报表一条,改 `text`/`fieldId` 再 save |
|
|
610
|
+
|
|
611
|
+
**不要**:为排 500 去开浏览器扫页(浪费);先按上表自检。仍 500 时看响应 `msg` 是否权限/报表不存在,再问用户。
|
|
612
|
+
|
|
613
|
+
**优先 CLI**(强制):
|
|
614
|
+
|
|
615
|
+
```bash
|
|
616
|
+
# 保存条件(自动默认条件级 queryType='["advance"]',并 updateQueryType)
|
|
617
|
+
e10-cli report query save --report-id <id> --app-id <appId> --item queryItem.json
|
|
618
|
+
e10-cli report query save ... --show-where "筛选" # 仅用户点名筛选时
|
|
619
|
+
e10-cli report query type --report-id <id> --app-id <appId> # 只对齐报表级显示方式勾选
|
|
620
|
+
e10-cli report query list --report-id <id> --app-id <appId>
|
|
621
|
+
e10-cli report validate query --map-show-where "高级搜索"
|
|
622
|
+
e10-cli report validate query --validate-show-where --file item.json
|
|
623
|
+
# queryItem.json = 单条对象(禁止数组);须含非空 conditions;条件级 queryType='["advance"]'
|
|
624
|
+
```
|
|
625
|
+
|
|
626
|
+
**不卡死(强制)**:`saveQueryItem` / `e10-cli report query save` 按形态自检并重试 **至多 1 次** 仍失败 → **立即提示用户**(可在设计器手动配查询条件)→ **继续**权限/其它布局/交付主表 → 任务收尾再自动补试 1 次。**禁止**在查询条件步骤死循环。见 `failure-cleanup-and-nonblocking-guide.md` §二。
|
|
627
|
+
|
|
628
|
+
**与布局 500 区分**:`saveReportDevInfo` 的 border `style` 须为**数字**(如 `1`)与查询无关;查询 500 优先查本节。
|
|
629
|
+
|
|
630
|
+
---
|
|
631
|
+
|
|
632
|
+
| 需求 | displayType | relation | 备注 |
|
|
633
|
+
|------|-------------|----------|------|
|
|
634
|
+
| 文本(包含) | `text` | `Contain` | 勿写 `select` |
|
|
635
|
+
| 文本(等于) | `text` | `Equals` | |
|
|
636
|
+
| **日期区间**(日/时间) | `date` / `date.ymd` | `between` | 见 §3.1 自动匹配 |
|
|
637
|
+
| **年月/年** | `date.ym` / `date` | `between` | 见 §3.1 |
|
|
638
|
+
| 下拉 | `select` | `Equals` | **必须**自动拉选项写入 `selectOptions`(§3.2) |
|
|
639
|
+
| 数字范围 | `number` | 默认 | |
|
|
640
|
+
| 人员浏览按钮 | `browser` | `Equals` | 人员类字段 |
|
|
641
|
+
|
|
642
|
+
**日期 displayType 与字段 format**
|
|
643
|
+
|
|
644
|
+
| 数据集字段 format | 查询条件 displayType |
|
|
645
|
+
|-------------------|----------------------|
|
|
646
|
+
| `yyyy-MM-dd`(及带时分秒) | `date.ymd` |
|
|
647
|
+
| `yyyy-MM` | `date.ym` |
|
|
648
|
+
| `yyyy` / 仅「年」 | `date` |
|
|
649
|
+
| 其他日期 | `date` |
|
|
650
|
+
|
|
651
|
+
首条查询条件可设 `advancedSearchType: "openCondition"`(如集团军默认展开)。
|
|
652
|
+
|
|
653
|
+
---
|
|
654
|
+
|
|
655
|
+
### 3.1 查询条件类型自动匹配(强制)
|
|
656
|
+
|
|
657
|
+
> Agent 配置 / 修复查询条件时,**禁止**一律写成 `text`。必须按 **条件显示名 + 数据集字段类型/format** 自行判断。
|
|
658
|
+
|
|
659
|
+
**判定顺序**(命中即停):
|
|
660
|
+
|
|
661
|
+
| 优先级 | 信号(名称或字段元数据) | displayType | relation | 设计器形态 |
|
|
662
|
+
|--------|--------------------------|-------------|----------|------------|
|
|
663
|
+
| 1 | 名称含「年月」;或 format=`yyyy-MM` | `date.ym` | `between` | 年月区间 |
|
|
664
|
+
| 2 | 名称含「年份」「年度」或纯「年」;format=`yyyy` | `date` | `between` | 日期(年) |
|
|
665
|
+
| 3 | 名称含「日期」「时间」「时段」「期间」;或 `fieldType`/`originFieldType` ∈ Date/DateTime/Time/datetime | `date.ymd`(format 非 yyyy-MM 时)或 `date` | **`between`** | **日期区间** |
|
|
666
|
+
| 4 | 人员 / Employee / 浏览按钮字段 | `browser` | `Equals` | 人员 |
|
|
667
|
+
| 5 | **Select / 下拉框 / Check**(`compType`/`type`/`originFieldType` 为 Select)或需求明确下拉 | `select` | `Equals` | 下拉(**§3.2 必拉选项**) |
|
|
668
|
+
| 6 | 其他 | `text` | `Contain`(模糊)或 `Equals` | 文本 |
|
|
669
|
+
|
|
670
|
+
**硬约束**
|
|
671
|
+
|
|
672
|
+
1. 日期/时间类 **必须** `relation: "between"`,**禁止** `Equals` + `displayType: text`(事故:签订日期被配成文本等于)。
|
|
673
|
+
2. 判定依据优先:`fieldsAndOriginFields` 的 `fieldType` / `originFieldType` / `config.format`;名称作辅助(如条件叫「签订日期」字段叫「合同签订日期」)。
|
|
674
|
+
3. 写成日期区间时同步带齐 §四:`filterParam.enableOption=true`、21 项 `dataOptions`、`selectOptions=[]`。
|
|
675
|
+
4. **`displayType: select` 时禁止 `selectOptions: []`** — 必须按 §3.2 按匹配字段自动获取选项(事故:供应商等级下拉无选项)。
|
|
676
|
+
5. 回读 `getQueryItem`:核对 `displayType` + `conditions[0].relation` +(下拉时)`selectOptions.length > 0` 且 `selectKey`/`selectValue` 方向正确。
|
|
677
|
+
6. **定点场景**:用户只点一条条件 → 只改该条,禁止重配全部查询(`targeted-fix-guide.md`)。
|
|
678
|
+
|
|
679
|
+
---
|
|
680
|
+
|
|
681
|
+
### 3.2 下拉查询条件:按匹配字段自动获取选项(强制)
|
|
682
|
+
|
|
683
|
+
> **事故**:报表「供应商-1」`1312703681350901760`,「供应商等级」已是 `displayType: select`,但 `selectOptions: []` → 预览/高级搜索无选项映射。
|
|
684
|
+
|
|
685
|
+
当判定为下拉(§3.1 优先级 5)或用户要求下拉时:
|
|
686
|
+
|
|
687
|
+
1. 从 `conditions[0].fieldId` 解析三段 fieldKey:`{dataSetId}.{sourceId}.{fieldName}`
|
|
688
|
+
- `fieldName` 在报表内多为 `field_{雪花ID}`(绑定 fieldsKey)
|
|
689
|
+
- **取选项时** `fieldName` 参数必须用 **裸雪花 ID**(去掉 `field_` 前缀)
|
|
690
|
+
2. 调用:
|
|
691
|
+
|
|
692
|
+
```
|
|
693
|
+
GET /api/ebuilder/form/ds/options
|
|
694
|
+
?sourceType=FORM
|
|
695
|
+
&objId={sourceId}
|
|
696
|
+
&fieldName={裸雪花ID} ← 禁止传 field_xxx(会返回空数组)
|
|
697
|
+
```
|
|
698
|
+
|
|
699
|
+
`FORM` 无数据时可再试 `sourceType=LOGIC`。也可用 `ds/fields` 里该字段 `config.options`(`name` + `valueKey`/`value`)作为兜底。
|
|
700
|
+
|
|
701
|
+
3. 映射写入 `selectOptions` / `selectOptionsStr`(**键值方向勿反**):
|
|
702
|
+
|
|
703
|
+
| 字段 | 含义 | 示例 |
|
|
704
|
+
|------|------|------|
|
|
705
|
+
| `selectKey` | **选项值 / ID**(过滤用) | `"864407987151323141"` |
|
|
706
|
+
| `selectValue` | **显示名称** | `"准入供应商"` |
|
|
707
|
+
| `id` | 同 `selectKey` | `"864407987151323141"` |
|
|
708
|
+
|
|
709
|
+
```javascript
|
|
710
|
+
// ds/options → saveQueryItem(事故:曾把名称写进 selectKey、ID 写进 selectValue)
|
|
711
|
+
selectOptions = data
|
|
712
|
+
.filter(o => String(o.archive ?? '0') !== '1')
|
|
713
|
+
.map(o => ({
|
|
714
|
+
selectKey: String(o.id), // 数值 / 选项 ID
|
|
715
|
+
selectValue: o.name, // 名称
|
|
716
|
+
id: String(o.id),
|
|
717
|
+
}));
|
|
718
|
+
```
|
|
719
|
+
|
|
720
|
+
4. `relation` 用 `Equals`;`showWhere` 仍遵守 §2.1。
|
|
721
|
+
5. **禁止**:只设 `displayType: select` 却留下空 `selectOptions`;**禁止**用带 `field_` 前缀调 `/ds/options` 后误判「字段无选项」。
|
|
722
|
+
|
|
723
|
+
```javascript
|
|
724
|
+
async function fetchSelectOptionsForQuery(sourceId, fieldNameFromKey) {
|
|
725
|
+
const bare = String(fieldNameFromKey).replace(/^field_/, '');
|
|
726
|
+
const r = await get('/api/ebuilder/form/ds/options', {
|
|
727
|
+
sourceType: 'FORM', objId: sourceId, fieldName: bare,
|
|
728
|
+
});
|
|
729
|
+
if (!r.data?.length) throw new Error(`select options empty for ${bare}`);
|
|
730
|
+
return r.data.filter(o => String(o.archive ?? '0') !== '1')
|
|
731
|
+
.map(o => ({ selectKey: String(o.id), selectValue: o.name, id: String(o.id) }));
|
|
732
|
+
}
|
|
733
|
+
```
|
|
734
|
+
|
|
735
|
+
```javascript
|
|
736
|
+
function inferQueryDisplay(text, fieldMeta) {
|
|
737
|
+
const name = `${text||''} ${fieldMeta?.text||''}`;
|
|
738
|
+
const ft = String(fieldMeta?.fieldType||'').toLowerCase();
|
|
739
|
+
const oft = String(fieldMeta?.originFieldType||'').toLowerCase();
|
|
740
|
+
const fmt = String(fieldMeta?.config?.format || fieldMeta?.format || '');
|
|
741
|
+
if (/年月/.test(name) || fmt === 'yyyy-MM')
|
|
742
|
+
return { displayType: 'date.ym', relation: 'between' };
|
|
743
|
+
if (/年份|^年$|年度/.test(name) || fmt === 'yyyy')
|
|
744
|
+
return { displayType: 'date', relation: 'between' };
|
|
745
|
+
if (/日期|时间|时段|期间/.test(name) ||
|
|
746
|
+
['date','datetime','time','timestamp'].includes(ft) ||
|
|
747
|
+
['date','datetime','time'].includes(oft))
|
|
748
|
+
return { displayType: fmt.startsWith('yyyy-MM-dd') || !fmt ? 'date.ymd' : 'date',
|
|
749
|
+
relation: 'between' };
|
|
750
|
+
return { displayType: 'text', relation: 'Contain' };
|
|
751
|
+
}
|
|
752
|
+
```
|
|
753
|
+
|
|
754
|
+
---
|
|
755
|
+
|
|
756
|
+
## 四、日期区间:快捷选项(21 项)
|
|
757
|
+
|
|
758
|
+
设计器手动 save 后的**正确形态**(勿用旧版 15 项数字码 + 9 项 selectOptions):
|
|
759
|
+
|
|
760
|
+
| 字段 | 正确值 |
|
|
761
|
+
|------|--------|
|
|
762
|
+
| `selectOptions` | **`[]`** |
|
|
763
|
+
| `filterParam.enableOption` | **`true`** |
|
|
764
|
+
| `filterParam.isTile` | **`true`** |
|
|
765
|
+
| `filterParam.dataOptions` | **21 行**,`id` = `selectValue`(camelCase,如 `day3`、`thisMonth`) |
|
|
766
|
+
| `filterParam.optionTile` | **`{}`** |
|
|
767
|
+
| `filterParam.dateSelectDefaultValue` | **`""`(空)** |
|
|
768
|
+
|
|
769
|
+
**错误做法**:写入 `filterParam.dateSelectDefaultValue: "thisMonth"` 或填满 `optionTile` — 设计器齿轮菜单往往**只剩「自定义」**。
|
|
770
|
+
|
|
771
|
+
```python
|
|
772
|
+
# 见 apply_ebu_from_xlsx.py → _default_date_filter_param()
|
|
773
|
+
```
|
|
774
|
+
|
|
775
|
+
---
|
|
776
|
+
|
|
777
|
+
## 五、日期区间:系统参数默认值(设计器「自定义」)
|
|
778
|
+
|
|
779
|
+
默认值**不是** `dateSelectDefaultValue`,而是顶层:
|
|
780
|
+
|
|
781
|
+
| 字段 | 说明 |
|
|
782
|
+
|------|------|
|
|
783
|
+
| `defaultValueType` | **`"custom"`** |
|
|
784
|
+
| `defaultValue` | JSON **字符串**,形如 `'["{thismonth}",""]'` |
|
|
785
|
+
|
|
786
|
+
运行时由 `SystemVariableUtil` + `DynamicParamsBuilder` 解析;`getQueryItem` 回读的 `handleDefaultValue` 为解析后结果。
|
|
787
|
+
|
|
788
|
+
### 5.1 已验证系统参数
|
|
789
|
+
|
|
790
|
+
| 场景 | defaultValue | handleDefaultValue 示例 |
|
|
791
|
+
|------|--------------|-------------------------|
|
|
792
|
+
| **本月** | `["{thismonth}",""]` | `["2026-08-01,2026-08-31",""]` |
|
|
793
|
+
| **今天** | `["{date}","{date}"]` | `["2026-08-19","2026-08-19"]` |
|
|
794
|
+
| **本周** | `["{thisweek}",""]` | `["2026-08-17,2026-08-23",""]` |
|
|
795
|
+
| **今年** | `["{thisyear}",""]` | `["2026-01-01,2026-12-31",""]` |
|
|
796
|
+
| **当前用户姓名** | `["{lastname}",""]` | `["张三",""]`(高级搜索文本等于) |
|
|
797
|
+
| **当前用户 ID** | 数据集筛选 **`eq`** + `{userid}` | 人员字段「创建者 = 当前登录人员」 |
|
|
798
|
+
|
|
799
|
+
**注意**
|
|
800
|
+
|
|
801
|
+
- `{today}` **无效**(不会被解析,占位符会被清空);「今天」用 **`{date}`**。
|
|
802
|
+
- `{currmonth}` 无效;「本月」用 **`{thismonth}`**。
|
|
803
|
+
- 区间型参数(本月/本周)写在**数组首项**;今天需起止同一天则写 **`["{date}","{date}"]`**。
|
|
804
|
+
- `defaultValue` 必须是 **JSON 数组字符串**,禁止裸写 `"3"` 等(会导致 `getQueryItem` 500)。
|
|
805
|
+
|
|
806
|
+
### 5.2 设计器操作对应
|
|
807
|
+
|
|
808
|
+
1. 默认值类型 → **自定义**
|
|
809
|
+
2. 默认值 → 填 `{thismonth}`、`{date}` 等(设计器存为 JSON 数组)
|
|
810
|
+
3. 日期区间 + **启用选项** ON → 21 项快捷按钮(§四)
|
|
811
|
+
|
|
812
|
+
### 5.3 跨报表传参:目标条件的默认值(报表跳报表 · 2026-11-03 实测)
|
|
813
|
+
|
|
814
|
+
来源报表把参数拼在钻取地址上:
|
|
815
|
+
|
|
816
|
+
```text
|
|
817
|
+
/sp/edc/report/view/<目标报表>?searchfield002=13261367755986572676
|
|
818
|
+
```
|
|
819
|
+
|
|
820
|
+
目标报表**不会**按参数名自动过滤。要接住它,目标报表的查询条件必须把参数名写进「自定义默认值」:
|
|
821
|
+
|
|
822
|
+
| 键 | 值 |
|
|
823
|
+
|---|---|
|
|
824
|
+
| `defaultValueType` | `"custom"` |
|
|
825
|
+
| `defaultValue` | `'["{searchfield002}",""]'` |
|
|
826
|
+
| `type2DefaultValue` | 同上;`type1DefaultValue` 置空 |
|
|
827
|
+
|
|
828
|
+
设计器「默认值」框里显示成 `(searchfield002)` —— **圆括号只是 UI 渲染,落库必须是花括号**。
|
|
829
|
+
|
|
830
|
+
运行时:
|
|
831
|
+
|
|
832
|
+
- 请求里带同名字段 → `handleDefaultValue` 变成传入值(如 `["江苏EBU一部",""]`),报表按它过滤;
|
|
833
|
+
- 不带 / 传空 → 占位清空成 `["",""]`,直接打开报表不过滤。
|
|
834
|
+
|
|
835
|
+
⚠️ 条件保持「常规 / 空」时,URL 参数会被**静默忽略**:页面能打开、不报错、数据一条不少。这是钻取不过滤最常见的原因。
|
|
836
|
+
|
|
837
|
+
- **参数名以 `{…}` 里的名字为准**,链接的 key 必须与它一致;通常就是条件标识 `searchfield00x`。
|
|
838
|
+
- 日期区间用 `{searchfield001_start}` / `{searchfield001_end}`,URL 参数名同名。
|
|
839
|
+
- 体检:`e10-cli report verify drill <来源报表> --app-id <id>` —— 扫来源链接、读目标条件,缺绑定直接失败并给出修法。
|
|
840
|
+
|
|
841
|
+
---
|
|
842
|
+
|
|
843
|
+
## 六、EBU 报表示例(三条高级搜索 + 数据集行级筛选)
|
|
844
|
+
|
|
845
|
+
报表 `1304979556231593985` · 数据集 EBU团队 `1304979556231593994`
|
|
846
|
+
|
|
847
|
+
| 显示名称 | fieldKey 末段 | displayType | relation | 默认值 | queryType |
|
|
848
|
+
|----------|---------------|-------------|----------|--------|-----------|
|
|
849
|
+
| 集团军 | `field_1299763447342276612` | `text` | `Contain` | 无 | `["advance"]` |
|
|
850
|
+
| 入职时间 | `field_1299763447342276619` | `date.ymd` | `between` | `["{thismonth}",""]` | `["advance"]` |
|
|
851
|
+
| EBU成立时间 | `field_1299763447342276620` | `date.ym` | `between` | `["{date}","{date}"]` | `["advance"]` |
|
|
852
|
+
|
|
853
|
+
> 三条均为「高级搜索」显示方式 → 条件级 `queryType` 一律 `'["advance"]'`(见 §2.1)。
|
|
854
|
+
> 「高级搜索显示形式」(报表级、`saveQueryConfig` → `{"advancedSearchType":"openCondition"}`)是**报表级**开关,与条件级显示方式共享 `queryType` 覆盖关系(§2.1.3)。
|
|
855
|
+
|
|
856
|
+
---
|
|
857
|
+
|
|
858
|
+
## 七、数据集筛选(设计器左侧 · 行级权限)
|
|
859
|
+
|
|
860
|
+
> **完整规范已独立成文**:`dataset-query-filter-guide.md`(func 对照、字段对比、日期 format、AND/OR、EBU 金标准、验证清单)。
|
|
861
|
+
> 本节仅保留与高级搜索的边界说明。
|
|
862
|
+
|
|
863
|
+
**与高级搜索不同**:设计器左侧数据集右键「筛选条件」走 **`queryInfoSave` / `queryInfoGet`**(`conditionData` + `otherData`),**不是** `saveQueryItem`。
|
|
864
|
+
|
|
865
|
+
| API | 参数 |
|
|
866
|
+
|-----|------|
|
|
867
|
+
| 保存 | `POST /api/bs/edc/dataset/queryInfoSave` → `datasetId`, `filterData`, `otherData` |
|
|
868
|
+
| 读取 | `GET /api/bs/edc/dataset/queryInfoGet` → `datasetId` |
|
|
869
|
+
|
|
870
|
+
**快速对照**
|
|
871
|
+
|
|
872
|
+
| 需求入口 | 读哪份文档 |
|
|
873
|
+
|----------|-----------|
|
|
874
|
+
| 页面 → 查询设置(高级搜索) | 本文 §二–§六 |
|
|
875
|
+
| 左侧数据集 → 筛选条件 | **`dataset-query-filter-guide.md`** |
|
|
876
|
+
| 单元格自定义筛选 / datasetFilter | `cross-dataset-filter-guide.md` |
|
|
877
|
+
|
|
878
|
+
---
|
|
879
|
+
|
|
880
|
+
## 八、验证清单
|
|
881
|
+
|
|
882
|
+
写入后 `getQueryItem` 回读:
|
|
883
|
+
|
|
884
|
+
**形态**
|
|
885
|
+
|
|
886
|
+
- [ ] **调用**:multipart + `queryItems`=**单对象**(非数组);`conditions` 非 null
|
|
887
|
+
- [ ] 顶层 `filterType: "default"`;`conditions[]` 无 `filterType`
|
|
888
|
+
- [ ] 顶层 `dataSetId` / `name` 为 `null`;`nameIndex: "0"`;`sqlOptions: {}`
|
|
889
|
+
- [ ] **`queryType` 为 JSON 数组字符串**:`'["advance"]'`(高级搜索)或 `'["filter"]'`(筛选),可双选 `'["advance","filter"]'`(§2.1);**必须以 `[` 开头**
|
|
890
|
+
- [ ] **回显自检**:落库为长码 `"advancedSearch"` → 设计器「显示方式」**必不勾选**(落库错误,改数组即修复);不要解释为平台缺陷
|
|
891
|
+
- [ ] `asNameIndex` 唯一且 > 0;与 `showOrder` 一致
|
|
892
|
+
- [ ] `fieldOptions` 与 `conditions` 字段一致
|
|
893
|
+
|
|
894
|
+
**浏览按钮(人员 / 部门)**
|
|
895
|
+
|
|
896
|
+
- [ ] `displayType: "browser"` 且 **`browserTypeStr` 非空**(§2.1.2)
|
|
897
|
+
- [ ] 字段 `originFieldType=Employee` → `HrmEmployeeComInfo`
|
|
898
|
+
- [ ] 字段 `originFieldType=Department` → `HrmDepartmentComInfo`
|
|
899
|
+
- [ ] `browserTypeStr` 不得为 `"[]"`(关联类型丢失 → 退回「人员」)
|
|
900
|
+
- [ ] 若要求 UI 正确回显显示名,`browserType` 用富对象(含 `name`/`type`),非 `[{"id"}]` 简写
|
|
901
|
+
|
|
902
|
+
**文本**
|
|
903
|
+
|
|
904
|
+
- [ ] `displayType: "text"`(非 `select`)
|
|
905
|
+
|
|
906
|
+
**下拉**
|
|
907
|
+
|
|
908
|
+
- [ ] `displayType: "select"` 且 `selectOptions.length > 0`
|
|
909
|
+
- [ ] 选项来自匹配字段的 `/ds/options`(`fieldName` 为裸 ID,见 §3.2)
|
|
910
|
+
- [ ] 每项:`selectKey`=选项 ID(数值)、`selectValue`=显示名称(勿写反)
|
|
911
|
+
|
|
912
|
+
**日期选项**
|
|
913
|
+
|
|
914
|
+
- [ ] `enableOption=true`、`isTile=true`、`dataOptions` 21 项、`selectOptions=[]`、`optionTile={}`
|
|
915
|
+
|
|
916
|
+
**日期默认值**
|
|
917
|
+
|
|
918
|
+
- [ ] `defaultValueType: "custom"`(有默认值时)
|
|
919
|
+
- [ ] `handleDefaultValue` 非空且符合预期(如本月区间、今天同一天)
|
|
920
|
+
- [ ] **未**依赖 `filterParam.dateSelectDefaultValue`
|
|
921
|
+
|
|
922
|
+
**工具**
|
|
923
|
+
|
|
924
|
+
- [ ] 设计器刷新:齿轮菜单 21 项、默认值回显、删一条不影响其他条件
|
|
925
|
+
|
|
926
|
+
---
|
|
927
|
+
|
|
928
|
+
## 八、相关文档
|
|
929
|
+
|
|
930
|
+
| 文件 | 用途 |
|
|
931
|
+
|------|------|
|
|
932
|
+
| **`dataset-query-filter-guide.md`** | **左侧数据集筛选**(queryInfoSave 完整规范) |
|
|
933
|
+
| **`cell-transform-guide.md`** | **`browserType` 关联类型预设**(人员/部门 ComInfo id) |
|
|
934
|
+
| **`event-hreflink-guide.md`** | 事件链接传 `{searchfield00x}` / 单元格坐标 |
|
|
935
|
+
| `date-range-query-reference.md` | 21 项 dataOptions catalog |
|
|
936
|
+
| `cross-dataset-filter-guide.md` | datasetFilter / customFilterField |
|
|
937
|
+
| `report-building-guide.md` §6 | 设计器操作步骤 |
|
|
938
|
+
| `report-config-schema.md` §五 | Schema 摘要 |
|
|
939
|
+
| `SKILL.md` §6.3–§6.4 | Agent 步骤入口 |
|