Skip to content

基于表单提交的服务端验证不起作用 #12248

@xl-wenqiang

Description

@xl-wenqiang

描述问题:

基于表单提交的服务端验证不起作用

截图或视频:

Image

如何复现(请务必完整填写下面内容):

  1. 你是如何使用 amis 的?
    sdk

  2. amis 版本是什么?请先在最新 beta 版本测试问题是否存在
    最新版本

  3. 粘贴有问题的完整 amis schema 代码:

{
                    "type": "button",
                    "label": "AI创建",
                    "actionType": "dialog",
                    "dialog": {
                        "title": "AI创建",
                        "size": "lg",
                        "body": {
                            "type": "form",
                            "api": {
                                "url": "https://localhost:7120/approval/api/approval/WorkflowDefinitions",
                                "method": "POST"
                            },
                            "controls": [
                                {
                                    "name": "name",
                                    "label": "工作流名称",
                                    "type": "input-text",
                                    "placeholder": "请输入工作流名称",
                                    "required": true,
                                    "description": "请输入工作流名称,例如:请假审批流程、采购申请审批、合同审批等",
                                    "addOn": {
                                        "type": "button",
                                        "label": " ",
                                        "icon": "fa fa-magic",
                                        "level": "info",
                                        "actionType": "ajax",
                                        "loadingText": "AI正在生成中...",
                                        "api": {
                                            "method": "post",
                                            "url": "/approval/api/approval/WorkflowDefinitions/ai-fill",
                                            "data": {
                                                "&": "$$"
                                            },
                                            "responseData": {
                                                "&": "$$"
                                            }
                                        }
                                    }
                                },
                                {
                                    "name": "customPrompt",
                                    "label": "自定义提示词",
                                    "type": "textarea",
                                    "placeholder": "请输入自定义提示词(可选)",
                                    "required": false,
                                    "description": "可选:提供自定义的AI提示词来指导工作流和表单生成,留空则使用默认提示词",
                                    "minRows": 0,
                                    "maxRows": 0,
                                    "trim": false,
                                    "showCounter": false,
                                    "resizable": false
                                },
                                {
                                    "name": "code",
                                    "label": "工作流代码",
                                    "type": "input-text",
                                    "placeholder": "例如:LEAVE_APPROVAL",
                                    "required": true,
                                    "description": "工作流的唯一标识代码,用于系统内部识别,建议使用英文大写字母和下划线"
                                },
                                {
                                    "name": "description",
                                    "label": "工作流描述",
                                    "type": "textarea",
                                    "placeholder": "请详细描述工作流的用途和适用场景",
                                    "required": false,
                                    "description": "详细描述工作流的用途、适用场景和业务规则",
                                    "minRows": 0,
                                    "maxRows": 0,
                                    "trim": false,
                                    "showCounter": false,
                                    "resizable": false
                                },
                                {
                                    "name": "workflowType",
                                    "label": "工作流类型",
                                    "type": "input-text",
                                    "placeholder": "请输入工作流类型",
                                    "required": false,
                                    "description": "工作流的业务类型,如:人事审批、财务审批、采购审批、合同审批等"
                                },
                                {
                                    "name": "businessScenario",
                                    "label": "业务场景",
                                    "type": "input-text",
                                    "placeholder": "例如:员工请假、设备采购、供应商合同签署",
                                    "required": false,
                                    "description": "具体的业务应用场景,例如:员工请假、设备采购、供应商合同签署、财务报销、项目审批等"
                                },
                                {
                                    "name": "expectedApprovalLevels",
                                    "label": "预期审批层级",
                                    "type": "input-number",
                                    "required": true,
                                    "value": 2,
                                    "description": "预期的审批层级数量,用于生成合适的审批流程",
                                    "min": 1.0,
                                    "max": 10.0,
                                    "step": 1.0,
                                    "precision": 0,
                                    "showSteps": true,
                                    "bigNumber": false,
                                    "kilobitwise": false,
                                    "keyboard": "default",
                                    "isCurrency": false
                                },
                                {
                                    "name": "requireConditionalBranch",
                                    "label": "是否需要条件分支",
                                    "type": "switch",
                                    "required": true,
                                    "description": "是否需要根据业务条件进行不同的审批路径"
                                },
                                {
                                    "name": "conditionalBranchDescription",
                                    "label": "条件分支描述",
                                    "type": "textarea",
                                    "placeholder": "请描述条件分支的具体逻辑",
                                    "required": false,
                                    "visibleOn": "${RequireConditionalBranch}",
                                    "description": "描述需要的条件分支逻辑,例如:金额大于1万需要财务总监审批、请假天数超过3天需要部门经理和HR审批等",
                                    "minRows": 0,
                                    "maxRows": 0,
                                    "trim": false,
                                    "showCounter": false,
                                    "resizable": false
                                },
                                {
                                    "name": "isEnabled",
                                    "label": "是否启用",
                                    "type": "switch",
                                    "required": true,
                                    "description": "创建后是否立即启用此工作流"
                                },
                                {
                                    "name": "configuration",
                                    "label": "工作流配置",
                                    "type": "json",
                                    "placeholder": "高级配置选项(可选)",
                                    "required": false,
                                    "description": "高级配置选项,JSON格式,包含超时时间、提醒设置等"
                                },
                                {
                                    "name": "formSchema",
                                    "label": "审批表单Schema",
                                    "type": "amis",
                                    "placeholder": "将根据工作流信息自动生成",
                                    "required": false,
                                    "description": "审批时显示的表单结构,符合AMIS规范的JSON格式"
                                },
                                {
                                    "name": "approvalRoles",
                                    "label": "审批角色和层级",
                                    "type": "textarea",
                                    "placeholder": "请描述各级审批人的角色,例如:直接主管→部门经理→总监",
                                    "required": false,
                                    "description": "描述各级审批人的角色或职位,例如:直接主管→部门经理→总监→总经理",
                                    "minRows": 0,
                                    "maxRows": 0,
                                    "trim": false,
                                    "showCounter": false,
                                    "resizable": false
                                },
                                {
                                    "name": "workflowNodeSchema",
                                    "label": "工作流节点Schema",
                                    "type": "json",
                                    "placeholder": "将根据工作流信息自动生成",
                                    "required": false,
                                    "description": "工作流的节点配置,包含各个审批节点的配置信息,JSON格式。节点包含:名称、类型(Start/Approval/Condition/End)、审批模式、审批人配置、条件配置等"
                                },
                                {
                                    "name": "categoryId",
                                    "label": "工作流分类",
                                    "type": "select",
                                    "required": false,
                                    "description": "选择工作流所属的分类",
                                    "source": "${ROOT_API}/api/approval/WorkflowCategories/enabled",
                                    "labelField": "name",
                                    "valueField": "id",
                                    "multiple": false,
                                    "joinValues": true,
                                    "extractValue": false,
                                    "searchable": true,
                                    "clearable": true
                                }
                            ]
                        }
                    },
                    "icon": "fa-solid fa-magic"
                }
  1. 操作步骤
    点击提交时不会在目标控件提示 "工作流名称"采购"已存在,请使用其他值"

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions