@@ -13,7 +13,7 @@ public interface FlowConst { | |||
public static final String LOG = "log";// 流程历史 | |||
public static final String WORD = "word";// 导出Word | |||
public static final String EXCEL = "excel";// 导出Excel | |||
public static final String HANDLER = "handler";// 办理,签收 | |||
public static final String HANDLE = "handle";// 办理,签收 | |||
public static final String SUBMIT = "submit";// 提交 | |||
public static final String RETAKE = "retake";// 取回 | |||
public static final String REJECT = "reject";// 驳回 | |||
@@ -9,7 +9,7 @@ import java.util.List; | |||
* 步骤定义 | |||
*/ | |||
@Data | |||
public class ActivityInfo { | |||
public class Activity { | |||
//"id": "", | |||
private String id; | |||
//类别:1-开始任务 2-用户任务 3-条件分支 4-并行开始 5-并行结束 6-脚本任务 9-结束任务 | |||
@@ -24,12 +24,15 @@ public class ActivityInfo { | |||
private boolean canEdit; | |||
//是否需要会签 | |||
private boolean needSign; | |||
//按钮配置 | |||
private List<Button> buttons; | |||
//可编辑的字段 | |||
private List<String> eidtFields; | |||
//不可查看的字段 | |||
private List<String> disableFields; | |||
//主办人相关信息 | |||
private HandlerInfo handler; | |||
private Handler handler; | |||
//会签相关信息 | |||
private SignInfo sign; | |||
private Sign sign; | |||
} |
@@ -0,0 +1,16 @@ | |||
package cc.smtweb.system.bpm.web.design.flow.define; | |||
import lombok.Data; | |||
/** | |||
* Created by Akmm at 2022-07-28 20:57 | |||
*/ | |||
@Data | |||
public class Button { | |||
//按钮类型 | |||
private String type; | |||
//按钮显示文本 | |||
private String label; | |||
//是否允许 | |||
private boolean valid; | |||
} |
@@ -2,16 +2,14 @@ package cc.smtweb.system.bpm.web.design.flow.define; | |||
import lombok.Data; | |||
import java.util.List; | |||
/** | |||
* Created by Akmm at 2022/5/23 9:45 | |||
* 主办人设置信息 | |||
*/ | |||
@Data | |||
public class HandlerInfo { | |||
public class Handler { | |||
//主办人分组 | |||
private List<Long> userGroup; | |||
private Long userGroup; | |||
//主办人过滤:制单人所属单位/制单人所属部门/上一步提交人所属单位/上一步提交人所属部门 | |||
private int filter; | |||
//主办人过滤:上一步提交人/过滤制单人 |
@@ -17,7 +17,7 @@ public class ProcInfo { | |||
//1-驳回到制单 0-逐级驳回 | |||
private boolean rejectToMake; | |||
//活动节点 | |||
private List<ActivityInfo> activities; | |||
private List<Activity> activities; | |||
//连接线 | |||
private List<TransInfo> trans; | |||
private List<Trans> trans; | |||
} |
@@ -7,11 +7,12 @@ import lombok.Data; | |||
* 会签信息 | |||
*/ | |||
@Data | |||
public class SignInfo extends HandlerInfo{ | |||
public class Sign extends Handler { | |||
//最少会签人数 | |||
private int minSign; | |||
//最少会签同意人数 | |||
private int minAgree; | |||
//最少会签同意人数单位:0-人数 1-会签同意占比 | |||
private int minAgreeUnit; | |||
} |
@@ -7,7 +7,7 @@ import lombok.Data; | |||
* 连接线 | |||
*/ | |||
@Data | |||
public class TransInfo { | |||
public class Trans { | |||
//唯一标识 | |||
private String id; | |||
//序号 |
@@ -1,130 +1,602 @@ | |||
{ | |||
"fields": [ | |||
"type": "workflow", | |||
"version": 3, | |||
"flows": [ | |||
{ | |||
"locked": 1, | |||
"name": "ar_id", | |||
"title": "主键", | |||
"fieldType": 1, | |||
"dataType": "id", | |||
"null": 1, | |||
"default": -1 | |||
}, | |||
{ | |||
"locked": 0, | |||
"name": "ar_parent_id", | |||
"title": "所属区划", | |||
"fieldType": 4, | |||
"dataType": "id", | |||
"null": 0, | |||
"default": "", | |||
"editor": "input", | |||
"link": "718410950209703936", | |||
"link_text": "SYS_AREA" | |||
}, | |||
{ | |||
"locked": 1, | |||
"name": "ar_code", | |||
"title": "编码", | |||
"fieldType": 2, | |||
"dataType": "code", | |||
"null": 1, | |||
"default": "", | |||
"editor": "input" | |||
}, | |||
{ | |||
"locked": 1, | |||
"name": "ar_name", | |||
"title": "名称", | |||
"fieldType": 3, | |||
"dataType": "name", | |||
"null": 1, | |||
"default": "", | |||
"editor": "input" | |||
}, | |||
{ | |||
"name": "ar_full_name", | |||
"editor": "input", | |||
"title": "全称", | |||
"remark": "标准名称", | |||
"dataType": "name", | |||
"default": "" | |||
}, | |||
{ | |||
"locked": 1, | |||
"name": "ar_level", | |||
"title": "级次", | |||
"fieldType": 6, | |||
"dataType": "short", | |||
"null": 0, | |||
"default": "0", | |||
"editor": "num" | |||
}, | |||
{ | |||
"locked": 1, | |||
"name": "ar_level_code", | |||
"title": "级次码", | |||
"fieldType": 5, | |||
"dataType": "code", | |||
"null": 0, | |||
"default": "", | |||
"editor": "input" | |||
}, | |||
{ | |||
"name": "ar_type", | |||
"editor": "input", | |||
"title": "属别", | |||
"dataType": "id", | |||
"default": "", | |||
"link": "719938288126791680", | |||
"link_text": "SYS_DICT" | |||
}, | |||
{ | |||
"name": "ar_statu", | |||
"editor": "combo", | |||
"title": "状态", | |||
"dataType": "bool", | |||
"default": "0", | |||
"remark": "停用与否" | |||
}, | |||
{ | |||
"name": "ar_seq", | |||
"editor": "num", | |||
"title": "排序码", | |||
"dataType": "int", | |||
"default": "0" | |||
}, | |||
{ | |||
"name": "ar_remark", | |||
"editor": "input", | |||
"title": "备注", | |||
"dataType": "remark", | |||
"default": "" | |||
} | |||
], | |||
"indexes": [ | |||
{ | |||
"locked": 1, | |||
"fields": "ar_id", | |||
"type": "P" | |||
}, | |||
{ | |||
"fields": "ar_parent_id", | |||
"type": "I" | |||
"widget": { | |||
"type": "flow-chart", | |||
"props": { | |||
"title": "并行流程测试" | |||
} | |||
}, | |||
"graph": { | |||
"cells": [ | |||
{ | |||
"position": { | |||
"x": 240, | |||
"y": -450 | |||
}, | |||
"size": { | |||
"width": 60, | |||
"height": 50 | |||
}, | |||
"attrs": { | |||
"icon": { | |||
"xlink:href": "/src/assets/images/svg/play.svg" | |||
} | |||
}, | |||
"shape": "flow-end", | |||
"id": "node173c6e891c8", | |||
"data": { | |||
"id": "node173c6e891c8", | |||
"type": "flow-node-begin", | |||
"props": { | |||
"label": "开始" | |||
} | |||
}, | |||
"zIndex": 1 | |||
}, | |||
{ | |||
"position": { | |||
"x": 210, | |||
"y": -305.99999999999966 | |||
}, | |||
"size": { | |||
"width": 120, | |||
"height": 50 | |||
}, | |||
"attrs": { | |||
"text": { | |||
"text": "任务1" | |||
}, | |||
"icon": { | |||
"xlink:href": "/src/assets/images/svg/people.svg" | |||
} | |||
}, | |||
"shape": "flow-action", | |||
"id": "node173c6eb453c", | |||
"data": { | |||
"id": "node173c6eb453c", | |||
"type": "flow-node-manual", | |||
"props": { | |||
"label": "任务1", | |||
"users": [ | |||
{ | |||
"type": "userGroup", | |||
"target": { | |||
"ugId": 21222, | |||
"ugName": "部门经理", | |||
"ugCreateAt": "2020-07-26 10:42:43", | |||
"ugUpdateAt": "2020-07-26 10:42:43" | |||
}, | |||
"notNull": true, | |||
"filter": "" | |||
} | |||
], | |||
"fields": [ | |||
{ | |||
"id": "column-172fda7eb90", | |||
"name": "id", | |||
"label": "ID", | |||
"perm": "read", | |||
"notNull": false | |||
}, | |||
{ | |||
"id": "col-173284e59df", | |||
"name": "name", | |||
"label": "数据字段", | |||
"perm": "write", | |||
"notNull": false | |||
} | |||
], | |||
"actionReturn": true, | |||
"actionTransmit": true | |||
} | |||
}, | |||
"zIndex": 1 | |||
}, | |||
{ | |||
"position": { | |||
"x": 210, | |||
"y": -174.99999999999966 | |||
}, | |||
"size": { | |||
"width": 120, | |||
"height": 50 | |||
}, | |||
"attrs": { | |||
"icon": { | |||
"xlink:href": "/src/assets/images/svg/add-one.svg" | |||
} | |||
}, | |||
"shape": "flow-choice", | |||
"id": "node173c6eb4542", | |||
"data": { | |||
"id": "node173c6eb4542", | |||
"type": "flow-node-split", | |||
"props": { | |||
"label": "任务分支" | |||
} | |||
}, | |||
"zIndex": 1 | |||
}, | |||
{ | |||
"position": { | |||
"x": 210, | |||
"y": 104 | |||
}, | |||
"size": { | |||
"width": 120, | |||
"height": 50 | |||
}, | |||
"attrs": { | |||
"icon": { | |||
"xlink:href": "/src/assets/images/svg/reduce.svg" | |||
} | |||
}, | |||
"shape": "flow-choice", | |||
"id": "node173c6eb4545", | |||
"data": { | |||
"id": "node173c6eb4545", | |||
"type": "flow-node-merge", | |||
"props": { | |||
"label": "任务聚合" | |||
} | |||
}, | |||
"zIndex": 1 | |||
}, | |||
{ | |||
"position": { | |||
"x": 110, | |||
"y": -29.999999999999716 | |||
}, | |||
"size": { | |||
"width": 120, | |||
"height": 50 | |||
}, | |||
"attrs": { | |||
"text": { | |||
"text": "任务2-1" | |||
}, | |||
"icon": { | |||
"xlink:href": "/src/assets/images/svg/people.svg" | |||
} | |||
}, | |||
"shape": "flow-action", | |||
"id": "node173c6eb4547", | |||
"data": { | |||
"id": "node173c6eb4547", | |||
"type": "flow-node-manual", | |||
"props": { | |||
"label": "任务2-1", | |||
"fields": [ | |||
{ | |||
"id": "column-172fda7eb90", | |||
"name": "id", | |||
"label": "ID", | |||
"perm": "read", | |||
"notNull": false | |||
}, | |||
{ | |||
"id": "col-173284e59df", | |||
"name": "name", | |||
"label": "数据字段", | |||
"perm": "write", | |||
"notNull": false | |||
} | |||
], | |||
"users": [ | |||
{ | |||
"type": "userGroup", | |||
"target": { | |||
"ugId": 21222, | |||
"ugName": "部门经理", | |||
"ugCreateAt": "2020-07-26 10:42:43", | |||
"ugUpdateAt": "2020-07-26 10:42:43" | |||
}, | |||
"notNull": true, | |||
"filter": "" | |||
} | |||
], | |||
"actionReturn": true, | |||
"actionTransmit": true | |||
} | |||
}, | |||
"zIndex": 1 | |||
}, | |||
{ | |||
"position": { | |||
"x": 307, | |||
"y": -29.999999999999716 | |||
}, | |||
"size": { | |||
"width": 120, | |||
"height": 50 | |||
}, | |||
"attrs": { | |||
"text": { | |||
"text": "任务2-2" | |||
}, | |||
"icon": { | |||
"xlink:href": "/src/assets/images/svg/people.svg" | |||
} | |||
}, | |||
"shape": "flow-action", | |||
"id": "node173c6eb454c", | |||
"data": { | |||
"id": "node173c6eb454c", | |||
"type": "flow-node-manual", | |||
"props": { | |||
"label": "任务2-2", | |||
"fields": [ | |||
{ | |||
"id": "column-172fda7eb90", | |||
"name": "id", | |||
"label": "ID", | |||
"perm": "write", | |||
"notNull": false | |||
}, | |||
{ | |||
"id": "col-173284e59df", | |||
"name": "name", | |||
"label": "数据字段", | |||
"perm": "read", | |||
"notNull": false | |||
} | |||
], | |||
"users": [ | |||
{ | |||
"type": "userGroup", | |||
"target": { | |||
"ugId": 21222, | |||
"ugName": "部门经理", | |||
"ugCreateAt": "2020-07-26 10:42:43", | |||
"ugUpdateAt": "2020-07-26 10:42:43" | |||
}, | |||
"notNull": true, | |||
"filter": "" | |||
} | |||
], | |||
"actionReturn": true, | |||
"actionTransmit": true | |||
} | |||
}, | |||
"zIndex": 1 | |||
}, | |||
{ | |||
"position": { | |||
"x": 210, | |||
"y": 230 | |||
}, | |||
"size": { | |||
"width": 120, | |||
"height": 50 | |||
}, | |||
"attrs": { | |||
"text": { | |||
"text": "任务3" | |||
}, | |||
"icon": { | |||
"xlink:href": "/src/assets/images/svg/people.svg" | |||
} | |||
}, | |||
"shape": "flow-action", | |||
"id": "node173c7c0d14e", | |||
"data": { | |||
"id": "node173c7c0d14e", | |||
"type": "flow-node-manual", | |||
"props": { | |||
"label": "任务3", | |||
"users": [ | |||
{ | |||
"type": "userGroup", | |||
"target": { | |||
"ugId": 21222, | |||
"ugName": "部门经理", | |||
"ugCreateAt": "2020-07-26 10:42:43", | |||
"ugUpdateAt": "2020-07-26 10:42:43" | |||
}, | |||
"notNull": true, | |||
"filter": "" | |||
} | |||
], | |||
"actionReturn": true, | |||
"actionTransmit": true | |||
} | |||
}, | |||
"zIndex": 1 | |||
}, | |||
{ | |||
"position": { | |||
"x": 240, | |||
"y": 340 | |||
}, | |||
"size": { | |||
"width": 60, | |||
"height": 50 | |||
}, | |||
"attrs": { | |||
"icon": { | |||
"xlink:href": "/src/assets/images/svg/stop.svg" | |||
} | |||
}, | |||
"shape": "flow-end", | |||
"id": "node173c7dfe36c", | |||
"data": { | |||
"id": "node173c7dfe36c", | |||
"type": "flow-node-end", | |||
"props": { | |||
"label": "结束" | |||
} | |||
}, | |||
"zIndex": 1 | |||
}, | |||
{ | |||
"shape": "edge", | |||
"attrs": { | |||
"line": { | |||
"stroke": "#4D5B62", | |||
"strokeWidth": 1 | |||
} | |||
}, | |||
"id": "conn173c6eb4541", | |||
"data": { | |||
"id": "conn173c6eb4541", | |||
"type": "flow-edge", | |||
"props": { | |||
"label": "启动" | |||
} | |||
}, | |||
"zIndex": 1, | |||
"source": { | |||
"cell": "node173c6e891c8" | |||
}, | |||
"target": { | |||
"cell": "node173c6eb453c" | |||
} | |||
}, | |||
{ | |||
"shape": "edge", | |||
"attrs": { | |||
"line": { | |||
"stroke": "#4D5B62", | |||
"strokeWidth": 1 | |||
} | |||
}, | |||
"id": "conn173c6eb4544", | |||
"data": { | |||
"id": "conn173c6eb4544", | |||
"type": "flow-edge", | |||
"props": { | |||
"label": "提交" | |||
} | |||
}, | |||
"zIndex": 1, | |||
"source": { | |||
"cell": "node173c6eb453c" | |||
}, | |||
"target": { | |||
"cell": "node173c6eb4542" | |||
} | |||
}, | |||
{ | |||
"shape": "edge", | |||
"attrs": { | |||
"line": { | |||
"stroke": "#4D5B62", | |||
"strokeWidth": 1 | |||
} | |||
}, | |||
"id": "conn173c6eb4551", | |||
"data": { | |||
"id": "conn173c6eb4551", | |||
"type": "flow-edge", | |||
"props": { | |||
"label": "执行" | |||
} | |||
}, | |||
"zIndex": 1, | |||
"source": { | |||
"cell": "node173c6eb4542" | |||
}, | |||
"target": { | |||
"cell": "node173c6eb4547" | |||
} | |||
}, | |||
{ | |||
"shape": "edge", | |||
"attrs": { | |||
"line": { | |||
"stroke": "#4D5B62", | |||
"strokeWidth": 1 | |||
} | |||
}, | |||
"id": "conn173c6eb4553", | |||
"data": { | |||
"id": "conn173c6eb4553", | |||
"type": "flow-edge", | |||
"props": { | |||
"label": "执行2" | |||
} | |||
}, | |||
"zIndex": 1, | |||
"source": { | |||
"cell": "node173c6eb4542" | |||
}, | |||
"target": { | |||
"cell": "node173c6eb454c" | |||
} | |||
}, | |||
{ | |||
"shape": "edge", | |||
"attrs": { | |||
"line": { | |||
"stroke": "#4D5B62", | |||
"strokeWidth": 1 | |||
} | |||
}, | |||
"id": "conn173c7dfe36b", | |||
"data": { | |||
"id": "conn173c7dfe36b", | |||
"type": "flow-edge", | |||
"props": { | |||
"label": "执行" | |||
} | |||
}, | |||
"zIndex": 1, | |||
"source": { | |||
"cell": "node173c6eb4545" | |||
}, | |||
"target": { | |||
"cell": "node173c7c0d14e" | |||
} | |||
}, | |||
{ | |||
"shape": "edge", | |||
"attrs": { | |||
"line": { | |||
"stroke": "#4D5B62", | |||
"strokeWidth": 1 | |||
} | |||
}, | |||
"id": "conn173c6eb4555", | |||
"data": { | |||
"id": "conn173c6eb4555", | |||
"type": "flow-edge", | |||
"props": { | |||
"label": "提交" | |||
} | |||
}, | |||
"zIndex": 1, | |||
"source": { | |||
"cell": "node173c6eb4547" | |||
}, | |||
"target": { | |||
"cell": "node173c6eb4545" | |||
} | |||
}, | |||
{ | |||
"shape": "edge", | |||
"attrs": { | |||
"line": { | |||
"stroke": "#4D5B62", | |||
"strokeWidth": 1 | |||
} | |||
}, | |||
"id": "conn173c6eb4554", | |||
"data": { | |||
"id": "conn173c6eb4554", | |||
"type": "flow-edge", | |||
"props": { | |||
"label": "提交" | |||
} | |||
}, | |||
"zIndex": 1, | |||
"source": { | |||
"cell": "node173c6eb454c" | |||
}, | |||
"target": { | |||
"cell": "node173c6eb4545" | |||
} | |||
}, | |||
{ | |||
"shape": "edge", | |||
"attrs": { | |||
"line": { | |||
"stroke": "#4D5B62", | |||
"strokeWidth": 1 | |||
} | |||
}, | |||
"id": "conn173c7dfe36d", | |||
"data": { | |||
"id": "conn173c7dfe36d", | |||
"type": "flow-edge", | |||
"props": { | |||
"label": "提交" | |||
} | |||
}, | |||
"zIndex": 1, | |||
"source": { | |||
"cell": "node173c7c0d14e" | |||
}, | |||
"target": { | |||
"cell": "node173c7dfe36c" | |||
} | |||
} | |||
] | |||
} | |||
} | |||
], | |||
"caches": [ | |||
{ | |||
"locked": 1, | |||
"name": "code", | |||
"title": "按编码", | |||
"fields": "ar_code", | |||
"type": "M" | |||
}, | |||
{ | |||
"name": "pr", | |||
"title": "按父ID", | |||
"fields": "ar_parent_id", | |||
"type": "L" | |||
} | |||
] | |||
"model": { | |||
"page": "默认表单定义", | |||
"canEditOther": "bool是否允许编辑非本人单据", | |||
"rejectToMake": "bool True-驳回到制单 False-逐级驳回", | |||
"activities": [ | |||
{ | |||
"id": "唯一标识", | |||
"type": "类别:1-开始任务 2-用户任务 3-条件分支 4-并行开始 5-并行结束 6-脚本任务 9-结束任务", | |||
"code": "活动编号,代码可调用", | |||
"label": "活动名称", | |||
"page": "表单定义", | |||
"canEdit": "是否可编辑", | |||
"needSign": "是否需要会签", | |||
"buttons": [ | |||
{ | |||
"type": "submit", | |||
"label": "提交", | |||
"valid": "是否允许,bool" | |||
}, | |||
{ | |||
"type": "reject", | |||
"label": "驳回", | |||
"valid": "是否允许,bool" | |||
}, | |||
{ | |||
"type": "retake", | |||
"label": "取回", | |||
"valid": "是否允许,bool" | |||
}, | |||
{ | |||
"type": "cancel", | |||
"label": "作废", | |||
"valid": "是否允许,bool" | |||
}, | |||
{ | |||
"type": "delete", | |||
"label": "删除", | |||
"valid": "是否允许,bool" | |||
} | |||
], | |||
"eidtFields": [ | |||
"可编辑的字段" | |||
], | |||
"disableFields": [ | |||
"不可查看的字段" | |||
], | |||
"handler": { | |||
"userGroup": "主办人分组", | |||
"filter": "主办人过滤:制单人所属单位/制单人所属部门/上一步提交人所属单位/上一步提交人所属部门", | |||
"ignore": "主办人过滤:上一步提交人/过滤制单人" | |||
}, | |||
"sign": { | |||
"minSign": "最少会签人数", | |||
"minAgree": "最少会签同意人数", | |||
"minAgreeUnit": "最少会签同意人数单位:0-人数 1-会签同意占比", | |||
"userGroup": "会签人分组", | |||
"filter": "会签人过滤:制单人所属单位/制单人所属部门/上一步提交人所属单位/上一步提交人所属部门", | |||
"ignore": "会签人过滤:上一步提交人/过滤制单人" | |||
} | |||
} | |||
], | |||
"trans": [ | |||
{ | |||
"id": "唯一标识", | |||
"seq": "序号", | |||
"expr": "条件表达式", | |||
"src": "源活动", | |||
"dst": "目标活动", | |||
"desc": "说明" | |||
} | |||
] | |||
} | |||
} |
@@ -0,0 +1,46 @@ | |||
{ | |||
"权限组.权限详细": [ | |||
{ | |||
"kind": "0-包含 1-排除", | |||
"value": "值", | |||
"type": "树形结构有效:0-仅本级 1-含下级" | |||
} | |||
], | |||
"菜单定义.权限点": { | |||
"data": [ | |||
"可配置的数据权限,权限定义Id" | |||
], | |||
"func": [ | |||
"可配置的功能权限,默认read/write" | |||
], | |||
"field": [ | |||
"可配置的字段" | |||
] | |||
}, | |||
"菜单方案.详细": [ | |||
{ | |||
"id": "唯一id", | |||
"menu": "菜单定义id", | |||
"icon": "图标名,默认为菜单定义图标,可修改", | |||
"label": "菜单名,默认为菜单定义name,可修改", | |||
"seq": "排序码", | |||
"children": [ | |||
] | |||
} | |||
], | |||
"角色表.权限详细": [ | |||
{ | |||
"id": "菜单方案详细id", | |||
"menuId": "菜单定义id", | |||
"menu": "菜单权限:0-无 1-有", | |||
"func": ["授予的功能权限点"], | |||
"data": [{ | |||
"key": "权限定义id", | |||
"value": "权限组id" | |||
}], | |||
"field": { | |||
"字段权限中的字段": "0-无/1-读/2-写" | |||
} | |||
} | |||
] | |||
} |
@@ -1,84 +1,602 @@ | |||
{ | |||
"form": [ | |||
"type": "workflow", | |||
"version": 3, | |||
"flows": [ | |||
{ | |||
"page": { | |||
"id": "id18117e2fce8", | |||
"type": "fx-page", | |||
"widget": { | |||
"type": "flow-chart", | |||
"props": { | |||
"title": "项目", | |||
"key": "716232842824126464" | |||
"title": "并行流程测试" | |||
} | |||
}, | |||
"graph": { | |||
"shape": "panel", | |||
"id": "root_panel", | |||
"type": "fx-split-panel", | |||
"props": { | |||
"horizontal": true, | |||
"shadow": "never" | |||
}, | |||
"children": [ | |||
{ | |||
"shape": "panel", | |||
"id": "form_panel", | |||
"type": "fx-form-panel", | |||
"props": { | |||
"colNum": 3, | |||
"paddingX": 5, | |||
"paddingY": 5 | |||
}, | |||
"children": [ | |||
{ | |||
"id": "id18117e2fcf0", | |||
"type": "fx-text", | |||
"props": { | |||
"label": "名称", | |||
"type": "text", | |||
"maxlength": 50, | |||
"placeholder": "请输入内容", | |||
"labelWidth": 100, | |||
"dataset": "ds_18117e2fce9", | |||
"field": "id_18117e2fced", | |||
"name": "prj_name" | |||
}, | |||
"events": {} | |||
} | |||
] | |||
"cells": [ | |||
{ | |||
"position": { | |||
"x": 240, | |||
"y": -450 | |||
}, | |||
"size": { | |||
"width": 60, | |||
"height": 50 | |||
}, | |||
"attrs": { | |||
"icon": { | |||
"xlink:href": "/src/assets/images/svg/play.svg" | |||
} | |||
}, | |||
"shape": "flow-end", | |||
"id": "node173c6e891c8", | |||
"data": { | |||
"id": "node173c6e891c8", | |||
"type": "flow-node-begin", | |||
"props": { | |||
"label": "开始" | |||
} | |||
}, | |||
"zIndex": 1 | |||
}, | |||
{ | |||
"position": { | |||
"x": 210, | |||
"y": -305.99999999999966 | |||
}, | |||
"size": { | |||
"width": 120, | |||
"height": 50 | |||
}, | |||
"attrs": { | |||
"text": { | |||
"text": "任务1" | |||
}, | |||
"icon": { | |||
"xlink:href": "/src/assets/images/svg/people.svg" | |||
} | |||
}, | |||
"shape": "flow-action", | |||
"id": "node173c6eb453c", | |||
"data": { | |||
"id": "node173c6eb453c", | |||
"type": "flow-node-manual", | |||
"props": { | |||
"label": "任务1", | |||
"users": [ | |||
{ | |||
"type": "userGroup", | |||
"target": { | |||
"ugId": 21222, | |||
"ugName": "部门经理", | |||
"ugCreateAt": "2020-07-26 10:42:43", | |||
"ugUpdateAt": "2020-07-26 10:42:43" | |||
}, | |||
"notNull": true, | |||
"filter": "" | |||
} | |||
], | |||
"fields": [ | |||
{ | |||
"id": "column-172fda7eb90", | |||
"name": "id", | |||
"label": "ID", | |||
"perm": "read", | |||
"notNull": false | |||
}, | |||
{ | |||
"id": "col-173284e59df", | |||
"name": "name", | |||
"label": "数据字段", | |||
"perm": "write", | |||
"notNull": false | |||
} | |||
], | |||
"actionReturn": true, | |||
"actionTransmit": true | |||
} | |||
}, | |||
"zIndex": 1 | |||
}, | |||
{ | |||
"position": { | |||
"x": 210, | |||
"y": -174.99999999999966 | |||
}, | |||
"size": { | |||
"width": 120, | |||
"height": 50 | |||
}, | |||
"attrs": { | |||
"icon": { | |||
"xlink:href": "/src/assets/images/svg/add-one.svg" | |||
} | |||
}, | |||
"shape": "flow-choice", | |||
"id": "node173c6eb4542", | |||
"data": { | |||
"id": "node173c6eb4542", | |||
"type": "flow-node-split", | |||
"props": { | |||
"label": "任务分支" | |||
} | |||
}, | |||
"zIndex": 1 | |||
}, | |||
{ | |||
"position": { | |||
"x": 210, | |||
"y": 104 | |||
}, | |||
"size": { | |||
"width": 120, | |||
"height": 50 | |||
}, | |||
"attrs": { | |||
"icon": { | |||
"xlink:href": "/src/assets/images/svg/reduce.svg" | |||
} | |||
}, | |||
"shape": "flow-choice", | |||
"id": "node173c6eb4545", | |||
"data": { | |||
"id": "node173c6eb4545", | |||
"type": "flow-node-merge", | |||
"props": { | |||
"label": "任务聚合" | |||
} | |||
}, | |||
"zIndex": 1 | |||
}, | |||
{ | |||
"position": { | |||
"x": 110, | |||
"y": -29.999999999999716 | |||
}, | |||
"size": { | |||
"width": 120, | |||
"height": 50 | |||
}, | |||
"attrs": { | |||
"text": { | |||
"text": "任务2-1" | |||
}, | |||
"icon": { | |||
"xlink:href": "/src/assets/images/svg/people.svg" | |||
} | |||
}, | |||
"shape": "flow-action", | |||
"id": "node173c6eb4547", | |||
"data": { | |||
"id": "node173c6eb4547", | |||
"type": "flow-node-manual", | |||
"props": { | |||
"label": "任务2-1", | |||
"fields": [ | |||
{ | |||
"id": "column-172fda7eb90", | |||
"name": "id", | |||
"label": "ID", | |||
"perm": "read", | |||
"notNull": false | |||
}, | |||
{ | |||
"id": "col-173284e59df", | |||
"name": "name", | |||
"label": "数据字段", | |||
"perm": "write", | |||
"notNull": false | |||
} | |||
], | |||
"users": [ | |||
{ | |||
"type": "userGroup", | |||
"target": { | |||
"ugId": 21222, | |||
"ugName": "部门经理", | |||
"ugCreateAt": "2020-07-26 10:42:43", | |||
"ugUpdateAt": "2020-07-26 10:42:43" | |||
}, | |||
"notNull": true, | |||
"filter": "" | |||
} | |||
], | |||
"actionReturn": true, | |||
"actionTransmit": true | |||
} | |||
}, | |||
"zIndex": 1 | |||
}, | |||
{ | |||
"position": { | |||
"x": 307, | |||
"y": -29.999999999999716 | |||
}, | |||
"size": { | |||
"width": 120, | |||
"height": 50 | |||
}, | |||
"attrs": { | |||
"text": { | |||
"text": "任务2-2" | |||
}, | |||
"icon": { | |||
"xlink:href": "/src/assets/images/svg/people.svg" | |||
} | |||
}, | |||
"shape": "flow-action", | |||
"id": "node173c6eb454c", | |||
"data": { | |||
"id": "node173c6eb454c", | |||
"type": "flow-node-manual", | |||
"props": { | |||
"label": "任务2-2", | |||
"fields": [ | |||
{ | |||
"id": "column-172fda7eb90", | |||
"name": "id", | |||
"label": "ID", | |||
"perm": "write", | |||
"notNull": false | |||
}, | |||
{ | |||
"id": "col-173284e59df", | |||
"name": "name", | |||
"label": "数据字段", | |||
"perm": "read", | |||
"notNull": false | |||
} | |||
], | |||
"users": [ | |||
{ | |||
"type": "userGroup", | |||
"target": { | |||
"ugId": 21222, | |||
"ugName": "部门经理", | |||
"ugCreateAt": "2020-07-26 10:42:43", | |||
"ugUpdateAt": "2020-07-26 10:42:43" | |||
}, | |||
"notNull": true, | |||
"filter": "" | |||
} | |||
], | |||
"actionReturn": true, | |||
"actionTransmit": true | |||
} | |||
}, | |||
"zIndex": 1 | |||
}, | |||
{ | |||
"position": { | |||
"x": 210, | |||
"y": 230 | |||
}, | |||
"size": { | |||
"width": 120, | |||
"height": 50 | |||
}, | |||
"attrs": { | |||
"text": { | |||
"text": "任务3" | |||
}, | |||
"icon": { | |||
"xlink:href": "/src/assets/images/svg/people.svg" | |||
} | |||
}, | |||
"shape": "flow-action", | |||
"id": "node173c7c0d14e", | |||
"data": { | |||
"id": "node173c7c0d14e", | |||
"type": "flow-node-manual", | |||
"props": { | |||
"label": "任务3", | |||
"users": [ | |||
{ | |||
"type": "userGroup", | |||
"target": { | |||
"ugId": 21222, | |||
"ugName": "部门经理", | |||
"ugCreateAt": "2020-07-26 10:42:43", | |||
"ugUpdateAt": "2020-07-26 10:42:43" | |||
}, | |||
"notNull": true, | |||
"filter": "" | |||
} | |||
], | |||
"actionReturn": true, | |||
"actionTransmit": true | |||
} | |||
}, | |||
"zIndex": 1 | |||
}, | |||
{ | |||
"position": { | |||
"x": 240, | |||
"y": 340 | |||
}, | |||
"size": { | |||
"width": 60, | |||
"height": 50 | |||
}, | |||
"attrs": { | |||
"icon": { | |||
"xlink:href": "/src/assets/images/svg/stop.svg" | |||
} | |||
}, | |||
"shape": "flow-end", | |||
"id": "node173c7dfe36c", | |||
"data": { | |||
"id": "node173c7dfe36c", | |||
"type": "flow-node-end", | |||
"props": { | |||
"label": "结束" | |||
} | |||
}, | |||
"zIndex": 1 | |||
}, | |||
{ | |||
"shape": "edge", | |||
"attrs": { | |||
"line": { | |||
"stroke": "#4D5B62", | |||
"strokeWidth": 1 | |||
} | |||
}, | |||
"id": "conn173c6eb4541", | |||
"data": { | |||
"id": "conn173c6eb4541", | |||
"type": "flow-edge", | |||
"props": { | |||
"label": "启动" | |||
} | |||
}, | |||
"zIndex": 1, | |||
"source": { | |||
"cell": "node173c6e891c8" | |||
}, | |||
"target": { | |||
"cell": "node173c6eb453c" | |||
} | |||
}, | |||
{ | |||
"shape": "edge", | |||
"attrs": { | |||
"line": { | |||
"stroke": "#4D5B62", | |||
"strokeWidth": 1 | |||
} | |||
}, | |||
"id": "conn173c6eb4544", | |||
"data": { | |||
"id": "conn173c6eb4544", | |||
"type": "flow-edge", | |||
"props": { | |||
"label": "提交" | |||
} | |||
}, | |||
"zIndex": 1, | |||
"source": { | |||
"cell": "node173c6eb453c" | |||
}, | |||
"target": { | |||
"cell": "node173c6eb4542" | |||
} | |||
}, | |||
{ | |||
"shape": "edge", | |||
"attrs": { | |||
"line": { | |||
"stroke": "#4D5B62", | |||
"strokeWidth": 1 | |||
} | |||
}, | |||
"id": "conn173c6eb4551", | |||
"data": { | |||
"id": "conn173c6eb4551", | |||
"type": "flow-edge", | |||
"props": { | |||
"label": "执行" | |||
} | |||
}, | |||
"zIndex": 1, | |||
"source": { | |||
"cell": "node173c6eb4542" | |||
}, | |||
"target": { | |||
"cell": "node173c6eb4547" | |||
} | |||
}, | |||
{ | |||
"shape": "edge", | |||
"attrs": { | |||
"line": { | |||
"stroke": "#4D5B62", | |||
"strokeWidth": 1 | |||
} | |||
}, | |||
"id": "conn173c6eb4553", | |||
"data": { | |||
"id": "conn173c6eb4553", | |||
"type": "flow-edge", | |||
"props": { | |||
"label": "执行2" | |||
} | |||
}, | |||
"zIndex": 1, | |||
"source": { | |||
"cell": "node173c6eb4542" | |||
}, | |||
"target": { | |||
"cell": "node173c6eb454c" | |||
} | |||
}, | |||
{ | |||
"shape": "edge", | |||
"attrs": { | |||
"line": { | |||
"stroke": "#4D5B62", | |||
"strokeWidth": 1 | |||
} | |||
}, | |||
"id": "conn173c7dfe36b", | |||
"data": { | |||
"id": "conn173c7dfe36b", | |||
"type": "flow-edge", | |||
"props": { | |||
"label": "执行" | |||
} | |||
}, | |||
"zIndex": 1, | |||
"source": { | |||
"cell": "node173c6eb4545" | |||
}, | |||
"target": { | |||
"cell": "node173c7c0d14e" | |||
} | |||
}, | |||
{ | |||
"shape": "edge", | |||
"attrs": { | |||
"line": { | |||
"stroke": "#4D5B62", | |||
"strokeWidth": 1 | |||
} | |||
}, | |||
"id": "conn173c6eb4555", | |||
"data": { | |||
"id": "conn173c6eb4555", | |||
"type": "flow-edge", | |||
"props": { | |||
"label": "提交" | |||
} | |||
}, | |||
"zIndex": 1, | |||
"source": { | |||
"cell": "node173c6eb4547" | |||
}, | |||
"target": { | |||
"cell": "node173c6eb4545" | |||
} | |||
}, | |||
{ | |||
"shape": "edge", | |||
"attrs": { | |||
"line": { | |||
"stroke": "#4D5B62", | |||
"strokeWidth": 1 | |||
} | |||
}, | |||
"id": "conn173c6eb4554", | |||
"data": { | |||
"id": "conn173c6eb4554", | |||
"type": "flow-edge", | |||
"props": { | |||
"label": "提交" | |||
} | |||
}, | |||
"zIndex": 1, | |||
"source": { | |||
"cell": "node173c6eb454c" | |||
}, | |||
"target": { | |||
"cell": "node173c6eb4545" | |||
} | |||
}, | |||
{ | |||
"shape": "edge", | |||
"attrs": { | |||
"line": { | |||
"stroke": "#4D5B62", | |||
"strokeWidth": 1 | |||
} | |||
}, | |||
"id": "conn173c7dfe36d", | |||
"data": { | |||
"id": "conn173c7dfe36d", | |||
"type": "flow-edge", | |||
"props": { | |||
"label": "提交" | |||
} | |||
}, | |||
"zIndex": 1, | |||
"source": { | |||
"cell": "node173c7c0d14e" | |||
}, | |||
"target": { | |||
"cell": "node173c7dfe36c" | |||
} | |||
} | |||
] | |||
} | |||
} | |||
], | |||
"model": [ | |||
{ | |||
"dataset": "ds_18117e2fce9", | |||
"label": "主数据集", | |||
"fields": [ | |||
{ | |||
"id": "id_18117e2fceb", | |||
"field": "prj_id" | |||
}, | |||
{ | |||
"id": "id_18117e2fcec", | |||
"field": "prj_depends" | |||
}, | |||
{ | |||
"id": "id_18117e2fced", | |||
"field": "prj_name" | |||
}, | |||
{ | |||
"id": "id_18117e2fcee", | |||
"field": "prj_module" | |||
"model": { | |||
"page": "默认表单定义", | |||
"canEditOther": "bool是否允许编辑非本人单据", | |||
"rejectToMake": "bool True-驳回到制单 False-逐级驳回", | |||
"activities": [ | |||
{ | |||
"id": "唯一标识", | |||
"type": "类别:1-开始任务 2-用户任务 3-条件分支 4-并行开始 5-并行结束 6-脚本任务 9-结束任务", | |||
"code": "活动编号,代码可调用", | |||
"label": "活动名称", | |||
"page": "表单定义", | |||
"canEdit": "是否可编辑", | |||
"needSign": "是否需要会签", | |||
"buttons": [ | |||
{ | |||
"type": "submit", | |||
"label": "提交", | |||
"valid": "是否允许,bool" | |||
}, | |||
{ | |||
"type": "reject", | |||
"label": "驳回", | |||
"valid": "是否允许,bool" | |||
}, | |||
{ | |||
"type": "retake", | |||
"label": "取回", | |||
"valid": "是否允许,bool" | |||
}, | |||
{ | |||
"type": "disuse", | |||
"label": "作废", | |||
"valid": "是否允许,bool" | |||
}, | |||
{ | |||
"type": "delete", | |||
"label": "删除", | |||
"valid": "是否允许,bool" | |||
} | |||
], | |||
"eidtFields": [ | |||
"可编辑的字段" | |||
], | |||
"disableFields": [ | |||
"不可查看的字段" | |||
], | |||
"handler": { | |||
"userGroup": "主办人分组", | |||
"filter": "主办人过滤:制单人所属单位/制单人所属部门/上一步提交人所属单位/上一步提交人所属部门", | |||
"ignore": "主办人过滤:上一步提交人/过滤制单人" | |||
}, | |||
{ | |||
"id": "id_18117e2fcef", | |||
"field": "prj_desc" | |||
"sign": { | |||
"minSign": "最少会签人数", | |||
"minAgree": "最少会签同意人数", | |||
"minAgreeUnit": "最少会签同意人数单位:0-人数 1-会签同意占比", | |||
"userGroup": "会签人分组", | |||
"filter": "会签人过滤:制单人所属单位/制单人所属部门/上一步提交人所属单位/上一步提交人所属部门", | |||
"ignore": "会签人过滤:上一步提交人/过滤制单人" | |||
} | |||
] | |||
} | |||
], | |||
"option": { | |||
"widgetRef": [], | |||
"vars": [] | |||
} | |||
], | |||
"trans": [ | |||
{ | |||
"id": "唯一标识", | |||
"seq": "序号", | |||
"expr": "条件表达式", | |||
"src": "源活动", | |||
"dst": "目标活动", | |||
"desc": "说明" | |||
} | |||
] | |||
} | |||
} |