This commit is contained in:
yumoqing 2026-04-17 11:07:49 +08:00
parent dd001f63b4
commit 91270d6ced
8 changed files with 558 additions and 546 deletions

View File

@ -2,28 +2,26 @@
"tblname": "approval_instance",
"title": "审批实例",
"params": {
"sortby": "created_at DESC",
"sortby": ["created_at desc"],
"logined_userorgid": "org_id",
"browserfields": {
"exclouded": ["id", "workflow_id", "module_record_id", "org_id"]
"excluded": ["id", "workflow_id", "module_record_id", "org_id"]
},
"editexclouded": ["id", "workflow_id", "module_record_id", "org_id", "current_step_id"],
"alterations": [
{
"field": "status",
"widgettype": "Select",
"options": {
"data": "get_code('APPROVAL_STATUS')"
"editexcluded": ["id", "workflow_id", "module_record_id", "org_id", "current_step_id"],
"alters": {
"status": {
"uitype": "code",
"data": [
{"value": "pending", "text": "待审批"},
{"value": "approved", "text": "已批准"},
{"value": "rejected", "text": "已拒绝"},
{"value": "cancelled", "text": "已取消"}
]
},
"module_type": {
"uitype": "text"
}
},
{
"field": "module_type",
"widgettype": "Text",
"options": {
"readonly": true
}
}
],
"subtables": [
{
"field": "id",

View File

@ -2,27 +2,31 @@
"tblname": "approval_step",
"title": "审批步骤",
"params": {
"sortby": "step_order",
"sortby": ["step_order"],
"logined_userorgid": "org_id",
"browserfields": {
"exclouded": ["id", "workflow_id", "org_id"]
"excluded": ["id", "workflow_id", "org_id"]
},
"editexclouded": ["id", "workflow_id", "org_id"],
"alterations": [
{
"field": "approver_type",
"widgettype": "Select",
"options": {
"data": "get_code('APPROVER_TYPE')"
}
"editexcluded": ["id", "workflow_id", "org_id"],
"alters": {
"approver_type": {
"uitype": "code",
"data": [
{"value": "role", "text": "角色"},
{"value": "user", "text": "用户"},
{"value": "department", "text": "部门"},
{"value": "dynamic", "text": "动态"}
]
},
{
"field": "approval_type",
"widgettype": "Select",
"options": {
"data": "get_code('APPROVAL_TYPE')"
}
}
"approval_type": {
"uitype": "code",
"data": [
{"value": "single", "text": "单人审批"},
{"value": "multiple", "text": "多人审批"},
{"value": "sequential", "text": "顺序审批"},
{"value": "parallel", "text": "并行审批"}
]
}
}
}
}

View File

@ -2,27 +2,21 @@
"tblname": "approval_task",
"title": "审批任务",
"params": {
"sortby": "assigned_at DESC",
"sortby": ["assigned_at desc"],
"logined_userorgid": "org_id",
"browserfields": {
"exclouded": ["id", "instance_id", "step_id", "org_id"]
"excluded": ["id", "instance_id", "step_id", "org_id"]
},
"editexclouded": ["id", "instance_id", "step_id", "org_id"],
"alterations": [
{
"field": "status",
"widgettype": "Select",
"options": {
"data": "get_code('TASK_STATUS')"
}
},
{
"field": "approver_id",
"widgettype": "Select",
"options": {
"data": "get_org_users(org_id)"
}
}
"editexcluded": ["id", "instance_id", "step_id", "org_id"],
"alters": {
"status": {
"uitype": "code",
"data": [
{"value": "pending", "text": "待审批"},
{"value": "approved", "text": "已批准"},
{"value": "rejected", "text": "已拒绝"}
]
}
}
}
}

View File

@ -2,12 +2,12 @@
"tblname": "approval_workflow",
"title": "审批工作流",
"params": {
"sortby": "workflow_name",
"sortby": ["workflow_name"],
"logined_userorgid": "org_id",
"browserfields": {
"exclouded": ["id", "org_id", "created_at", "updated_at"]
"excluded": ["id", "org_id", "created_at", "updated_at"]
},
"editexclouded": ["id", "org_id"],
"editexcluded": ["id", "org_id"],
"subtables": [
{
"field": "id",

View File

@ -1,16 +1,19 @@
{
"summary": {
"summary": [
{
"name": "approval_instance",
"label": "审批实例",
"comment": "具体的审批实例记录"
},
"title": "审批实例",
"primary": "id",
"catelog": "entity"
}
],
"fields": [
{
"name": "id",
"title": "ID",
"type": "str",
"length": 32,
"nullable": false,
"nullable": "no",
"comments": "主键UUID"
},
{
@ -18,7 +21,7 @@
"title": "工作流ID",
"type": "str",
"length": 32,
"nullable": false,
"nullable": "no",
"comments": "关联的工作流定义"
},
{
@ -26,7 +29,7 @@
"title": "模块类型",
"type": "str",
"length": 50,
"nullable": false,
"nullable": "no",
"comments": "customer/opportunity/contract/financial"
},
{
@ -34,7 +37,7 @@
"title": "模块记录ID",
"type": "str",
"length": 32,
"nullable": false,
"nullable": "no",
"comments": "关联的具体业务记录ID"
},
{
@ -42,7 +45,7 @@
"title": "当前步骤ID",
"type": "str",
"length": 32,
"nullable": true,
"nullable": "yes",
"comments": "当前待审批的步骤"
},
{
@ -50,7 +53,7 @@
"title": "状态",
"type": "str",
"length": 20,
"nullable": false,
"nullable": "no",
"comments": "pending/approved/rejected/cancelled"
},
{
@ -58,7 +61,7 @@
"title": "发起人ID",
"type": "str",
"length": 32,
"nullable": false,
"nullable": "no",
"comments": "审批发起人用户ID"
},
{
@ -66,7 +69,7 @@
"title": "标题",
"type": "str",
"length": 200,
"nullable": false,
"nullable": "no",
"comments": "审批标题"
},
{
@ -74,7 +77,7 @@
"title": "描述",
"type": "str",
"length": 1000,
"nullable": true,
"nullable": "yes",
"comments": "审批详细描述"
},
{
@ -82,21 +85,21 @@
"title": "组织ID",
"type": "str",
"length": 32,
"nullable": false,
"nullable": "no",
"comments": "多租户组织隔离"
},
{
"name": "created_at",
"title": "创建时间",
"type": "timestamp",
"nullable": false,
"nullable": "no",
"comments": "创建时间"
},
{
"name": "completed_at",
"title": "完成时间",
"type": "timestamp",
"nullable": true,
"nullable": "yes",
"comments": "完成时间"
}
],
@ -104,30 +107,31 @@
{
"name": "idx_instance_workflow",
"idxtype": "index",
"fields": ["workflow_id"]
"idxfields": ["workflow_id"]
},
{
"name": "idx_instance_module",
"idxtype": "index",
"fields": ["module_type", "module_record_id"]
"idxfields": ["module_type", "module_record_id"]
},
{
"name": "idx_instance_status",
"idxtype": "index",
"fields": ["status"]
"idxfields": ["status"]
},
{
"name": "idx_instance_org",
"idxtype": "index",
"fields": ["org_id"]
"idxfields": ["org_id"]
}
],
"codes": [
{
"tblname": "appcodes",
"codevalue": "APPROVAL_STATUS",
"field": "status",
"table": "appcodes",
"valuefield": "k",
"textfield": "v"
"textfield": "v",
"cond": "codetype='APPROVAL_STATUS'"
}
]
}

View File

@ -1,16 +1,19 @@
{
"summary": {
"summary": [
{
"name": "approval_step",
"label": "审批步骤",
"comment": "审批工作流步骤定义"
},
"title": "审批步骤",
"primary": "id",
"catelog": "entity"
}
],
"fields": [
{
"name": "id",
"title": "ID",
"type": "str",
"length": 32,
"nullable": false,
"nullable": "no",
"comments": "主键UUID"
},
{
@ -18,7 +21,7 @@
"title": "工作流ID",
"type": "str",
"length": 32,
"nullable": false,
"nullable": "no",
"comments": "关联的工作流"
},
{
@ -26,14 +29,14 @@
"title": "步骤名称",
"type": "str",
"length": 100,
"nullable": false,
"nullable": "no",
"comments": "审批步骤名称"
},
{
"name": "step_order",
"title": "步骤顺序",
"type": "long",
"nullable": false,
"nullable": "no",
"comments": "步骤执行顺序"
},
{
@ -41,7 +44,7 @@
"title": "审批人类型",
"type": "str",
"length": 20,
"nullable": false,
"nullable": "no",
"comments": "role/user/department/dynamic"
},
{
@ -49,7 +52,7 @@
"title": "审批人值",
"type": "str",
"length": 100,
"nullable": true,
"nullable": "yes",
"comments": "角色ID/用户ID/部门ID/动态表达式"
},
{
@ -57,14 +60,14 @@
"title": "审批类型",
"type": "str",
"length": 20,
"nullable": false,
"nullable": "no",
"comments": "single/multiple/sequential/parallel"
},
{
"name": "timeout_hours",
"title": "超时小时数",
"type": "long",
"nullable": true,
"nullable": "yes",
"comments": "审批超时时间(小时)"
},
{
@ -72,7 +75,7 @@
"title": "描述",
"type": "str",
"length": 500,
"nullable": true,
"nullable": "yes",
"comments": "步骤描述"
},
{
@ -80,7 +83,7 @@
"title": "组织ID",
"type": "str",
"length": 32,
"nullable": false,
"nullable": "no",
"comments": "多租户组织隔离"
}
],
@ -88,26 +91,28 @@
{
"name": "idx_step_workflow",
"idxtype": "index",
"fields": ["workflow_id"]
"idxfields": ["workflow_id"]
},
{
"name": "idx_step_order",
"idxtype": "index",
"fields": ["workflow_id", "step_order"]
"idxfields": ["workflow_id", "step_order"]
}
],
"codes": [
{
"tblname": "appcodes",
"codevalue": "APPROVER_TYPE",
"field": "approver_type",
"table": "appcodes",
"valuefield": "k",
"textfield": "v"
"textfield": "v",
"cond": "codetype='APPROVER_TYPE'"
},
{
"tblname": "appcodes",
"codevalue": "APPROVAL_TYPE",
"field": "approval_type",
"table": "appcodes",
"valuefield": "k",
"textfield": "v"
"textfield": "v",
"cond": "codetype='APPROVAL_TYPE'"
}
]
}

View File

@ -1,16 +1,19 @@
{
"summary": {
"summary": [
{
"name": "approval_task",
"label": "审批任务",
"comment": "具体的审批任务分配"
},
"title": "审批任务",
"primary": "id",
"catelog": "entity"
}
],
"fields": [
{
"name": "id",
"title": "ID",
"type": "str",
"length": 32,
"nullable": false,
"nullable": "no",
"comments": "主键UUID"
},
{
@ -18,7 +21,7 @@
"title": "实例ID",
"type": "str",
"length": 32,
"nullable": false,
"nullable": "no",
"comments": "关联的审批实例"
},
{
@ -26,7 +29,7 @@
"title": "步骤ID",
"type": "str",
"length": 32,
"nullable": false,
"nullable": "no",
"comments": "关联的审批步骤"
},
{
@ -34,7 +37,7 @@
"title": "审批人ID",
"type": "str",
"length": 32,
"nullable": false,
"nullable": "no",
"comments": "具体审批人用户ID"
},
{
@ -42,7 +45,7 @@
"title": "状态",
"type": "str",
"length": 20,
"nullable": false,
"nullable": "no",
"comments": "pending/approved/rejected"
},
{
@ -50,7 +53,7 @@
"title": "决策",
"type": "str",
"length": 1000,
"nullable": true,
"nullable": "yes",
"comments": "审批意见"
},
{
@ -58,28 +61,28 @@
"title": "组织ID",
"type": "str",
"length": 32,
"nullable": false,
"nullable": "no",
"comments": "多租户组织隔离"
},
{
"name": "assigned_at",
"title": "分配时间",
"type": "timestamp",
"nullable": false,
"nullable": "no",
"comments": "任务分配时间"
},
{
"name": "completed_at",
"title": "完成时间",
"type": "timestamp",
"nullable": true,
"nullable": "yes",
"comments": "任务完成时间"
},
{
"name": "due_at",
"title": "截止时间",
"type": "timestamp",
"nullable": true,
"nullable": "yes",
"comments": "任务截止时间"
}
],
@ -87,25 +90,26 @@
{
"name": "idx_task_instance",
"idxtype": "index",
"fields": ["instance_id"]
"idxfields": ["instance_id"]
},
{
"name": "idx_task_approver",
"idxtype": "index",
"fields": ["approver_id"]
"idxfields": ["approver_id"]
},
{
"name": "idx_task_status",
"idxtype": "index",
"fields": ["status"]
"idxfields": ["status"]
}
],
"codes": [
{
"tblname": "appcodes",
"codevalue": "TASK_STATUS",
"field": "status",
"table": "appcodes",
"valuefield": "k",
"textfield": "v"
"textfield": "v",
"cond": "codetype='TASK_STATUS'"
}
]
}

View File

@ -1,16 +1,19 @@
{
"summary": {
"summary": [
{
"name": "approval_workflow",
"label": "审批工作流",
"comment": "跨模块审批工作流定义"
},
"title": "审批工作流",
"primary": "id",
"catelog": "entity"
}
],
"fields": [
{
"name": "id",
"title": "ID",
"type": "str",
"length": 32,
"nullable": false,
"nullable": "no",
"comments": "主键UUID"
},
{
@ -18,7 +21,7 @@
"title": "工作流名称",
"type": "str",
"length": 100,
"nullable": false,
"nullable": "no",
"comments": "审批工作流名称"
},
{
@ -26,7 +29,7 @@
"title": "模块类型",
"type": "str",
"length": 50,
"nullable": false,
"nullable": "no",
"comments": "关联的模块类型(customer/opportunity/contract/financial)"
},
{
@ -34,7 +37,7 @@
"title": "触发条件",
"type": "str",
"length": 500,
"nullable": true,
"nullable": "yes",
"comments": "JSON格式的触发条件表达式"
},
{
@ -42,7 +45,7 @@
"title": "描述",
"type": "str",
"length": 500,
"nullable": true,
"nullable": "yes",
"comments": "工作流描述"
},
{
@ -50,21 +53,21 @@
"title": "组织ID",
"type": "str",
"length": 32,
"nullable": false,
"nullable": "no",
"comments": "多租户组织隔离"
},
{
"name": "created_at",
"title": "创建时间",
"type": "timestamp",
"nullable": false,
"nullable": "no",
"comments": "创建时间"
},
{
"name": "updated_at",
"title": "更新时间",
"type": "timestamp",
"nullable": false,
"nullable": "no",
"comments": "更新时间"
},
{
@ -72,7 +75,7 @@
"title": "是否激活",
"type": "str",
"length": 1,
"nullable": false,
"nullable": "no",
"comments": "Y/N"
}
],
@ -80,17 +83,17 @@
{
"name": "idx_workflow_org",
"idxtype": "index",
"fields": ["org_id"]
"idxfields": ["org_id"]
},
{
"name": "idx_workflow_module",
"idxtype": "index",
"fields": ["module_type"]
"idxfields": ["module_type"]
},
{
"name": "uk_workflow_name_org",
"idxtype": "unique",
"fields": ["workflow_name", "org_id"]
"idxfields": ["workflow_name", "org_id"]
}
],
"codes": []