先打开合同审批 Demo对照查看,再在自己的应用按以下步骤搭建。Demo 需登录 Alpha 环境,并具有应用及页面访问权限。
先建合同数据和状态迁移规则,后续工作流调用这些规则,UX 通过同一个领域模型查询和保存合同。
使用具有对象管理、元素编辑和流程发布权限的账号。编码已存在时可复用本例元素,或使用新的编码,并在后续配置中保持一致。
在 DeepModel 控制台创建对象 Contact,名称为“合同”。已有同用途对象时可复用。添加以下属性:
|
属性编码 |
名称 |
类型与配置 |
|---|---|---|
|
|
合同编号 |
文本,业务主键,必填 |
|
|
合同名称 |
文本 |
|
|
合同金额 |
小数,必填 |
|
|
核准金额 |
小数,创建合同时可为空 |
|
|
合同状态 |
枚举值,默认值为 |
为合同状态配置四个枚举值:
|
值 |
显示名称 |
|---|---|
|
|
草稿 |
|
|
审批中 |
|
|
已通过 |
|
|
已拒绝 |
在“合同状态”的枚举配置中,选中“草稿”作为默认值。

保存对象配置,确认可查询和保存数据。字段默认值只对新数据生效,已有合同的空状态需补为“草稿”。
在【元素管理】中新建通用领域模型:
编码:DEMO_QS_ContractApproval_Contract。
名称:合同审批领域模型。
主对象:Contact。
模型主键:使用主对象的业务主键 contract_id。
领域模型复用合同对象。确认主对象为 Contact,模型主键为 contract_id:

在【领域动作】中新增【状态迁移】动作:
编码:contract_state。
名称:合同状态迁移。
状态字段:主对象的 approval_result。
配置以下迁移规则并保存:
|
当前状态 |
事件编码 |
目标状态 |
|---|---|---|
|
草稿 |
|
审批中 |
|
审批中 |
|
已通过 |
|
审批中 |
|
已拒绝 |
|
已拒绝 |
|
审批中 |

已拒绝的合同通过 submit 再次进入审批,无须先改回草稿。事件编码将在工作流中使用,须保持一致。
本例沿用领域模型的动作权限,不另加“仅创建人”等人员限制。启用了访问策略时,确保演示账号可查询、保存合同并执行 contract_state;未启用访问策略时,动作权限默认允许。
确认领域模型可选到合同的五个字段,主键为 contract_id,且 contract_state 包含上述四条规则。合同记录将在第 3 步建好 UX 后录入,此处先完成对象和模型结构。
回到顶部
咨询热线
