初始代码

This commit is contained in:
wangmingwei
2026-04-21 16:49:46 +08:00
parent aae9dc4036
commit f0453ff3a3
2396 changed files with 256575 additions and 0 deletions

View File

@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>yunzhupaas-workflow-engine</artifactId>
<groupId>com.yunzhupaas</groupId>
<version>5.2.0-RELEASE</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>yunzhupaas-workflow-engine-entity</artifactId>
<dependencies>
<dependency>
<groupId>com.yunzhupaas</groupId>
<artifactId>yunzhupaas-common-all</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.yunzhupaas</groupId>
<artifactId>yunzhupaas-permission-entity</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
</project>

View File

@@ -0,0 +1,38 @@
package com.yunzhupaas.engine.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yunzhupaas.base.entity.SuperExtendEntity;
import lombok.Data;
/**
* 流程权限表
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
*/
@Data
@TableName("flow_form_authorize")
public class FlowAuthorizeEntity extends SuperExtendEntity<String> {
/**
* 任务主键
*/
@TableField("f_task_id")
private String taskId;
/**
* 节点编码
*/
@TableField("f_node_code")
private String nodeCode;
/**
* 字段权限
*/
@TableField("f_form_operate")
private String formOperate;
}

View File

@@ -0,0 +1,62 @@
package com.yunzhupaas.engine.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yunzhupaas.base.entity.SuperExtendEntity;
import lombok.Data;
/**
* 流程候选人
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
*/
@Data
@TableName("flow_candidates")
public class FlowCandidatesEntity extends SuperExtendEntity<String> {
/**
* 节点主键
*/
@TableField("F_TASK_NODE_ID")
private String taskNodeId;
/**
* 任务主键
*/
@TableField("F_TASK_ID")
private String taskId;
/**
* 代办主键
*/
@TableField("F_TASK_OPERATOR_ID")
private String operatorId;
/**
* 审批人主键
*/
@TableField("F_HANDLE_ID")
private String handleId;
/**
* 审批人账号
*/
@TableField("F_ACCOUNT")
private String account;
/**
* 候选人
*/
@TableField("F_CANDIDATES")
private String candidates;
/**
* 类型 1.候选人 2.异常人
*/
@TableField("F_TYPE")
private Integer type;
}

View File

@@ -0,0 +1,58 @@
package com.yunzhupaas.engine.entity;
import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yunzhupaas.base.entity.SuperExtendEntity;
import lombok.Data;
/**
* 流程评论
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
*/
@Data
@TableName("flow_comment")
public class FlowCommentEntity extends SuperExtendEntity.SuperExtendEnabledEntity<String> {
/**
* 任务主键
*/
@TableField("F_TASK_ID")
private String taskId;
/**
* 文本
*/
@TableField("F_TEXT")
private String text;
/**
* 图片
*/
@TableField("F_IMAGE")
private String image;
/**
* 附件
*/
@TableField("F_FILE")
@JSONField(name = "file")
private String fileName;
/**
* 回复评论id
*/
@TableField("F_REPLY_ID")
private String replyId;
/**
* 评论删除显示
*/
@TableField("F_DELETE_SHOW")
private Integer deleteShow;
}

View File

@@ -0,0 +1,83 @@
package com.yunzhupaas.engine.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yunzhupaas.base.entity.SuperExtendEntity;
import lombok.Data;
import java.util.Date;
/**
* 流程委托
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2023/09/27
*/
@Data
@TableName("flow_delegate")
public class FlowDelegateEntity extends SuperExtendEntity<String> {
/**
* 委托人
*/
@TableField("F_USER_ID")
private String userId;
/**
* 委托人
*/
@TableField("F_USER_NAME")
private String userName;
/**
* 被委托人
*/
@TableField("F_TO_USER_ID")
private String toUserId;
/**
* 被委托人
*/
@TableField("F_TO_USER_NAME")
private String toUserName;
/**
* 委托类型0-发起委托1-审批委托)
*/
@TableField("F_TYPE")
private Integer type;
/**
* 委托流程
*/
@TableField("F_FLOW_ID")
private String flowId;
/**
* 委托流程
*/
@TableField("F_FLOW_NAME")
private String flowName;
/**
* 流程分类
*/
@TableField("F_FLOW_CATEGORY")
private String flowCategory;
/**
* 开始时间
*/
@TableField("F_START_TIME")
private Date startTime;
/**
* 结束时间
*/
@TableField("F_END_TIME")
private Date endTime;
}

View File

@@ -0,0 +1,52 @@
package com.yunzhupaas.engine.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yunzhupaas.base.entity.SuperExtendEntity;
import lombok.Data;
/**
* 流程可见
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2023/09/27
*/
@Data
@TableName("flow_visible")
public class FlowEngineVisibleEntity extends SuperExtendEntity<String> {
/**
* 流程主键
*/
@TableField("F_FLOW_ID")
private String flowId;
/**
* 经办类型
*/
@TableField("F_OPERATOR_TYPE")
private String operatorType;
/**
* 经办主键
*/
@TableField("F_OPERATOR_ID")
private String operatorId;
/**
* 排序码
*/
@TableField("F_SORT_CODE")
private Long sortCode;
/**
* 可见类型 1.发起 2.协管
*/
@TableField("F_TYPE")
private Integer type;
}

View File

@@ -0,0 +1,45 @@
package com.yunzhupaas.engine.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yunzhupaas.base.entity.SuperBaseEntity;
import lombok.Data;
/**
* 流程事件日志
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2023/09/27
*/
@Data
@TableName("flow_event_log")
public class FlowEventLogEntity extends SuperBaseEntity.SuperCBaseEntity<String> {
/**
* 节点主键
*/
@TableField("F_TASK_NODE_ID")
private String taskNodeId;
/**
* 接口主键
*/
@TableField("F_INTERFACE_ID")
private String interfaceId;
/**
* 事件名称
*/
@TableField("F_FULL_NAME")
private String fullName;
/**
* 执行结果
*/
@TableField("F_RESULT")
private String result;
}

View File

@@ -0,0 +1,86 @@
package com.yunzhupaas.engine.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yunzhupaas.base.entity.SuperExtendEntity;
import lombok.Data;
/**
* 流程依次审批
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
*/
@Data
@TableName("flow_task_operator_user")
public class FlowOperatorUserEntity extends SuperExtendEntity.SuperExtendDescriptionEntity<String> {
/**
* 节点主键
*/
@TableField("F_TASK_NODE_ID")
private String taskNodeId;
/**
* 任务主键
*/
@TableField("F_TASK_ID")
private String taskId;
/**
* 状态
*/
@TableField("F_STATE")
private Integer state;
/**
* 经办主键
*/
@TableField("F_HANDLE_ID")
private String handleId;
/**
* 节点类型
*/
@TableField("F_Type")
private Integer type;
/**
* 节点编码
*/
@TableField("F_NODE_CODE")
private String nodeCode;
/**
* 节点名称
*/
@TableField("F_NODE_NAME")
private String nodeName;
/**
* 是否完成
*/
@TableField("F_COMPLETION")
private Integer completion;
/**
* 父节点id
*/
@TableField("F_PARENT_ID")
private String parentId;
/**
* 自动审批
*/
@TableField("F_AUTOMATION")
private String automation;
/**
* 冻结
*/
@TableField("F_REJECT")
private String reject;
}

View File

@@ -0,0 +1,37 @@
package com.yunzhupaas.engine.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yunzhupaas.base.entity.SuperExtendEntity;
import lombok.Data;
/**
* 冻结审批
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
*/
@Data
@TableName("flow_reject_data")
public class FlowRejectDataEntity extends SuperExtendEntity<String> {
/**
* 经办数据
*/
@TableField("F_TASK_OPERATOR_JSON")
public String taskOperatorJson;
/**
* 节点数据
*/
@TableField("F_TASK_NODE_JSON")
private String taskNodeJson;
/**
* 流程任务
*/
@TableField("F_TASK_JSON")
private String taskJson;
}

View File

@@ -0,0 +1,57 @@
package com.yunzhupaas.engine.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yunzhupaas.base.entity.SuperExtendEntity;
import lombok.Data;
/**
* 流程传阅
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2023/09/27
*/
@Data
@TableName("flow_task_circulate")
public class FlowTaskCirculateEntity extends SuperExtendEntity<String> {
/**
* 对象类型
*/
@TableField("F_OBJECT_TYPE")
private String objectType;
/**
* 对象主键
*/
@TableField("F_OBJECT_ID")
private String objectId;
/**
* 节点编码
*/
@TableField("F_NODE_CODE")
private String nodeCode;
/**
* 节点名称
*/
@TableField("F_NODE_NAME")
private String nodeName;
/**
* 节点主键
*/
@TableField("F_TASK_NODE_ID")
private String taskNodeId;
/**
* 任务主键
*/
@TableField("F_TASK_ID")
private String taskId;
}

View File

@@ -0,0 +1,186 @@
package com.yunzhupaas.engine.entity;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yunzhupaas.base.entity.SuperExtendEntity;
import lombok.Data;
import java.util.Date;
/**
* 流程任务
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2023/09/27
*/
@Data
@TableName("flow_task")
public class FlowTaskEntity extends SuperExtendEntity.SuperExtendDEEntity<String> {
/**
* 实例进程
*/
@TableField("F_PROCESS_ID")
private String processId;
/**
* 任务编码
*/
@TableField("F_EN_CODE")
private String enCode;
/**
* 任务标题
*/
@TableField("F_FULL_NAME")
private String fullName;
/**
* 紧急程度
*/
@TableField("F_FLOW_URGENT")
private Integer flowUrgent;
/**
* 流程主键
*/
@TableField("F_FLOW_ID")
private String flowId;
/**
* 流程模板id
*/
@TableField("F_TEMPLATE_ID")
private String templateId;
/**
* 流程编码
*/
@TableField("F_FLOW_CODE")
private String flowCode;
/**
* 流程名称
*/
@TableField("F_FLOW_NAME")
private String flowName;
/**
* 流程类型
*/
@TableField("F_FLOW_TYPE")
private Integer flowType;
/**
* 流程分类
*/
@TableField("F_FLOW_CATEGORY")
private String flowCategory;
/**
* 表单内容
*/
@TableField("F_FLOW_FORM_DATA_JSON")
private String flowFormContentJson;
/**
* 流程版本
*/
@TableField("F_FLOW_VERSION")
private String flowVersion;
/**
* 开始时间
*/
@TableField("F_START_TIME")
private Date startTime;
/**
* 结束时间
*/
@TableField("F_END_TIME")
private Date endTime;
/**
* 当前步骤
*/
@TableField("F_CURRENT_NODE_NAME")
private String thisStep;
/**
* 当前步骤Id
*/
@TableField("F_CURRENT_NODE_CODE")
private String thisStepId;
/**
* 任务状态 0-草稿、1-处理、2-通过、3-驳回、4-撤销、5-终止、6-挂起
*/
@TableField("F_STATUS")
private Integer status;
/**
* 挂起之前状态
*/
@TableField(value = "F_SUSPEND", fill = FieldFill.UPDATE)
private Integer suspend;
/**
* 完成情况
*/
@TableField("F_COMPLETION")
private Integer completion;
/**
* 父节点id
*/
@TableField("F_PARENT_ID")
private String parentId;
/**
* 被委托用户
*/
@TableField("F_DELEGATE_USER_ID")
private String delegateUser;
/**
* 关联系统id
*/
@TableField("F_SYSTEM_ID")
private String systemId;
/**
* 节点主键
*/
@TableField(value = "F_REVIVE_NODE_ID", fill = FieldFill.UPDATE)
private String taskNodeId;
/**
* 是否批量01
*/
@TableField("F_IS_BATCH")
private Integer isBatch;
/**
* 是否能恢复01不能
*/
@TableField("F_RESTORE")
private Integer frestore;
/**
* 同步异步0同步1异步
*/
@TableField("F_IS_ASYNC")
private Integer isAsync;
/**
* 冻结审批
*/
@TableField(value = "F_REJECT_DATA_ID", fill = FieldFill.UPDATE)
private String rejectId;
}

View File

