为上一步的合同审批工作流添加两个 UX:发起人填写合同编号和金额,审批人从待办打开页面并审批。
在同一文件夹中新建 UX,编码为 DEMO_QS_ContractApproval_Start,名称为“合同发起”。
添加以下控件:
文本框:编码 contract_id,标题“合同编号”,设为必填。
数值条:编码 amount,标题“合同金额”,设为必填。
按钮:名称“发起审批”。
在按钮的点击事件中先校验以上输入项,校验通过后执行【发起流程】动作:
选择工作流 DEMO_QS_ContractApproval,发起方式选择【单次发起】。
启动参数 contract_id 选择【控件值 → 合同编号】。
启动参数 amount 选择【控件值 → 合同金额】。
保存 UX。此时输入值作为启动参数保存到流程实例;下一篇再增加合同数据的保存。
新建 UX,编码为 DEMO_QS_ContractApproval_Detail,名称为“合同审批详情”。在【页面变量】中新增以下变量,来源均选择【外部】:
|
变量编码 |
类型 |
用途 |
|---|---|---|
|
|
字符串 |
合同编号 |
|
|
数字 |
合同金额 |
|
|
字符串 |
任务实例 ID |
|
|
字符串 |
流程实例 ID |
在画布中添加控件,并通过赋值类型菜单配置:
合同编号文本框:值选择【UX变量 → contract】,设为只读。
合同金额数值条:值选择【UX变量 → amount】,设为只读。
任务处理:任务实例 ID 选择【UX变量 → task】。
流程记录:流程实例 ID 选择【UX变量 → proc】。
保存 UX。“同意、拒绝”按钮由工作流的任务动作生成,无须在 UX 中另建审批按钮。
打开工作流,选中“合同审批”节点,在【待办设置】中开启待办跳转,选择刚创建的审批页。加载该 UX 的外部变量后,为同名参数赋值:
|
跳转参数 |
工作流中的值 |
|---|---|
|
|
启动参数 |
|
|
启动参数 |
|
|
当前任务实例 ID |
|
|
当前流程实例 ID |
参数名须与 UX 外部变量编码一致。关闭【快速完成任务】,让处理人进入详情页审批。保存并重新发布工作流。
打开发起页的使用态,输入合同编号 HT-2026-002 和金额 18000,点击“发起审批”。
进入待办,找到新生成的“合同审批”任务;需要认领时先认领。
点击【查看】,确认审批页显示本次合同编号、金额、任务和流程记录。
点击“同意”或“拒绝”。返回流程监控,确认实例已完成,approval_result 与选择一致。
检查任务处理控件是否选择【UX变量 → task】。
检查待办跳转是否给 task 传入 acp$task_id,并已发布新版本。
从新实例的待办进入页面;直接打开没有参数的审批页,无法定位任务。
继续第 3 步:接入合同数据与状态,将这两个页面接入合同领域模型,实现合同保存、核准金额回传和拒绝后重新发起。
回到顶部
咨询热线