@@ -0,0 +1,99 @@
package com.yunzhupaas.engine.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yunzhupaas.base.entity.SuperExtendEntity;
import lombok.Data;
/**
* 流程节点
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2023/09/27
*/
@Data
@TableName("flow_task_node")
public class FlowTaskNodeEntity extends SuperExtendEntity.SuperExtendDescriptionEntity<String> {
/**
* 节点编码
*/
@TableField("F_NODE_CODE")
private String nodeCode;
/**
* 节点名称
*/
@TableField("F_NODE_NAME")
private String nodeName;
/**
* 节点类型
*/
@TableField("F_NODE_TYPE")
private String nodeType;
/**
* 节点属性Json
*/
@TableField("F_NODE_PROPERTY_JSON")
private String nodePropertyJson;
/**
* 上一节点 1.上一步骤 0.返回开始
*/
@TableField("F_NODE_UP")
private String nodeUp;
/**
* 下一节点
*/
@TableField("F_NODE_NEXT")
private String nodeNext;
/**
* 是否完成
*/
@TableField("F_COMPLETION")
private Integer completion;
/**
* 排序码
*/
@TableField("F_SORT_CODE")
private Long sortCode;
/**
* 任务主键
*/
@TableField("F_TASK_ID")
private String taskId;
/**
* 状态 0.新流程 -1.无用节点
*/
@TableField("F_STATE")
private Integer state;
/**
* 分支选择
*/
@TableField("F_CANDIDATES")
private String candidates;
/**
* 节点数据
*/
@TableField("F_DRAFT_DATA")
private String draftData;
/**
* 表单id
*/
@TableField("F_FORM_ID")
private String formId;
}

View File

@@ -0,0 +1,126 @@
package com.yunzhupaas.engine.entity;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yunzhupaas.base.entity.SuperExtendEntity;
import lombok.Data;
import java.util.Date;
/**
* 流程经办
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2023/09/27
*/
@Data
@TableName("flow_task_operator")
public class FlowTaskOperatorEntity extends SuperExtendEntity.SuperExtendDescriptionEntity<String> {
/**
* 加签处理人
*/
@TableField("F_APPEND_HANDLE_ID")
private String appendHandleId;
/**
* 节点类型
*/
@TableField("F_TYPE")
private Integer type;
/**
* 经办主键
*/
@TableField("F_HANDLE_ID")
private String handleId;
/**
* 处理状态 0-拒绝、1-同意
*/
@TableField(value = "F_HANDLE_STATUS", fill = FieldFill.UPDATE)
private Integer handleStatus;
/**
* 处理时间
*/
@TableField(value = "F_HANDLE_TIME", fill = FieldFill.UPDATE)
private Date handleTime;
/**
* 节点编码
*/
@TableField("F_NODE_CODE")
private String nodeCode;
/**
* 节点名称
*/
@TableField("F_NODE_NAME")
private String nodeName;
/**
* 是否完成
*/
@TableField("F_COMPLETION")
private Integer completion;
/**
* 节点主键
*/
@TableField("F_TASK_NODE_ID")
private String taskNodeId;
/**
* 任务主键
*/
@TableField("F_TASK_ID")
private String taskId;
/**
* 状态 0.新流程 -1.无用数据 1加签人
*/
@TableField("F_STATE")
private Integer state;
/**
* 父节点id
*/
@TableField("F_PARENT_ID")
private String parentId;
/**
* 草稿数据
*/
@TableField("F_DRAFT_DATA")
private String draftData;
/**
* 自动审批
*/
@TableField("F_AUTOMATION")
private String automation;
/**
* 排序码
*/
@TableField("F_SORT_CODE")
private Long sortCode;
/**
* 回滚id
*/
@TableField("F_ROLLBACK_ID")
private String rollbackId;
/**
* 冻结
*/
@TableField("F_REJECT")
private String reject;
}

View File

@@ -0,0 +1,114 @@
package com.yunzhupaas.engine.entity;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yunzhupaas.base.entity.SuperExtendEntity;
import lombok.Data;
import java.util.Date;
/**
* 流程经办记录
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2023/09/27
*/
@Data
@TableName("flow_task_operator_record")
public class FlowTaskOperatorRecordEntity extends SuperExtendEntity<String> {
/**
* 节点编码
*/
@TableField("F_NODE_CODE")
private String nodeCode;
/**
* 节点名称
*/
@TableField("F_NODE_NAME")
private String nodeName;
/**
* 经办状态 0-拒绝、1-同意、2-提交、3-撤回、4-终止、5-指派、6-加签、7-转办
*/
@TableField("F_HANDLE_STATUS")
private Integer handleStatus;
/**
* 经办人员
*/
@TableField("F_HANDLE_ID")
private String handleId;
/**
* 经办时间
*/
@TableField("F_HANDLE_TIME")
private Date handleTime;
/**
* 经办理由
*/
@TableField("F_HANDLE_OPINION")
private String handleOpinion;
/**
* 流转操作人
*/
@TableField("F_OPERATOR_ID")
private String operatorId;
/**
* 经办主键
*/
@TableField(value = "F_TASK_OPERATOR_ID", fill = FieldFill.UPDATE)
private String taskOperatorId;
/**
* 节点主键
*/
@TableField(value = "F_TASK_NODE_ID", fill = FieldFill.UPDATE)
private String taskNodeId;
/**
* 任务主键
*/
@TableField("F_TASK_ID")
private String taskId;
/**
* 签名图片
*/
@TableField("F_SIGN_IMG")
private String signImg;
/**
* 0.进行数据 1.加签数据 3.已办不显示数据
*/
@TableField("F_STATUS")
private Integer status;
/**
* 经办文件
*/
@TableField("F_FILE_LIST")
private String fileList;
/**
* 审批数据
*/
@TableField("F_DRAFT_DATA")
private String draftData;
/**
* 加签类型
*/
@TableField("F_APPROVER_TYPE")
private Integer approverType;
}

View File

@@ -0,0 +1,58 @@
package com.yunzhupaas.engine.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yunzhupaas.base.entity.SuperExtendEntity;
import lombok.Data;
/**
* 流程引擎
*
* @author 云筑产品开发平台组
* @version V3.4.2
* @copyright 深圳市乐程软件有限公司
* @date 2024年7月11日 上午9:18
*/
@Data
@TableName("flow_template")
public class FlowTemplateEntity extends SuperExtendEntity.SuperExtendDEEntity<String> {
/**
* 流程编码
*/
@TableField("F_EN_CODE")
private String enCode;
/**
* 流程名称
*/
@TableField("F_FULL_NAME")
private String fullName;
/**
* 流程类型(0.发起流程 1.功能流程)
*/
@TableField("F_TYPE")
private Integer type;
/**
* 流程分类
*/
@TableField("F_CATEGORY")
private String category;
/**
* 图标
*/
@TableField("F_ICON")
private String icon;
/**
* 图标背景色
*/
@TableField("F_ICON_BACKGROUND")
private String iconBackground;
}

View File

@@ -0,0 +1,63 @@
package com.yunzhupaas.engine.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yunzhupaas.base.entity.SuperExtendEntity;
import lombok.Data;
/**
* 流程引擎
*
* @author 云筑产品开发平台组
* @version V3.4.2
* @copyright 深圳市乐程软件有限公司
* @date 2024年7月11日 上午9:18
*/
@Data
@TableName("flow_template_json")
public class FlowTemplateJsonEntity extends SuperExtendEntity.SuperExtendEnabledEntity<String> {
/**
* 流程模板id
*/
@TableField("F_TEMPLATE_ID")
private String templateId;
/**
* 流程名称
*/
@TableField("F_FULL_NAME")
private String fullName;
/**
* 可见类型 0-全部可见、1-指定经办
*/
@TableField("F_VISIBLE_TYPE")
private Integer visibleType;
/**
* 流程模板
*/
@TableField("F_FLOW_TEMPLATE_JSON")
private String flowTemplateJson;
/**
* 流程版本
*/
@TableField("F_VERSION")
private String version;
/**
* 分组id
*/
@TableField("F_GROUP_ID")
private String groupId;
/**
* 发送配置
*/
@TableField("F_SEND_CONFIG_IDS")
private String sendConfigIds;
}

View File

@@ -0,0 +1,62 @@
package com.yunzhupaas.engine.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yunzhupaas.base.entity.SuperExtendEntity;
import lombok.Data;
/**
* 流程发起用户信息
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
*/
@Data
@TableName("flow_launch_user")
public class FlowUserEntity extends SuperExtendEntity<String> {
/**
* 组织主键
*/
@TableField("F_ORGANIZE_ID")
private String organizeId;
/**
* 岗位主键
*/
@TableField("F_POSITION_ID")
private String positionId;
/**
* 主管主键
*/
@TableField("F_MANAGER_ID")
private String managerId;
/**
* 上级用户
*/
@TableField("F_SUPERIOR")
private String superior;
/**
* 下属用户
*/
@TableField("F_SUBORDINATE")
private String subordinate;
/**
* 公司下所有部门
*/
@TableField("F_DEPARTMENT")
private String department;
/**
* 任务主键
*/
@TableField("F_TASK_ID")
private String taskId;
}

View File

@@ -0,0 +1,68 @@
package com.yunzhupaas.engine.enums;
/**
* 同意规则
*
* @author :云筑产品开发平台组
* @version: V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2022/6/16 17:01
*/
public enum FlowAgreeRuleEnum {
/**
* 不启用
*/
notstart(1, "不启用"),
/**
* 审批人为发起人
*/
initiator(2, "发起人"),
/**
* 审批人与上一审批节点处理人相同
*/
node(4, "上一审批节点处理人相同"),
/**
* 审批人审批过
*/
pass(3, "审批人有审批过");
private int code;
private String message;
FlowAgreeRuleEnum(int code, String message) {
this.code = code;
this.message = message;
}
/**
* 根据状态code获取枚举名称
*
* @return
*/
public static FlowAgreeRuleEnum getByCode(Integer code) {
for (FlowAgreeRuleEnum status : FlowAgreeRuleEnum.values()) {
if (status.getCode().equals(code)) {
return status;
}
}
return null;
}
public Integer getCode() {
return code;
}
public void setCode(Integer code) {
this.code = code;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}

View File

@@ -0,0 +1,76 @@
package com.yunzhupaas.engine.enums;
/**
* 异常规则
*
* @author :云筑产品开发平台组
* @version: V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2022/6/17 10:57
*/
public enum FlowErrorRuleEnum {
/**
* 1.超级管理员
*/
administrator(1, "超级管理员"),
/**
* 2.指定人员
*/
initiator(2, "指定人员"),
/**
* 3.上一节点审批人指定处理人
*/
node(3, "上一节点审批人指定处理人"),
/**
* 4.默认审批通过
*/
pass(4, "默认审批通过"),
/**
* 5.无法提交
*/
notSubmit(5, "无法提交"),
/**
* 6.发起者本人处理
*/
creatorUserId(6, "发起者本人处理");
private int code;
private String message;
FlowErrorRuleEnum(int code, String message) {
this.code = code;
this.message = message;
}
/**
* 根据状态code获取枚举名称
*
* @return
*/
public static FlowErrorRuleEnum getByCode(Integer code) {
for (FlowErrorRuleEnum status : FlowErrorRuleEnum.values()) {
if (status.getCode().equals(code)) {
return status;
}
}
return null;
}
public Integer getCode() {
return code;
}
public void setCode(Integer code) {
this.code = code;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}

View File

@@ -0,0 +1,77 @@
package com.yunzhupaas.engine.enums;
/**
* 附件条件
*
* @author :云筑产品开发平台组
* @version: V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2022/6/14 16:50
*/
public enum FlowExtraRuleEnum {
/**
* 无条件
*/
unconditional(1, "无条件"),
/**
* 同一部门
*/
organize(2, "同一部门"),
/**
* 同一岗位
*/
position(3, "同一岗位"),
/**
* 发起人上级
*/
manager(4, "发起人上级"),
/**
* 发起人下属
*/
subordinate(5, "发起人下属"),
/**
* 同一公司
*/
department(6, "同一公司");
private int code;
private String message;
FlowExtraRuleEnum(int code, String message) {
this.code = code;
this.message = message;
}
/**
* 根据状态code获取枚举名称
*
* @return
*/
public static FlowExtraRuleEnum getByCode(Integer code) {
for (FlowExtraRuleEnum status : FlowExtraRuleEnum.values()) {
if (status.getCode().equals(code)) {
return status;
}
}
return null;
}
public Integer getCode() {
return code;
}
public void setCode(Integer code) {
this.code = code;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}

View File

@@ -0,0 +1,44 @@
package com.yunzhupaas.engine.enums;
/**
* 消息类型
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024-09-29 上午9:18
*/
public enum FlowMessageEnum {
//发起
me(1, "me"),
//待办
wait(2, "wait"),
//抄送
circulate(3, "circulate");
private String message;
private int code;
FlowMessageEnum(int code, String message) {
this.code = code;
this.message = message;
}
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}

View File

@@ -0,0 +1,45 @@
package com.yunzhupaas.engine.enums;
/**
* 流程节点状态
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024-09-26 上午9:18
*/
public enum FlowNodeEnum {
//进行节点
Process(0, "进行节点"),
//加签人
FreeApprover(1, "加签节点"),
//无用节点
Futility(-1, "无用节点");
private Integer code;
private String message;
FlowNodeEnum(Integer code, String message) {
this.code = code;
this.message = message;
}
public Integer getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}

View File

@@ -0,0 +1,71 @@
package com.yunzhupaas.engine.enums;
/**
* 工作流开发
*
* @author 云筑产品开发平台组
* @version V3.0.0
* @copyright 深圳市乐程软件有限公司
* @date 2023/09/27
*/
public enum FlowRecordEnum {
//拒绝
reject(0, "拒绝"),
//同意
audit(1, "同意"),
//提交
submit(2, "提交"),
//撤回
revoke(3, "撤回"),
//终止
cancel(4, "终止"),
//指派
assign(5, "指派"),
//加签
copyId(6, "加签"),
//转办
transfer(7, "转办"),
//变更
change(8, "变更"),
//复活
resurrection(9, "复活"),
//前加签
befoCopyId(10, "前加签"),
//挂起
suspend(11, "挂起"),
//恢复
restore(12, "恢复"),
//转向
swerve(13, "转向"),
//结束
end(100, "结束"),
//节点撤回
recall(-1, "节点撤回");
private Integer code;
private String message;
FlowRecordEnum(Integer code, String message) {
this.code = code;
this.message = message;
}
public Integer getCode() {
return code;
}
public void setCode(Integer code) {
this.code = code;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}

View File

@@ -0,0 +1,44 @@
package com.yunzhupaas.engine.enums;
/**
* 工作流开发
*
* @author 云筑产品开发平台组
* @version V3.0.0
* @copyright 深圳市乐程软件有限公司
*/
public enum FlowRecordListEnum {
//部门
department("1", "部门"),
// 角色
role("2", "角色"),
//岗位
position("3", "岗位");
private String code;
private String message;
FlowRecordListEnum(String code, String message) {
this.code = code;
this.message = message;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}

View File

@@ -0,0 +1,48 @@
package com.yunzhupaas.engine.enums;
/**
* 提交状态
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024-09-26 上午9:18
*/
public enum FlowStatusEnum {
//不操作
none("-1"),
//保存
save("1"),
// 提交
submit("0");
private String message;
FlowStatusEnum(String message) {
this.message = message;
}
/**
* 根据状态code获取枚举名称
*
* @return
*/
public static FlowStatusEnum getByCode(Integer code) {
for (FlowStatusEnum status : FlowStatusEnum.values()) {
if (status.getMessage().equals(code)) {
return status;
}
}
return null;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}

View File

@@ -0,0 +1,99 @@
package com.yunzhupaas.engine.enums;
/**
* 经办对象
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024-09-26 上午9:18
*/
public enum FlowTaskOperatorEnum {
/**
* 发起者主管
*/
LaunchCharge(1, "发起者主管"),
/**
* 部门经理
*/
DepartmentCharge(2, "部门经理"),
/**
* 发起者本人
*/
InitiatorMe(3, "发起者本人"),
/**
* 变量
*/
Variate(4, "变量"),
/**
* 环节
*/
Tache(5, "环节"),
/**
* 指定人
*/
Nominator(6, "指定人"),
/**
* 候选人
*/
Candidate(7, "候选人"),
/**
* 服务
*/
Serve(9, "服务");
private Integer code;
private String message;
FlowTaskOperatorEnum(Integer code, String message) {
this.code = code;
this.message = message;
}
/**
* 根据状态code获取枚举名称
*
* @return
*/
public static String getMessageByCode(String code) {
for (FlowTaskOperatorEnum status : FlowTaskOperatorEnum.values()) {
if (status.getCode().equals(code)) {
return status.message;
}
}
return null;
}
/**
* 根据状态code获取枚举值
*
* @return
*/
public static FlowTaskOperatorEnum getByCode(String code) {
for (FlowTaskOperatorEnum status : FlowTaskOperatorEnum.values()) {
if (status.getCode().equals(code)) {
return status;
}
}
return null;
}
public Integer getCode() {
return code;
}
public void setCode(Integer code) {
this.code = code;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}

View File

@@ -0,0 +1,82 @@
package com.yunzhupaas.engine.enums;
/**
* 流程状态
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024-09-26 上午9:18
*/
public enum FlowTaskStatusEnum {
//等待提交
Draft(0, "等待提交"),
//等待审核
Handle(1, "等待审核"),
//审核通过
Adopt(2, "审核通过"),
//审核驳回
Reject(3, "审核驳回"),
//撤回终止
Revoke(4, "撤回终止"),
//审核作废
Cancel(5, "审核作废"),
//审核挂起
Suspend(6, "审核挂起"),
//撤回提交
Resubmit(7, "撤回提交");
private int code;
private String message;
FlowTaskStatusEnum(int code, String message) {
this.code = code;
this.message = message;
}
/**
* 根据状态code获取枚举名称
*
* @return
*/
public static String getMessageByCode(Integer code) {
for (FlowTaskStatusEnum status : FlowTaskStatusEnum.values()) {
if (status.getCode().equals(code)) {
return status.message;
}
}
return null;
}
/**
* 根据状态code获取枚举值
*
* @return
*/
public static FlowTaskStatusEnum getByCode(Integer code) {
for (FlowTaskStatusEnum status : FlowTaskStatusEnum.values()) {
if (status.getCode().equals(code)) {
return status;
}
}
return null;
}
public Integer getCode() {
return code;
}
public void setCode(Integer code) {
this.code = code;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}

View File

@@ -0,0 +1,112 @@
package com.yunzhupaas.engine.model;
import io.swagger.v3.oas.annotations.media.Schema;
import com.yunzhupaas.base.Pagination;
import com.yunzhupaas.engine.util.FlowNature;
import lombok.Data;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:17
*/
@Data
public class FlowHandleModel extends Pagination {
/**
* 意见
**/
@Schema(description = "意见")
private String handleOpinion;
/**
* 加签人
**/
@Schema(description = "加签人")
private String freeApproverUserId;
/**
* 加签类型 1.前 2 后
*/
@Schema(description = "加签类型")
private Integer freeApproverType = FlowNature.Later;
/**
* 审批数据
**/
@Schema(description = "审批数据")
private Map<String, Object> formData = new HashMap<>();
/**
* 自定义抄送人
**/
@Schema(description = "自定义抄送人")
private String copyIds;
/**
* 签名
**/
@Schema(description = "签名")
private String signImg;
/**
* 指派节点
**/
@Schema(description = "指派节点")
private String nodeCode;
/**
* 候选人
*/
@Schema(description = "候选人")
private Map<String, List<String>> candidateList = new HashMap<>();
/**
* 异常处理人
*/
@Schema(description = "异常处理人")
private Map<String, List<String>> errorRuleUserList = new HashMap<>();
/**
* 选择分支
*/
@Schema(description = "选择分支")
private List<String> branchList = new ArrayList<>();
/**
* 批量审批id
*/
@Schema(description = "批量审批主键")
private List<String> ids = new ArrayList<>();
/**
* 经办文件
**/
@Schema(description = "经办文件")
private List<Object> fileList = new ArrayList<>();
/**
* 批量审批类型 0.通过 1.拒绝 2.转办
*/
@Schema(description = "批量审批类型")
private Integer batchType = 0;
/**
* 批量发起用户
*/
@Schema(description = "批量发起用户")
private List<String> delegateUserList = new ArrayList<>();
/**
* 驳回节点
*/
@Schema(description = "驳回节点")
private String rejectStep = FlowNature.START;
/**
* 驳回类型 1.重新审批 2.从当前节点审批
*/
@Schema(description = "驳回类型")
private Integer rejectType = FlowNature.RestartType;
/**
* false 变更 true 复活
*/
@Schema(description = "类型")
private Boolean resurgence = false;
/**
* true 同步子流程 false 全部子流程
*/
@Schema(description = "冻结类型")
private Boolean suspend = false;
}

View File

@@ -0,0 +1,21 @@
package com.yunzhupaas.engine.model.flowbefore;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/1 9:17
*/
@Data
public class FlowBatchModel {
@Schema(description = "名称")
private String fullName;
@Schema(description = "主键")
private String id;
@Schema(description = "数量")
private Long num;
}

View File

@@ -0,0 +1,43 @@
package com.yunzhupaas.engine.model.flowbefore;
import io.swagger.v3.oas.annotations.media.Schema;
import com.yunzhupaas.engine.model.flowengine.shuntjson.childnode.Properties;
import lombok.Data;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:18
*/
@Data
public class FlowBeforeInfoVO {
@Schema(description = "流程对象")
private FlowTaskModel flowTaskInfo = new FlowTaskModel();
@Schema(description = "流程节点")
private List<FlowTaskNodeModel> flowTaskNodeList = new ArrayList<>();
@Schema(description = "流程经办数据")
private List<FlowTaskOperatorModel> flowTaskOperatorList = new ArrayList<>();
@Schema(description = "流程已办数据")
private List<FlowTaskOperatorRecordModel> flowTaskOperatorRecordList = new ArrayList<>();
@Schema(description = "草稿数据")
private Map<String, Object> draftData;
@Schema(description = "流程json对象")
private FlowTemplateModel flowTemplateInfo = new FlowTemplateModel();
@Schema(description = "表单对象")
private FlowFormVo flowFormInfo = new FlowFormVo();
@Schema(description = "表单权限")
private List<Map<String, Object>> formOperates = new ArrayList<>();
@Schema(description = "表单审批权限")
private Properties approversProperties = new Properties();
@Schema(description = "表单数据")
private Map<String, Object> formData = new HashMap<>();
@Schema(description = "属性")
private Boolean noOperateAuth = false;
}

View File

@@ -0,0 +1,61 @@
package com.yunzhupaas.engine.model.flowbefore;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:18
*/
@Data
public class FlowBeforeListVO {
@Schema(description = "流程编码")
private String enCode;
@Schema(description = "发起人员")
private String creatorUserId;
@Schema(description = "接收时间")
private Long creatorTime;
@Schema(description = "经办节点")
private String thisStep;
@Schema(description = "节点id")
private String thisStepId;
@Schema(description = "所属分类")
private String flowCategory;
@Schema(description = "流程标题")
private String fullName;
@Schema(description = "所属流程")
private String flowName;
@Schema(description = "流程状态", example = "1")
private Integer status;
@Schema(description = "发起时间")
private Long startTime;
@Schema(description = "主键id")
private String id;
@Schema(description = "用户名称")
private String userName;
@Schema(description = "备注")
private String description;
@Schema(description = "流程编码")
private String flowCode;
@Schema(description = "流程主键")
private String flowId;
@Schema(description = "实例进程")
private String processId;
@Schema(description = "表单类型 1-系统表单、2-动态表单")
private Integer formType;
@Schema(description = "紧急程度")
private Integer flowUrgent;
@Schema(description = "节点")
private String nodeName;
@Schema(description = "节点对象")
private String approversProperties;
@Schema(description = "版本")
private String flowVersion;
@Schema(description = "委托")
private String delegateUser;
}

View File

@@ -0,0 +1,100 @@
package com.yunzhupaas.engine.model.flowbefore;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* 流程表单对象
*
* @author 云筑产品开发平台组
* @version V3.4.2
* @copyright 深圳市乐程软件有限公司
* @date 2024/6/30 18:06
*/
@Data
@Schema(description="流程表单对象")
public class FlowFormVo {
@Schema(description = "主键")
private String id;
@Schema(description = "表单编码")
private String enCode;
@Schema(description = "表单状态")
private Integer state;
@Schema(description = "是否发布" )
private Integer isRelease;
@Schema(description = "表单名称")
private String fullName;
@Schema(description = "流程类型")
private Integer flowType;
@Schema(description = "表单类型")
private Integer formType;
@Schema(description = "表单分类")
private String category;
@Schema(description = "Web地址")
private String urlAddress;
@Schema(description = "APP地址")
private String appUrlAddress;
@Schema(description = "接口路径")
private String interfaceUrl;
@Schema(description = "属性字段")
private String propertyJson;
@Schema(description = "描述")
private String description;
@Schema(description = "排序码")
private Long sortCode;
@Schema(description = "有效标志")
private Integer enabledMark;
@Schema(description = "创建时间")
private Long creatorTime;
@Schema(description = "创建用户")
private String creatorUserId;
@Schema(description = "创建用户名")
private String creatorUser;
@Schema(description = "修改时间")
private Long lastModifyTime;
@Schema(description = "修改用户")
private String lastModifyUserId;
@Schema(description = "修改用户名")
private String lastModifyUser;
@Schema(description = "删除标志")
private Integer deleteMark;
@Schema(description = "删除时间")
private Long deleteTime;
@Schema(description = "删除用户")
private String deleteUserId;
@Schema(description = "删除用户名")
private String deleteUser;
@Schema(description = "草稿版本json")
private String draftJson;
@Schema(description = "关联数据连接id")
private String dbLinkId;
@Schema(description = "关联的表")
private String tableJson;
}

View File

@@ -0,0 +1,38 @@
package com.yunzhupaas.engine.model.flowbefore;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.List;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:18
*/
@Data
public class FlowSummary {
@Schema(description = "主键")
private String id;
@Schema(description = "名称")
private String fullName;
@Schema(description = "意见")
private String handleOpinion;
@Schema(description = "用户")
private String userName;
@Schema(description = "时间")
private Long handleTime;
@Schema(description = "状态")
private Integer handleStatus;
@Schema(description = "流转操作人")
private String operatorId;
@Schema(description = "子流程")
private List<FlowSummary> list;
private String fileList;
@Schema(description = "签名")
private String signImg;
@Schema(description = "头像")
private String headIcon;
}

View File

@@ -0,0 +1,70 @@
package com.yunzhupaas.engine.model.flowbefore;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:18
*/
@Data
public class FlowTaskModel {
@Schema(description = "任务主键")
private String id;
@Schema(description = "实例进程")
private String processId;
@Schema(description = "任务编码")
private String enCode;
@Schema(description = "任务标题")
private String fullName;
@Schema(description = "紧急程度")
private Integer flowUrgent;
@Schema(description = "流程主键")
private String flowId;
@Schema(description = "流程编码")
private String flowCode;
@Schema(description = "流程名称")
private String flowName;
@Schema(description = "流程类型")
private Integer flowType;
@Schema(description = "流程分类")
private String flowCategory;
@Schema(description = "流程表单")
private String flowForm;
@Schema(description = "表单内容")
private String flowFormContentJson;
@Schema(description = "流程模板")
private String flowTemplateJson;
@Schema(description = "流程版本")
private String flowVersion;
@Schema(description = "开始时间")
private Long startTime;
@Schema(description = "结束时间")
private Long endTime;
@Schema(description = "当前步骤")
private String thisStep;
@Schema(description = "当前步骤Id")
private String thisStepId;
@Schema(description = "重要等级")
private String grade;
@Schema(description = "任务状态 0-草稿、1-处理、2-通过、3-驳回、4-撤销、5-终止")
private Integer status;
@Schema(description = "完成情况")
private Integer completion;
@Schema(description = "描述")
private String description;
@Schema(description = "排序码")
private Long sortCode;
@Schema(description = "有效标志")
private Integer enabledMark;
@Schema(description = "流程类型")
private Integer type;
@Schema(description = "流程退回")
private String rejectDataId;
@Schema(description = "隐藏恢复按钮")
private Boolean suspend = false;
}

View File

@@ -0,0 +1,49 @@
package com.yunzhupaas.engine.model.flowbefore;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:18
*/
@Data
public class FlowTaskNodeModel {
@Schema(description = "节点实例主键")
private String id;
@Schema(description = "节点编码")
private String nodeCode;
@Schema(description = "节点名称")
private String nodeName;
@Schema(description = "节点类型")
private String nodeType;
@Schema(description = "节点属性Json")
private String nodePropertyJson;
@Schema(description = "上一节点")
private String nodeUp;
@Schema(description = "下一节点")
private String nodeNext;
@Schema(description = "是否完成")
private Integer completion;
@Schema(description = "描述")
private String description;
@Schema(description = "排序码")
private Long sortCode;
@Schema(description = "创建时间")
private Long creatorTime;
@Schema(description = "任务主键")
private String taskId;
@Schema(description = "审核用户")
private String userName;
@Schema(description = "审批类型")
private String assigneeName;
@Schema(description = "节点类型(-1没有经过,0.经过 1.当前 2.未经过)")
private String type;
@Schema(description = "表单id")
private String formId;
}

View File

@@ -0,0 +1,41 @@
package com.yunzhupaas.engine.model.flowbefore;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:18
*/
@Data
public class FlowTaskOperatorModel {
@Schema(description = "节点经办主键")
private String id;
@Schema(description = "经办对象")
private String handleType;
@Schema(description = "经办主键")
private String handleId;
@Schema(description = "处理状态 0-拒绝、1-同意")
private Integer handleStatus;
@Schema(description = "处理时间")
private Long handleTime;
@Schema(description = "节点编码")
private String nodeCode;
@Schema(description = "节点名称")
private String nodeName;
@Schema(description = "是否完成")
private Integer completion;
@Schema(description = "描述")
private String description;
@Schema(description = "创建时间")
private Long creatorTime;
@Schema(description = "节点主键")
private String taskNodeId;
@Schema(description = "任务主键")
private String taskId;
@Schema(description = "草稿数据")
private String draftData;
}

View File

@@ -0,0 +1,53 @@
package com.yunzhupaas.engine.model.flowbefore;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:18
*/
@Data
public class FlowTaskOperatorRecordModel {
@Schema(description = "节点流转主键")
private String id;
@Schema(description = "节点编码")
private String nodeCode;
@Schema(description = "节点名称")
private String nodeName;
@Schema(description = "经办状态 0-拒绝、1-同意、2-提交、3-撤回、4-终止")
private Integer handleStatus;
@Schema(description = "经办人员")
private String handleId;
@Schema(description = "经办时间")
private Long handleTime;
@Schema(description = "经办理由")
private String handleOpinion;
@Schema(description = "经办主键")
private String taskOperatorId;
@Schema(description = "节点主键")
private String taskNodeId;
@Schema(description = "任务主键")
private String taskId;
@Schema(description = "用户名称")
private String userName;
@Schema(description = "签名")
private String signImg;
@Schema(description = "判断加签人")
private Integer status;
@Schema(description = "流转操作人")
private String operatorId;
@Schema(description = "经办文件")
private String fileList;
@Schema(description = "加签类型")
private Integer approverType;
@Schema(description = "审批数据")
private String draftData;
@Schema(description = "任务接受时间")
private Long creatorTime;
@Schema(description = "异常日志")
private Boolean isLog;
}

View File

@@ -0,0 +1,16 @@
package com.yunzhupaas.engine.model.flowbefore;
import com.yunzhupaas.base.Pagination;
import lombok.Data;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/1 9:17
*/
@Data
public class FlowTaskUserListModel extends Pagination {
}

View File

@@ -0,0 +1,22 @@
package com.yunzhupaas.engine.model.flowbefore;
import com.yunzhupaas.engine.entity.FlowTemplateEntity;
import com.yunzhupaas.engine.entity.FlowTemplateJsonEntity;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:18
*/
@Data
public class FlowTemplateAllModel {
private FlowTemplateJsonEntity templateJson = new FlowTemplateJsonEntity();
private FlowTemplateEntity template = new FlowTemplateEntity();
private List<FlowTemplateJsonEntity> templateJsonList = new ArrayList<>();
}

View File

@@ -0,0 +1,29 @@
package com.yunzhupaas.engine.model.flowbefore;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:18
*/
@Data
public class FlowTemplateModel {
@Schema(description = "主键")
private String id;
@Schema(description = "流程基本主键")
private String templateId;
@Schema(description = "名称")
private String fullName;
@Schema(description = "类型")
private Integer visibleType;
@Schema(description = "json字段")
private String flowTemplateJson;
@Schema(description = "版本")
private String version;
@Schema(description = "类型")
private Integer type;
}

View File

@@ -0,0 +1,30 @@
package com.yunzhupaas.engine.model.flowbefore;
import com.yunzhupaas.engine.entity.*;
import lombok.Data;
import java.util.List;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/1 9:17
*/
@Data
public class FlowUserListModel {
private List<String> allUserIdList;
private FlowTaskEntity flowTask;
private List<FlowTaskOperatorEntity> operatorList;
// private List<FlowOperatorUserEntity> operatorUserList;
private List<FlowTaskCirculateEntity> circulateList;
private List<FlowTaskOperatorRecordEntity> operatorRecordList;
}

View File

@@ -0,0 +1,24 @@
package com.yunzhupaas.engine.model.flowcandidate;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
*/
@Data
public class FlowCandidateListModel {
@Schema(description = "节点编码")
private String nodeId;
@Schema(description = "节点名称")
private String nodeName;
@Schema(description = "是否分流")
private Boolean isCandidates = false;
@Schema(description = "是否选择分支")
private Boolean isBranchFlow = false;
@Schema(description = "是否候选人")
private Boolean hasCandidates = false;
}

View File

@@ -0,0 +1,22 @@
package com.yunzhupaas.engine.model.flowcandidate;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
*/
@Data
public class FlowCandidateUserModel {
@Schema(description = "主键")
private String id;
@Schema(description = "名称")
private String fullName;
@Schema(description = "头像")
private String headIcon;
@Schema(description = "组织")
private String organize;
}

View File

@@ -0,0 +1,27 @@
package com.yunzhupaas.engine.model.flowcandidate;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.List;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
*/
@Data
public class FlowCandidateVO {
@Schema(description = "节点")
private List<FlowCandidateListModel> list;
/**
* 1.有分支 //2.没有分支有候选人 //3.没有分支也没有候选人
*/
@Schema(description = "类型")
private Integer type;
@Schema(description = "会签是否完成")
private Boolean countersignOver = true;
}

View File

@@ -0,0 +1,21 @@
package com.yunzhupaas.engine.model.flowcandidate;
import io.swagger.v3.oas.annotations.media.Schema;
import com.yunzhupaas.engine.model.flowtask.TaskNodeModel;
import lombok.Data;
import java.util.List;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
*/
@Data
public class FlowRejectVO {
@Schema(description = "节点")
private List<TaskNodeModel> list;
@Schema(description = "是否选择")
private Boolean isLastAppro = true;
}

View File

@@ -0,0 +1,30 @@
package com.yunzhupaas.engine.model.flowcomment;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* 版本: V3.1.0
* 版权: 深圳市乐程软件有限公司
* 作者: 云筑产品开发平台组
*/
@Data
public class FlowCommentForm {
@Schema(description = "附件")
private String file;
@Schema(description = "图片")
private String image;
@Schema(description = "流程id")
private String taskId;
@Schema(description = "文本")
private String text;
@Schema(description = "回复ID")
private String replyId;
}

View File

@@ -0,0 +1,29 @@
package com.yunzhupaas.engine.model.flowcomment;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* 版本: V3.1.0
* 版权: 深圳市乐程软件有限公司
* 作者: 云筑产品开发平台组
*/
@Data
public class FlowCommentInfoVO {
@Schema(description = "附件")
private String file;
@Schema(description = "图片")
private String image;
@Schema(description = "流程id")
private String taskId;
@Schema(description = "文本")
private String text;
@Schema(description = "主键")
private String id;
}

View File

@@ -0,0 +1,52 @@
package com.yunzhupaas.engine.model.flowcomment;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* 版本: V3.1.0
* 版权: 深圳市乐程软件有限公司
* 作者: 云筑产品开发平台组
*/
@Data
public class FlowCommentListVO {
@Schema(description = "附件")
private String file;
@Schema(description = "图片")
private String image;
@Schema(description = "流程id")
private String taskId;
@Schema(description = "文本")
private String text;
@Schema(description = "创建人")
private String creatorUserId;
@Schema(description = "创建人")
private String creatorUser;
@Schema(description = "头像")
private String creatorUserHeadIcon;
@Schema(description = "创建时间")
private Long creatorTime;
//0-删除按钮隐藏 1-删除按钮显示 2-评论被删.
@Schema(description = "是否删除显示")
private Integer isDel;
@Schema(description = "主键")
private String id;
@Schema(description = "回复用户")
private String replyUser;
@Schema(description = "回复内容")
private String replyText;
}

View File

@@ -0,0 +1,19 @@
package com.yunzhupaas.engine.model.flowcomment;
import io.swagger.v3.oas.annotations.media.Schema;
import com.yunzhupaas.base.Pagination;
import lombok.Data;
/**
* 版本: V3.1.0
* 版权: 深圳市乐程软件有限公司
* 作者: 云筑产品开发平台组
*/
@Data
public class FlowCommentPagination extends Pagination {
@Schema(description = "任务主键")
private String taskId;
}

View File

@@ -0,0 +1,40 @@
package com.yunzhupaas.engine.model.flowdelegate;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:18
*/
@Data
public class FlowDelegatListVO {
@Schema(description = "主键id")
private String id;
@Schema(description = "委托类型0-发起委托1-审批委托")
private String type;
@Schema(description = "委托人id")
private String userId;
@Schema(description = "委托人")
private String userName;
@Schema(description = "被委托人id")
private String toUserId;
@Schema(description = "被委托人")
private String toUserName;
@Schema(description = "描述")
private String description;
@Schema(description = "开始日期")
private Long startTime;
@Schema(description = "结束日期")
private Long endTime;
@Schema(description = "委托流程id")
private String flowId;
@Schema(description = "委托流程名称")
private String flowName;
@Schema(description = "有效标志")
private Integer enabledMark;
}

View File

@@ -0,0 +1,46 @@
package com.yunzhupaas.engine.model.flowdelegate;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:18
*/
@Data
public class FlowDelegateCrForm {
@Schema(description = "委托人名称")
@NotBlank(message = "必填")
private String userName;
@Schema(description = "委托人id")
@NotBlank(message = "必填")
private String userId;
@Schema(description = "被委托人")
@NotBlank(message = "必填")
private String toUserName;
@Schema(description = "被委托人id")
@NotBlank(message = "必填")
private String toUserId;
@Schema(description = "委托类型0-发起委托1-审批委托)")
@NotBlank(message = "必填")
private String type;
@Schema(description = "描述")
private String description;
@Schema(description = "开始日期")
@NotNull(message = "必填")
private Long startTime;
@Schema(description = "结束日期")
@NotNull(message = "必填")
private Long endTime;
@Schema(description = "委托流程id")
private String flowId;
@Schema(description = "委托流程名称")
@NotBlank(message = "必填")
private String flowName;
}

View File

@@ -0,0 +1,39 @@
package com.yunzhupaas.engine.model.flowdelegate;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:18
*/
@Data
public class FlowDelegateInfoVO {
@Schema(description = "主键id")
private String id;
@Schema(description = "委托类型0-发起委托1-审批委托")
private String type;
@Schema(description = "委托人id")
private String userId;
@Schema(description = "委托人")
private String userName;
@Schema(description = "流程分类")
private String flowCategory;
@Schema(description = "被委托人")
private String toUserName;
@Schema(description = "被委托人")
private String toUserId;
@Schema(description = "描述")
private String description;
@Schema(description = "开始日期")
private Long startTime;
@Schema(description = "结束日期")
private Long endTime;
@Schema(description = "委托流程id")
private String flowId;
@Schema(description = "委托流程名称")
private String flowName;
}

View File

@@ -0,0 +1,31 @@
package com.yunzhupaas.engine.model.flowdelegate;
import com.yunzhupaas.base.UserInfo;
import com.yunzhupaas.engine.entity.FlowTaskEntity;
import com.yunzhupaas.engine.model.flowbefore.FlowTemplateAllModel;
import com.yunzhupaas.engine.util.FlowNature;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:18
*/
@Data
public class FlowDelegateModel {
//true 委托 false 审批
private Boolean delegate = true;
//0.发起 1.审批 2.结束
private Integer type = FlowNature.StartMsg;
private List<String> toUserIds = new ArrayList<>();
private UserInfo userInfo = new UserInfo();
private FlowTaskEntity flowTask = new FlowTaskEntity();
private FlowTemplateAllModel templateAllModel = new FlowTemplateAllModel();
//审批是否要发送消息
private Boolean approve = true;
}

View File

@@ -0,0 +1,18 @@
package com.yunzhupaas.engine.model.flowdelegate;
import com.yunzhupaas.base.Pagination;
import lombok.Data;
/**
* 流程设计
*
* @author 云筑产品开发平台组
* @version V3.4.2
* @copyright 深圳市乐程软件有限公司
* @date 2024/10/14 9:23:27
*/
@Data
public class FlowDelegatePagination extends Pagination {
private String myOrDelagateToMe;
}

View File

@@ -0,0 +1,15 @@
package com.yunzhupaas.engine.model.flowdelegate;
import lombok.Data;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:18
*/
@Data
public class FlowDelegateUpForm extends FlowDelegateCrForm {
}

View File

@@ -0,0 +1,28 @@
package com.yunzhupaas.engine.model.flowengine;
import com.yunzhupaas.engine.entity.FlowTaskNodeEntity;
import com.yunzhupaas.engine.model.flowengine.shuntjson.nodejson.ChildNodeList;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:16
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class FlowDataModel {
private ChildNodeList childNodeList;
private List<FlowTaskNodeEntity> taskNodeList;
private FlowModel flowModel;
private Boolean isAssig = true;
private Boolean isData = true;
}

View File

@@ -0,0 +1,115 @@
package com.yunzhupaas.engine.model.flowengine;
import io.swagger.v3.oas.annotations.media.Schema;
import com.yunzhupaas.base.UserInfo;
import com.yunzhupaas.constant.MsgCode;
import com.yunzhupaas.engine.enums.FlowStatusEnum;
import com.yunzhupaas.engine.model.FlowHandleModel;
import com.yunzhupaas.engine.util.FlowNature;
import lombok.Data;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:17
*/
@Data
public class FlowModel extends FlowHandleModel {
/**
* 判断新增
**/
@Schema(description = "判断新增")
private String id;
/**
* 引擎id
**/
@Schema(description = "引擎主键")
private String flowId;
/**
* 流程主键
**/
@Schema(description = "流程主键")
private String processId;
/**
* 流程标题
**/
@Schema(description = "流程标题")
private String flowTitle;
/**
* 紧急程度
**/
@Schema(description = "紧急程度")
private Integer flowUrgent = 1;
/**
* 流水号
**/
@Schema(description = "流水号")
private String billNo;
/**
* 0.提交 1.保存
**/
@Schema(description = "类型")
private String status = FlowStatusEnum.save.getMessage();
/**
* 子流程
**/
@Schema(description = "子流程")
private String parentId = FlowNature.ParentId;
/**
* 创建人
**/
@Schema(description = "创建人")
private String userId;
/**
* 被委托人
*/
@Schema(description = "被委托人")
private String delegateUser;
/**
* 当前经办id
**/
@Schema(description = "当前经办id")
private String taskOperatorId;
/**
* 回流id
*/
@Schema(description = "回流主键")
private String rollbackId;
/**
* 任务主键
*/
@Schema(description = "任务主键")
private String taskId;
/**
* 任务主键
*/
@Schema(description = "变更节点")
private String taskNodeId;
/**
* 是否冻结审批
*/
private Boolean rejectUser = false;
/**
* 是否子流程
**/
private Boolean isAsync = false;
/**
* 用户信息
*/
private UserInfo userInfo;
/**
* 定时器
*/
private Boolean isTimer = false;
/**
* 系统主键
*/
private String systemId;
/**
* 自动审批
*/
private Boolean voluntarily = false;
}

View File

@@ -0,0 +1,29 @@
package com.yunzhupaas.engine.model.flowengine;
import com.yunzhupaas.engine.entity.FlowTaskNodeEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.ArrayList;
import java.util.List;
/**
* @author :云筑产品开发平台组
* @version: V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2022/6/1 11:13
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class FlowNextModel {
private List<FlowTaskNodeEntity> nodeListAll = new ArrayList<>();
private List<FlowTaskNodeEntity> nextNodeEntity = new ArrayList<>();
private FlowTaskNodeEntity taskNode;
private FlowModel flowModel;
private Boolean isCountersign = false;
}

View File

@@ -0,0 +1,38 @@
package com.yunzhupaas.engine.model.flowengine;
import com.yunzhupaas.base.UserInfo;
import com.yunzhupaas.engine.entity.FlowTaskEntity;
import com.yunzhupaas.engine.entity.FlowTaskNodeEntity;
import com.yunzhupaas.engine.entity.FlowTaskOperatorEntity;
import com.yunzhupaas.engine.model.flowengine.shuntjson.nodejson.ChildNodeList;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @author :云筑产品开发平台组
* @version: V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2022/6/1 11:13
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class FlowOperator {
private UserInfo userInfo;
private FlowModel flowModel;
private FlowTaskEntity flowTask;
private List<ChildNodeList> nodeList;
private List<FlowTaskNodeEntity> taskNodeListAll;
private List<FlowTaskOperatorEntity> operatorListAll;
private boolean reject = false;
private Map<String, List<String>> asyncTaskList = new HashMap<>();
private Map<String, List<String>> nodeTaskIdList = new HashMap<>();
}

View File

@@ -0,0 +1,45 @@
package com.yunzhupaas.engine.model.flowengine;
import com.yunzhupaas.engine.entity.FlowTaskOperatorEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/7/14 9:17
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class FlowOperatordModel {
/**
* 审批状态
*/
private Integer status;
/**
* 审批原因
*/
private FlowModel flowModel;
/**
* 审核人
*/
private String userId;
/**
* 节点对象
*/
private FlowTaskOperatorEntity operator;
/**
* 流转操作人
*/
private String operatorId;
/**
* 自动审批
*/
private Boolean voluntarily = false;
}

View File

@@ -0,0 +1,26 @@
package com.yunzhupaas.engine.model.flowengine;
import com.fasterxml.jackson.annotation.JsonIgnore;
import io.swagger.v3.oas.annotations.media.Schema;
import com.yunzhupaas.base.Pagination;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
@Data
@Schema(description = "分页模型")
public class FlowPagination extends Pagination {
@Schema(description = "分类")
private String category;
@Schema(description = "类型")
private Integer flowType;
@Schema(description = "标志")
private Integer enabledMark;
@Schema(description = "类型")
private Integer type;
@JsonIgnore
private List<String> templateIdList = new ArrayList<>();
}

View File

@@ -0,0 +1,20 @@
package com.yunzhupaas.engine.model.flowengine;
import lombok.Data;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:17
*/
@Data
public class FlowTaskNodeRejectModel {
private String id;
private String nodeCode;
private String nodeName;
private String completion;
private Integer state;
private String nodeNext;
}

View File

@@ -0,0 +1,24 @@
package com.yunzhupaas.engine.model.flowengine;
import lombok.Data;
import java.util.Date;
/**
* 流程设计
*
* @author 云筑产品开发平台组
* @version V3.4.2
* @copyright 深圳市乐程软件有限公司
* @date 2024/11/10 10:53:15
*/
@Data
public class FlowTaskOperatorRejectModel {
private String id;
private Integer state;
private Integer handleStatus;
private Date handleTime;
// private Integer completion;
private String draftData;
}

View File

@@ -0,0 +1,20 @@
package com.yunzhupaas.engine.model.flowengine;
import lombok.Data;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:17
*/
@Data
public class FlowTaskRejectModel {
private String id;
private String thisStep;
private String thisStepId;
private Integer status;
private String nodeNext;
private Integer completion;
}

View File

@@ -0,0 +1,25 @@
package com.yunzhupaas.engine.model.flowengine;
import com.yunzhupaas.engine.entity.FlowTaskEntity;
import com.yunzhupaas.engine.entity.FlowTaskNodeEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class FlowUpModel {
private FlowTaskEntity flowTask;
private FlowTaskNodeEntity taskNode;
private List<FlowTaskNodeEntity> taskNodeList;
private Boolean isReject = false;
private Boolean rejectType = true;
private FlowModel flowModel;
private Boolean isAudit = false;
}

View File

@@ -0,0 +1,35 @@
package com.yunzhupaas.engine.model.flowengine;
import com.yunzhupaas.base.UserInfo;
import com.yunzhupaas.engine.entity.FlowTaskEntity;
import com.yunzhupaas.engine.entity.FlowTaskNodeEntity;
import com.yunzhupaas.engine.model.flowengine.shuntjson.childnode.ChildNode;
import com.yunzhupaas.engine.model.flowengine.shuntjson.nodejson.ChildNodeList;
import com.yunzhupaas.engine.model.flowengine.shuntjson.nodejson.ConditionList;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
/**
* @author :云筑产品开发平台组
* @version: V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2022/6/1 12:43
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class FlowUpdateNode {
private UserInfo userInfo;
private FlowTaskEntity flowTask;
private ChildNode childNodeAll;
private List<ChildNodeList> nodeListAll;
private List<ConditionList> conditionListAll;
private List<FlowTaskNodeEntity> taskNodeList;
private boolean isSubmit = false;
}

View File

@@ -0,0 +1,29 @@
package com.yunzhupaas.engine.model.flowengine.shuntjson.childnode;
import lombok.Data;
import java.util.List;
/**
* 解析引擎
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:12
*/
@Data
public class ChildNode {
private String type;
private String content;
private Properties properties = new Properties();
private String nodeId;
private String prevId;
private ChildNode childNode;
private String conditionType;
private List<ChildNode> conditionNodes;
private Boolean isInterflow = false;
private Boolean isBranchFlow = false;
}

View File

@@ -0,0 +1,47 @@
package com.yunzhupaas.engine.model.flowengine.shuntjson.childnode;
import io.swagger.v3.oas.annotations.media.Schema;
import com.yunzhupaas.engine.util.FlowNature;
import lombok.Data;
/**
* 解析引擎
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
*/
@Data
public class CounterSign {
/**
* 通过类型 0.无 1.百分比 2.人数
*/
@Schema(description = "通过类型")
private Integer auditType = FlowNature.RejectPercent;
/**
* 通过百分比
*/
@Schema(description = "通过百分比")
private Integer auditRatio = 100;
/**
* 通过人数
*/
@Schema(description = "通过人数")
private Integer auditNum = 1;
/**
* 拒绝类型 0.无 1.百分比 2.人数
*/
@Schema(description = "拒绝类型")
private Integer rejectType = FlowNature.RejectNo;
/**
* 拒绝百分比
*/
@Schema(description = "拒绝百分比")
private Integer rejectRatio = 10;
/**
* 拒绝人数
*/
@Schema(description = "拒绝人数")
private Integer rejectNum = 1;
}

View File

@@ -0,0 +1,31 @@
package com.yunzhupaas.engine.model.flowengine.shuntjson.childnode;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* 解析引擎
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
*/
@Data
public class FlowAssignModel {
/**
* 节点编码
*/
@Schema(description = "节点编码")
private String nodeId;
/**
* 传递规则
*/
@Schema(description = "传递规则")
private List<RuleListModel> ruleList = new ArrayList<>();
}

View File

@@ -0,0 +1,27 @@
package com.yunzhupaas.engine.model.flowengine.shuntjson.childnode;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* @author :云筑产品开发平台组
* @version: V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2022/3/31 14:53
*/
@Data
public class FuncConfig {
@Schema(description = "类型")
private Boolean on = false;
@Schema(description = "消息主键")
private String msgId;
@Schema(description = "接口主键")
private String interfaceId;
@Schema(description = "数据")
private List<TemplateJsonModel> templateJson = new ArrayList<>();
}

View File

@@ -0,0 +1,27 @@
package com.yunzhupaas.engine.model.flowengine.shuntjson.childnode;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Data
public class GroupsModel {
//1.字段 2.公式
@Schema(description = "类型")
private int fieldType = 1;
@Schema(description = "类型")
//1.数据里面获取 //2.解析表达式
private String field;
@Schema(description = "类型")
//1.字段 2.自定义
private int fieldValueType = 2;
@Schema(description = "类型")
//1.数据里面获取 2.直接获取
private Object fieldValue;
@Schema(description = "属性")
private String symbol;
@Schema(description = "类型")
private String yunzhupaasKey;
@Schema(description = "类型")
private String fieldValueYunzhupaasKey;
}

View File

@@ -0,0 +1,36 @@
package com.yunzhupaas.engine.model.flowengine.shuntjson.childnode;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author :云筑产品开发平台组
* @version: V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2022/6/17 17:53
*/
@Data
public class LimitModel {
/**
* 限时设置 0.关闭 1.自定义 2.同步发起配置
*/
@Schema(description = "限时设置")
private Integer on = 0;
/**
* 开始时间 0-接收时间1-发起时间2-表单变量
*/
@Schema(description = "开始类型")
private Integer nodeLimit = 0;
/**
* 表单字段key
*/
@Schema(description = "表单字段key")
private String formField = "";
/**
* 处理限定时长默认24 (小时)
*/
@Schema(description = "处理限定时长默认24")
private Integer duringDeal = 24;
}

View File

@@ -0,0 +1,30 @@
package com.yunzhupaas.engine.model.flowengine.shuntjson.childnode;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* 解析引擎
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
*/
@Data
public class MsgConfig {
/**
* 0.关闭 1.自定义 2.同步发起配置 3.默认
*/
@Schema(description = "类型")
private Integer on = 0;
@Schema(description = "消息主键")
private String msgId;
@Schema(description = "接口主键")
private String interfaceId;
@Schema(description = "数据")
private List<SendConfigJson> templateJson = new ArrayList<>();
}

View File

@@ -0,0 +1,25 @@
package com.yunzhupaas.engine.model.flowengine.shuntjson.childnode;
import io.swagger.v3.oas.annotations.media.Schema;
import com.yunzhupaas.emnus.SearchMethodEnum;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* 解析引擎
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:10
*/
@Data
public class ProperCond {
@Schema(description = "表达式")
private String logic = SearchMethodEnum.And.getSymbol();
@Schema(description = "条件")
private List<GroupsModel> groups = new ArrayList<>();
}

View File

@@ -0,0 +1,525 @@
package com.yunzhupaas.engine.model.flowengine.shuntjson.childnode;
import io.swagger.v3.oas.annotations.media.Schema;
import com.yunzhupaas.emnus.SearchMethodEnum;
import com.yunzhupaas.engine.enums.FlowErrorRuleEnum;
import com.yunzhupaas.engine.enums.FlowExtraRuleEnum;
import com.yunzhupaas.engine.enums.FlowTaskOperatorEnum;
import com.yunzhupaas.engine.util.FlowNature;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
* 解析引擎
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
*/
@Data
public class Properties {
/**
* 流程代办
*/
@Schema(description = "流程代办")
public MsgConfig waitMsgConfig = new MsgConfig();
/**
* 流程结束
*/
@Schema(description = "流程结束")
public MsgConfig endMsgConfig = new MsgConfig();
/**
* 节点同意
*/
@Schema(description = "流程结束")
public MsgConfig approveMsgConfig = new MsgConfig();
/**
* 节点拒绝
*/
@Schema(description = "节点拒绝")
public MsgConfig rejectMsgConfig = new MsgConfig();
/**
* 节点抄送
*/
@Schema(description = "节点抄送")
public MsgConfig copyMsgConfig = new MsgConfig();
/**
* 子流程
*/
@Schema(description = "子流程")
public MsgConfig launchMsgConfig = new MsgConfig();
/**
* 超时
*/
@Schema(description = "超时")
public MsgConfig overtimeMsgConfig = new MsgConfig();
/**
* 提醒
*/
@Schema(description = "提醒")
public MsgConfig noticeMsgConfig = new MsgConfig();
//--------------------------超时配置------------------------------
/**
* 转向节点
**/
@Schema(description = "转向节点")
public String swerveNode;
/**
* 会签比例
**/
@Schema(description = "会签比例")
public CounterSign counterSignConfig = new CounterSign();
/**
* 限时设置
*/
@Schema(description = "限时设置")
private LimitModel timeLimitConfig = new LimitModel();
/**
* 超时设置
*/
@Schema(description = "超时设置")
private TimeModel overTimeConfig = new TimeModel();
/**
* 提醒设置
*/
@Schema(description = "提醒设置")
private TimeModel noticeConfig = new TimeModel();
/**
* condition属性
**/
@Schema(description = "属性")
private Boolean isDefault = false;
@Schema(description = "属性")
private List<ProperCond> conditions = new ArrayList<>();
@Schema(description = "属性")
private String matchLogic = SearchMethodEnum.And.getSymbol();
/**
* approver属性
**/
@Schema(description = "名称")
private String title;
/**
* 复活取值 0.复活最后数据 1.复活当时数据
**/
@Schema(description = "复活取值")
private Integer resurgenceDataRule = FlowNature.ResurgenceLast;
/**
* 异常处理规则 1.超级管理员 2.指定用户 3.上一节点审批人 4.默认通过 5.无法提交 6.流程发起人
*/
@Schema(description = "异常处理规则")
private Integer errorRule = FlowErrorRuleEnum.administrator.getCode();
/**
* 事件处理规则
*/
@Schema(description = "事件处理规则")
private Integer funcConfigRule = FlowNature.FuncResume;
/**
* 指定人员处理异常
*/
@Schema(description = "指定人员处理异常")
private List<String> errorRuleUser = new ArrayList<>();
/**
* 同意附加条件 1.无条件 2.同一部门 3.同一岗位 4.发起人上级 5.发起人下属
*/
@Schema(description = "同意附加条件")
private Integer extraRule = FlowExtraRuleEnum.unconditional.getCode();
/**
* 抄送附加条件 1.无条件 2.同一部门 3.同一岗位 4.发起人上级 5.发起人下属
*/
@Schema(description = "抄送附加条件")
private Integer extraCopyRule = FlowExtraRuleEnum.unconditional.getCode();
/**
* 自动同意规则,默认不启用
*/
@Schema(description = "自动同意规则")
private Boolean hasAgreeRule = false;
/**
* 自动同意规则 1.不启用 2.审批人为发起人 3.审批人与上一审批节点处理人相同 4.审批人审批过
*/
@Schema(description = "自动同意规则")
private List<Integer> agreeRules = new ArrayList<>();
/**
* 发起人
**/
@Schema(description = "发起人")
private List<String> initiator = new ArrayList<>();
/**
* 审批人
**/
@Schema(description = "审批人")
private List<String> approvers = new ArrayList<>();
/**
* 经办对象
**/
@Schema(description = "经办对象")
private Integer assigneeType = FlowTaskOperatorEnum.InitiatorMe.getCode();
/**
* 字段
**/
@Schema(description = "字段")
private List<Map<String, Object>> formOperates = new ArrayList<>();
/**
* 传阅人
**/
@Schema(description = "传阅人")
private List<String> circulateUser = new ArrayList<>();
/**
* 流程进度
**/
@Schema(description = "流程进度")
private Integer progress = 50;
/**
* 驳回节点
**/
@Schema(description = "驳回节点")
private String rejectStep = FlowNature.START;
/**
* 驳回类型 1.重新审批 2.从当前节点审批
*/
@Schema(description = "驳回类型")
private Integer rejectType = FlowNature.RestartType;
/**
* 备注
**/
@Schema(description = "备注")
private String description;
/**
* 标题设置 0-默认,1-自定义
*/
@Schema(description = "标题设置")
private Integer titleType = FlowNature.TitleType;
/**
* 拒绝事件
**/
@Schema(description = "拒绝事件")
private FuncConfig rejectFuncConfig = new FuncConfig();
/**
* 同意事件
**/
@Schema(description = "同意事件")
private FuncConfig approveFuncConfig = new FuncConfig();
/**
* 开始事件
**/
@Schema(description = "开始事件")
private FuncConfig initFuncConfig = new FuncConfig();
/**
* 结束事件
**/
@Schema(description = "结束事件")
private FuncConfig endFuncConfig = new FuncConfig();
/**
* 超时事件
**/
@Schema(description = "超时事件")
private FuncConfig overtimeFuncConfig = new FuncConfig();
/**
* 提醒事件
*/
@Schema(description = "提醒事件")
private FuncConfig noticeFuncConfig = new FuncConfig();
/**
* 节点撤回事件
**/
@Schema(description = "节点撤回事件")
private FuncConfig recallFuncConfig = new FuncConfig();
/**
* 发起撤回事件
**/
@Schema(description = "发起撤回事件")
private FuncConfig flowRecallFuncConfig = new FuncConfig();
/**
* 接口服务
**/
@Schema(description = "接口服务")
private FuncConfig interfaceConfig = new FuncConfig();
/**
* 天
**/
@Schema(description = "")
private Integer day = 0;
/**
* 时
**/
@Schema(description = "")
private Integer hour = 0;
/**
* 分
**/
@Schema(description = "")
private Integer minute = 0;
/**
* 秒
**/
@Schema(description = "")
private Integer second = 0;
/**
* 指定人审批(0:或签 1:会签 2.依次审批)
**/
@Schema(description = "指定人审批")
private Integer counterSign = FlowNature.FixedApprover;
/**
* 自定义抄送人
**/
@Schema(description = "自定义抄送人")
private Boolean isCustomCopy = false;
/**
* 子流程自动提交
**/
@Schema(description = "子流程自动提交")
private Boolean autoSubmit = false;
/**
* 依次审批人
*/
@Schema(description = "依次审批人")
private List<String> approversSortList = new ArrayList<>();
/**
* 表单抄送人
**/
@Schema(description = "表单抄送人")
private Boolean isFormFieldCopy = false;
/**
* 表单变量字段
**/
@Schema(description = "表单变量字段")
private String copyFormField;
/**
* 表单变量类型
**/
@Schema(description = "表单变量类型")
private String copyFormFieldType;
/**
* 发起撤回 1-撤回终止 2-撤回重新提交.
**/
@Schema(description = "发起撤回")
private Integer revokeRule = FlowNature.RevokeTerminate;
/**
* 条件类型 0-条件 1-转向.
**/
@Schema(description = "条件类型")
private Integer conditionType = 0;
/**
* 是否抄送发起人.
**/
@Schema(description = "是否抄送发起人")
private Boolean isInitiatorCopy = false;
/**
* 发起人的第几级主管
**/
@Schema(description = "发起人的第几级主管")
private Integer managerLevel = 1;
/**
* 部门的第几级主管
**/
@Schema(description = "部门的第几级主管")
private Integer departmentLevel = 1;
/**
* 表单字段
**/
@Schema(description = "表单字段")
private String formField;
/**
* 审批节点
**/
@Schema(description = "审批节点")
private String nodeId;
/**
* 审批人为空时是否自动通过
**/
@Schema(description = "审批人为空时是否自动通过")
private Boolean noApproverHandler = false;
/**
* 前台按钮权限
**/
@Schema(description = "前台按钮权限")
private Boolean hasAuditBtn = true;
/**
* 前台通过
**/
@Schema(description = "前台通过")
private String auditBtnText = "通过";
/**
* 前台按钮权限
**/
@Schema(description = "前台按钮权限")
private Boolean hasCancelBtn = true;
/**
* 前台终止
**/
@Schema(description = "前台终止")
private String cancelBtnText = "驳回";
/**
* 前台按钮权限
**/
@Schema(description = "前台按钮权限")
private Boolean hasRejectBtn = true;
/**
* 前台拒绝
**/
@Schema(description = "前台拒绝")
private String rejectBtnText = "拒绝";
/**
* 前台按钮权限
**/
@Schema(description = "前台按钮权限")
private Boolean hasRevokeBtn = true;
/**
* 前台撤回
**/
@Schema(description = "前台撤回")
private String revokeBtnText = "撤回";
/**
* 前台按钮权限
**/
@Schema(description = "前台按钮权限")
private Boolean hasTransferBtn = true;
/**
* 前台转办
**/
@Schema(description = "前台按钮权限")
private String transferBtnText = "转办";
/**
* 前端按钮权限
*/
@Schema(description = "前端按钮权限")
private Boolean hasFreeApproverBtn = true;
/**
* 前台加签
*/
@Schema(description = "前台加签")
private String hasFreeApproverBtnText = "加签";
/**
* 前台按钮权限
**/
@Schema(description = "前台按钮权限")
private Boolean hasSubmitBtn = true;
/**
* 前台提交
**/
@Schema(description = "前台提交")
private String submitBtnText = "提交审核";
/**
* 前台按钮权限
**/
@Schema(description = "前台按钮权限")
private Boolean hasSaveBtn = false;
/**
* 前台保存
**/
@Schema(description = "前台保存")
private String saveBtnText = "保存草稿";
/**
* 前台按钮权限
**/
@Schema(description = "前台按钮权限")
private Boolean hasPressBtn = true;
/**
* 前台催办
**/
@Schema(description = "前台催办")
private String pressBtnText = "催办";
/**
* 前台打印权限
**/
@Schema(description = "前台打印权限")
private Boolean hasPrintBtn = false;
/**
* 前台打印
**/
@Schema(description = "前台打印")
private String printBtnText = "打印";
/**子流程属性**/
/**
* 打印id
**/
@Schema(description = "打印主键")
private List<String> printId = new ArrayList<>();
/**
* 是否批量审批
*/
@Schema(description = "是否批量审批")
private Boolean isBatchApproval = false;
/**
* 是否评论
*/
@Schema(description = "是否评论")
private Boolean isComment = false;
/**
* 是否汇总
*/
@Schema(description = "是否汇总")
private Boolean isSummary = false;
/**
* 是否有签名
**/
@Schema(description = "是否有签名")
private Boolean hasSign = false;
/**
* 是否有意见
**/
@Schema(description = "是否有意见")
private Boolean hasOpinion = true;
/**
* 超时设置
**/
@Schema(description = "超时设置")
private TimeOutConfig timeoutConfig = new TimeOutConfig();
/**
* 是否加签
**/
@Schema(description = "是否加签")
private Boolean hasFreeApprover = false;
/**
* 审批类型
*/
@Schema(description = "审批类型")
private Integer initiateType = FlowTaskOperatorEnum.Nominator.getCode();
/**
* 子流程引擎id
*/
@Schema(description = "流程引擎主键")
private String flowId;
/**
* 表单赋值
*/
@Schema(description = "表单赋值")
private List<FlowAssignModel> assignList = new ArrayList<>();
/**
* 子流程异步同步(true 异步 false同步)
*/
@Schema(description = "子流程异步同步")
private Boolean isAsync = false;
/**
* 默认标题
*/
@Schema(description = "默认标题")
private String defaultContent;
/**
* 自定义
*/
@Schema(description = "自定义")
private String titleContent;
/**
* 表单id
*/
@Schema(description = "表单主键")
private String formId;
/**
* 评论是否显示删除 true-显示; false-不显示
*/
@Schema(description = "评论是否显示删除")
private Boolean isShowDelComment = true;
/**
* 评论提醒
*/
@Schema(description = "评论提醒")
public MsgConfig commentMsgConfig = new MsgConfig();
}

View File

@@ -0,0 +1,27 @@
package com.yunzhupaas.engine.model.flowengine.shuntjson.childnode;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* 解析引擎
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:12
*/
@Data
public class RuleListModel {
/**
* 父字段
**/
@Schema(description = "父字段")
private String parentField;
/**
* 子字段
**/
@Schema(description = "子字段")
private String childField;
}

View File

@@ -0,0 +1,65 @@
package com.yunzhupaas.engine.model.flowengine.shuntjson.childnode;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* 版本: V3.2.0
* 版权: 深圳市乐程软件有限公司http://www.szlecheng.cn
* 作者: 云筑产品开发平台组
* 日期: 2022-08-19
*/
@Data
public class SendConfigJson {
@Schema(description = "主键")
private String id;
/**
* 消息发送配置id
**/
@Schema(description = "消息发送配置主键")
private String sendConfigId;
/**
* 消息类型
**/
@Schema(description = "消息类型")
private String messageType;
/**
* 消息模板id
**/
@Schema(description = "消息模板主键")
private String templateId;
/**
* 账号配置id
**/
@Schema(description = "账号配置主键")
private String accountConfigId;
/**
* 接收人
**/
@Schema(description = "接收人")
private List<String> toUser;
/**
* 模板参数
**/
@Schema(description = "模板参数")
private List<TemplateJsonModel> paramJson = new ArrayList<>();
/**
* 消息模板名称
**/
@Schema(description = "消息模板名称")
private String msgTemplateName;
}

View File

@@ -0,0 +1,35 @@
package com.yunzhupaas.engine.model.flowengine.shuntjson.childnode;
import io.swagger.v3.oas.annotations.media.Schema;
import com.yunzhupaas.emnus.TemplateEnum;
import lombok.Data;
/**
* 解析引擎
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
*/
@Data
public class TemplateJsonModel {
@Schema(description = "字段")
public String field;
@Schema(description = "名称")
public String fieldName;
@Schema(description = "字段")
public String relationField;
@Schema(description = "主键")
private String id;
@Schema(description = "是否子流程")
private Boolean isSubTable = false;
@Schema(description = "消息主键")
private String msgTemplateId;
@Schema(description = "默认值")
private String defaultValue;
@Schema(description = "参数来源")
private Integer sourceType = TemplateEnum.Field.getCode();
}

View File

@@ -0,0 +1,77 @@
package com.yunzhupaas.engine.model.flowengine.shuntjson.childnode;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author :云筑产品开发平台组
* @version: V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2022/6/17 17:54
*/
@Data
public class TimeModel {
//----------------------限时------------------------
/**
* 开始时间 0-接收时间1-发起时间2-表单变量
*/
@Schema(description = "开始类型")
private Integer nodeLimit = 0;
/**
* 表单字段key
*/
@Schema(description = "表单字段key")
private String formField = "";
/**
* 限定时长 默认24 (小时)
*/
@Schema(description = "限定时长")
private Integer duringDeal = 24;
//--------------------超时-------------------------
/**
* 超时自动审批
*/
@Schema(description = "超时自动审批")
private Boolean overAutoApprove = false;
/**
* 超时自动审批次数
*/
@Schema(description = "超时次数")
private Integer overAutoApproveTime = 5;
//---------------------公共----------------------------------
/**
* 超时设置 0.关闭 1.自定义 2.同步发起配置
*/
@Schema(description = "超时设置")
private Integer on = 0;
/**
* 事件(提醒、超时)
*/
@Schema(description = "事件")
private Boolean overEvent = false;
/**
* 次数(提醒、超时)
*/
@Schema(description = "次数")
private Integer overEventTime = 5;
/**
* 第一次时间
* 小时第一次超时时间默认值0=第一次触发超时事件时间=节点限定时长起始值+节点处理限定时长+设定的第一次超时时间
*/
@Schema(description = "第一次时间")
private Integer firstOver = 0;
/**
* 时间间隔(提醒、超时)
*/
@Schema(description = "时间间隔")
private Integer overTimeDuring = 2;
/**
* 通知(提醒、超时)
*/
@Schema(description = "通知")
private Boolean overNotice = false;
}

View File

@@ -0,0 +1,36 @@
package com.yunzhupaas.engine.model.flowengine.shuntjson.childnode;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* 解析引擎
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
*/
@Data
public class TimeOutConfig {
/**
* 开关
**/
@Schema(description = "开关")
private Boolean on = false;
/**
* 数量
**/
@Schema(description = "数量")
private Integer quantity;
/**
* 类型 day、 hour、 minute
**/
@Schema(description = "类型")
private String type;
/**
* 同意1 拒绝2
**/
@Schema(description = "类型")
private Integer handler;
}

View File

@@ -0,0 +1,41 @@
package com.yunzhupaas.engine.model.flowengine.shuntjson.nodejson;
import com.yunzhupaas.engine.model.flowengine.shuntjson.childnode.Properties;
import lombok.Data;
/**
* 解析引擎
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:12
*/
@Data
public class ChildNodeList {
/**
* 节点属性
**/
private Properties properties = new Properties();
/**
* 自定义属性
**/
private Custom custom = new Custom();
/**
* 流程节点id
**/
private String taskNodeId;
/**
* 流程任务id
**/
private String taskId;
/**
* 下一级定时器属性
**/
private DateProperties timer = new DateProperties();
/**
* 分流合流
**/
private String conditionType;
}

View File

@@ -0,0 +1,78 @@
package com.yunzhupaas.engine.model.flowengine.shuntjson.nodejson;
import com.yunzhupaas.emnus.SearchMethodEnum;
import com.yunzhupaas.engine.model.flowengine.shuntjson.childnode.ProperCond;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* 解析引擎
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:12
*/
@Data
public class ConditionList {
/**
* 条件
**/
private List<ProperCond> conditions = new ArrayList<>();
/**
* 表达式
**/
private String matchLogic = SearchMethodEnum.And.getSymbol();
/**
* 条件节点id
**/
private String nodeId;
/**
* 上一节点id
**/
private String prevId;
/**1.先判断分流节点 2.在判断孩子节点 3.最后获取子节点**/
/**
* 判断是否有分流节点
**/
private Boolean flow = false;
/**
* 判断是否有选择节点
**/
private Boolean branchFlow = false;
/**
* 判断是否有转转向
**/
private Boolean swerve = false;
/**
* 分流的节点id
**/
private String flowId;
/**
* 判断是否有子节点
**/
private Boolean child;
/**
* 条件成功id
**/
private String childNodeId;
/**
* 子节点id
**/
private String firstId;
/**
* 判断是否其他条件
**/
private Boolean isDefault;
/**
* 名称
**/
private String title;
/**
* 转向节点
**/
private String swerveNode;
}

View File

@@ -0,0 +1,68 @@
package com.yunzhupaas.engine.model.flowengine.shuntjson.nodejson;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* 解析引擎
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:12
*/
@Data
public class Custom {
private String type;
/**
* 当前节点id
**/
private String nodeId;
/**
* 上一节点id,可能是条件的节点也有可能是父类节点
**/
private String prevId;
/**
* 0外层节点1.里层节点
**/
private String num;
/**
* 判断是否有分流节点
**/
private Boolean flow = false;
/**
* 判断是否有选择节点
**/
private Boolean branchFlow = false;
/**
* 判断是否有转转向
**/
private Boolean swerve = false;
/**
* 分流的节点id
**/
private String flowId;
/**
* true选择childNode,false 选择firstId
**/
private Boolean child;
/**
* 该节点的子节点
**/
private String childNode;
/**
* 最外层的child节点
**/
private String firstId;
/**
* 同步子流程任务id
**/
private List<String> taskId = new ArrayList<>();
/**
* 异步子流程任务id
**/
private List<String> asyncTaskList = new ArrayList<>();
}

View File

@@ -0,0 +1,44 @@
package com.yunzhupaas.engine.model.flowengine.shuntjson.nodejson;
import lombok.Data;
import java.util.Date;
/**
* 解析引擎
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:12
*/
@Data
public class DateProperties {
/**
* 定时器
**/
private String title;
private Integer day = 0;
private Integer hour = 0;
private Integer minute = 0;
private Integer second = 0;
/**
* 判断是否有定时器
**/
private Boolean time = false;
/**
* 定时器id
**/
private String nodeId;
/**
* 定时器下一节点
**/
private String nextId;
/**
* 定时任务结束时间
**/
private Date date;
}

View File

@@ -0,0 +1,56 @@
package com.yunzhupaas.engine.model.flowlaunch;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:17
*/
@Data
public class FlowLaunchListVO {
@Schema(description = "任务编码")
private String enCode;
@Schema(description = "发起人员")
private String creatorUserId;
@Schema(description = "创建时间")
private Long creatorTime;
@Schema(description = "当前节点")
private String thisStep;
@Schema(description = "所属分类")
private String flowCategory;
@Schema(description = "流程标题")
private String fullName;
@Schema(description = "所属流程")
private String flowName;
@Schema(description = "流程状态", example = "1")
private Integer status;
@Schema(description = "发起时间")
private Long startTime;
@Schema(description = "主键id")
private String id;
@Schema(description = "结束时间")
private Long endTime;
@Schema(description = "完成情况")
private Integer completion;
@Schema(description = "备注")
private String description;
@Schema(description = "流程编码")
private String flowCode;
@Schema(description = "流程主键")
private String flowId;
@Schema(description = "表单类型 1-系统表单、2-动态表单")
private Integer formType;
@Schema(description = "表单数据")
private String formData;
@Schema(description = "紧急程度")
private Integer flowUrgent;
@Schema(description = "父流程")
private String parentId;
@Schema(description = "委托用户")
private String delegateUser;
}

View File

@@ -0,0 +1,34 @@
package com.yunzhupaas.engine.model.flowmessage;
import com.yunzhupaas.engine.entity.FlowTaskOperatorRecordEntity;
import com.yunzhupaas.engine.model.flowengine.shuntjson.childnode.TemplateJsonModel;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Map;
/**
* @author :云筑产品开发平台组
* @version: V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2022/3/31 16:15
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class FlowEventModel {
//数据
private String dataJson;
//表单数据
private Map<String, Object> data;
//系统匹配
private TemplateJsonModel templateJson;
//操作对象
private FlowTaskOperatorRecordEntity record;
}

View File

@@ -0,0 +1,36 @@
package com.yunzhupaas.engine.model.flowmessage;
import com.yunzhupaas.base.UserInfo;
import com.yunzhupaas.engine.entity.FlowTaskOperatorRecordEntity;
import com.yunzhupaas.engine.enums.FlowMessageEnum;
import com.yunzhupaas.engine.model.flowengine.shuntjson.childnode.MsgConfig;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class FlowMessageModel {
private String title = "";
private Integer type = FlowMessageEnum.wait.getCode();
private Integer status;
private MsgConfig msgConfig = new MsgConfig();
private List<String> userList = new ArrayList<>();
private Map<String, Object> data = new HashMap<>();
private Map<String, String> contMsg = new HashMap<>();
private String fullName;
private FlowTaskOperatorRecordEntity recordEntity;
private UserInfo userInfo;
}

View File

@@ -0,0 +1,77 @@
package com.yunzhupaas.engine.model.flowmessage;
import com.yunzhupaas.engine.entity.*;
import com.yunzhupaas.engine.model.flowbefore.FlowTemplateAllModel;
import com.yunzhupaas.engine.model.flowengine.FlowModel;
import com.yunzhupaas.engine.model.flowengine.shuntjson.childnode.MsgConfig;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/7/14 9:17
*/
@Data
@NoArgsConstructor
public class FlowMsgModel {
private String title;
private FlowTemplateAllModel flowTemplateAllModel = new FlowTemplateAllModel();
private Map<String, Object> data = new HashMap<>();
private FlowModel flowModel = new FlowModel();
private FlowTaskEntity taskEntity = new FlowTaskEntity();
private FlowTaskNodeEntity taskNodeEntity = new FlowTaskNodeEntity();
private List<FlowTaskNodeEntity> nodeList = new ArrayList<>();
private List<FlowTaskOperatorEntity> operatorList = new ArrayList<>();
private List<FlowTaskCirculateEntity> circulateList = new ArrayList<>();
private String startHandId;
private List<FlowTaskOperatorRecordEntity> operatorRecordList = new ArrayList<>();
/**
* 代办 (通知代办)
*/
private Boolean wait = true;
/**
* 同意
*/
private Boolean approve = false;
/**
* 拒绝
*/
private Boolean reject = false;
/**
* 抄送人
*/
private Boolean copy = false;
/**
* 结束 (通知发起人)
*/
private Boolean end = false;
/**
* 子流程通知
*/
private Boolean launch = false;
/**
* 拒绝发起节点
*/
private Boolean start = false;
/**
* 超时
*/
private Boolean overtime = false;
/**
* 提醒
*/
private Boolean notice = false;
/**
* 评论提醒
*/
private Boolean comment = false;
}

View File

@@ -0,0 +1,20 @@
package com.yunzhupaas.engine.model.flowmessage;
import lombok.Data;
import java.util.Map;
/**
* 事件对象
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/8/20 8:49
*/
@Data
public class FlowParameterModel {
private String interId;
private Map<String, String> parameterMap;
}

View File

@@ -0,0 +1,20 @@
package com.yunzhupaas.engine.model.flowmonitor;
import lombok.Data;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:18
*/
@Data
public class FlowEventLogListVO {
private String fullName;
private String interfaceId;
private String interfaceName;
private String interfaceCode;
private Long creatorTime;
private String result;
}

View File

@@ -0,0 +1,55 @@
package com.yunzhupaas.engine.model.flowmonitor;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:17
*/
@Data
public class FlowMonitorListVO {
@Schema(description = "流程编码")
private String enCode;
@Schema(description = "发起人员id")
private String creatorUserId;
@Schema(description = "创建时间")
private Long creatorTime;
@Schema(description = "当前节点")
private String thisStep;
@Schema(description = "所属分类")
private String flowCategory;
@Schema(description = "流程标题")
private String fullName;
@Schema(description = "所属流程")
private String flowName;
@Schema(description = "流程状态", example = "1")
private Integer status;
@Schema(description = "开始时间")
private Long startTime;
@Schema(description = "主键id")
private String id;
@Schema(description = "流程主键")
private String flowId;
@Schema(description = "流程编码")
private String flowCode;
@Schema(description = "实例进程")
private String processId;
@Schema(description = "完成情况")
private Integer completion;
@Schema(description = "用户名称")
private String userName;
@Schema(description = "描述")
private String description;
@Schema(description = "表单类型 1-系统表单、2-动态表单")
private Integer formType;
@Schema(description = "表单数据")
private String formData;
@Schema(description = "紧急程度")
private Integer flowUrgent;
@Schema(description = "流程版本")
private Integer flowVersion;
}

View File

@@ -0,0 +1,36 @@
package com.yunzhupaas.engine.model.flowtask;
import com.yunzhupaas.engine.entity.FlowTaskEntity;
import com.yunzhupaas.engine.entity.FlowTaskNodeEntity;
import com.yunzhupaas.engine.entity.FlowTaskOperatorEntity;
import com.yunzhupaas.engine.model.flowengine.shuntjson.nodejson.ChildNodeList;
import com.yunzhupaas.engine.model.flowtask.method.TaskOperatoUser;
import com.yunzhupaas.permission.entity.UserEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.ArrayList;
import java.util.List;
/**
* @author :云筑产品开发平台组
* @version: V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2022/4/25 13:57
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class FlowAgreeRuleModel {
private List<FlowTaskOperatorEntity> operatorListAll = new ArrayList<>();
private TaskOperatoUser taskOperatoUser;
private FlowTaskEntity flowTask;
private Boolean reject = false;
private List<UserEntity> userName = new ArrayList<>();
private ChildNodeList childNode;
private List<FlowTaskNodeEntity> taskNodeList = new ArrayList<>();
}

View File

@@ -0,0 +1,32 @@
package com.yunzhupaas.engine.model.flowtask;
import com.yunzhupaas.engine.entity.FlowTaskEntity;
import com.yunzhupaas.engine.entity.FlowTaskNodeEntity;
import com.yunzhupaas.engine.entity.FlowTaskOperatorEntity;
import com.yunzhupaas.engine.model.flowengine.FlowModel;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.ArrayList;
import java.util.List;
/**
* @author :云筑产品开发平台组
* @version: V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2022/7/6 16:52
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class FlowApproveModel {
private List<FlowTaskOperatorEntity> operatorList = new ArrayList<>();
private List<FlowTaskNodeEntity> taskNodeList = new ArrayList<>();
private FlowTaskEntity flowTask = new FlowTaskEntity();
private FlowModel flowModel = new FlowModel();
private boolean isSubmit = false;
}

View File

@@ -0,0 +1,23 @@
package com.yunzhupaas.engine.model.flowtask;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.List;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:17
*/
@Data
public class FlowAssistModel {
@Schema(description = "主键")
private String ids;
@Schema(description = "用户")
private List<String> list;
@Schema(description = "流程基本主键")
private String templateId;
}

View File

@@ -0,0 +1,32 @@
package com.yunzhupaas.engine.model.flowtask;
import com.yunzhupaas.base.UserInfo;
import com.yunzhupaas.engine.entity.FlowTaskEntity;
import com.yunzhupaas.engine.model.flowengine.shuntjson.nodejson.ChildNodeList;
import com.yunzhupaas.engine.model.flowengine.shuntjson.nodejson.ConditionList;
import com.yunzhupaas.permission.entity.UserEntity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
/**
* @author :云筑产品开发平台组
* @version: V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2022/4/25 13:57
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class FlowConditionModel {
private String data;
private String nodeId;
private UserInfo userInfo;
private UserEntity userEntity;
private FlowTaskEntity flowTaskEntity;
private List<ChildNodeList> childNodeListAll;
private List<ConditionList> conditionListAll;
}

View File

@@ -0,0 +1,52 @@
package com.yunzhupaas.engine.model.flowtask;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @author :云筑产品开发平台组
* @version: V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2022/4/25 13:57
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class FlowContModel {
/**
* 审批类型
*/
private Integer type;
/**
* 编码
*/
private String enCode;
/**
* 引擎id
*/
private String flowId;
/**
* 表单分类
*/
private Integer formType;
/**
* 任务id
*/
private String processId;
/**
* 状态
*/
private Integer status;
/**
* 代办id
*/
private String taskOperatorId;
/**
* 节点id
*/
private String taskNodeId;
}

View File

@@ -0,0 +1,24 @@
package com.yunzhupaas.engine.model.flowtask;
import com.yunzhupaas.engine.entity.FlowTaskNodeEntity;
import com.yunzhupaas.engine.entity.FlowTaskOperatorEntity;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* @author :云筑产品开发平台组
* @version: V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2022/4/25 13:57
*/
@Data
public class FlowCountersignModel {
private FlowTaskNodeEntity taskNode;
private List<FlowTaskOperatorEntity> operatorList = new ArrayList<>();
private Boolean fixed = false;
private double pass = 100;
private List<FlowTaskOperatorEntity> passNumList = new ArrayList<>();
}

View File

@@ -0,0 +1,16 @@
package com.yunzhupaas.engine.model.flowtask;
import lombok.Data;
/**
* @author :云筑产品开发平台组
* @version: V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2022/6/17 15:00
*/
@Data
public class FlowErrorModel {
private String nodeId;
private String nodeName;
}

View File

@@ -0,0 +1,27 @@
package com.yunzhupaas.engine.model.flowtask;
import com.yunzhupaas.engine.entity.FlowTaskNodeEntity;
import com.yunzhupaas.engine.model.flowengine.FlowModel;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.ArrayList;
import java.util.List;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class FlowNodeListModel {
private List<FlowTaskNodeEntity> dataAll = new ArrayList<>();
private FlowModel flowModel = new FlowModel();
private Boolean isAdd = false;
private FlowTaskNodeEntity taskNode = new FlowTaskNodeEntity();
private Long num = 1L;
}

View File

@@ -0,0 +1,48 @@
package com.yunzhupaas.engine.model.flowtask;
import lombok.Data;
import java.util.Date;
/**
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/15 9:17
*/
@Data
public class FlowTaskListModel {
private String id;
private String processId;
private String enCode;
private String fullName;
private Integer flowUrgent;
private String flowId;
private String flowCode;
private String flowName;
private String flowCategory;
private String flowType;
private Date startTime;
private Date endTime;
private String thisStep;
private String thisStepId;
private Integer status;
private Integer completion;
private String creatorUserId;
private Date creatorTime;
private String handleId;
private String nodeName;
private String lastModifyUserId;
private Date lastModifyTime;
private String approversProperties;
private String description;
private String flowVersion;
private Integer taskStatus;
private String sortCode;
private String counterSign;
private String templateId;
private String delegateUser;
private String icon;
private String circulateId;
}

Some files were not shown because too many files have changed in this diff Show More