初始代码
This commit is contained in:
27
yunzhupaas-flowable/yunzhupaas-flowable-entity/pom.xml
Normal file
27
yunzhupaas-flowable/yunzhupaas-flowable-entity/pom.xml
Normal file
@@ -0,0 +1,27 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<parent>
|
||||
<artifactId>yunzhupaas-flowable</artifactId>
|
||||
<groupId>com.yunzhupaas</groupId>
|
||||
<version>5.2.0-RELEASE</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<artifactId>yunzhupaas-flowable-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>
|
||||
@@ -0,0 +1,55 @@
|
||||
package com.yunzhupaas.flowable.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.yunzhupaas.base.entity.SuperExtendEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/18 15:50
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@TableName("workflow_candidates")
|
||||
public class CandidatesEntity extends SuperExtendEntity<String> {
|
||||
/**
|
||||
* 节点编码
|
||||
*/
|
||||
@TableField("f_node_code")
|
||||
private String nodeCode;
|
||||
/**
|
||||
* 任务id
|
||||
*/
|
||||
@TableField("f_task_id")
|
||||
private String taskId;
|
||||
/**
|
||||
* 审批人id
|
||||
*/
|
||||
@TableField("f_handle_id")
|
||||
private String handleId;
|
||||
/**
|
||||
* 审批人账号
|
||||
*/
|
||||
@TableField("f_account")
|
||||
private String account;
|
||||
/**
|
||||
* 候选人
|
||||
*/
|
||||
@TableField("f_candidates")
|
||||
private String candidates;
|
||||
/**
|
||||
* 经办主键
|
||||
*/
|
||||
@TableField("f_operator_id")
|
||||
private String operatorId;
|
||||
/**
|
||||
* 审批类型(1-候选人 2-异常处理人)
|
||||
*/
|
||||
@TableField("f_type")
|
||||
private Integer type;
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
package com.yunzhupaas.flowable.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.yunzhupaas.base.entity.SuperExtendEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* @author :云筑产品开发平台组
|
||||
* @version: V3.1.0
|
||||
* @copyright 深圳市乐程软件有限公司
|
||||
* @date :2024/4/25 下午6:12
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@TableName("workflow_circulate")
|
||||
public class CirculateEntity extends SuperExtendEntity<String> {
|
||||
|
||||
/**
|
||||
* 用户主键
|
||||
*/
|
||||
@TableField("f_user_id")
|
||||
private String userId;
|
||||
|
||||
/**
|
||||
* 任务主键
|
||||
*/
|
||||
@TableField("f_task_id")
|
||||
private String taskId;
|
||||
|
||||
/**
|
||||
* 节点编号
|
||||
*/
|
||||
@TableField("f_node_code")
|
||||
private String nodeCode;
|
||||
|
||||
/**
|
||||
* 节点名称
|
||||
*/
|
||||
@TableField("f_node_name")
|
||||
private String nodeName;
|
||||
|
||||
/**
|
||||
* 节点主键
|
||||
*/
|
||||
@TableField("f_node_id")
|
||||
private String nodeId;
|
||||
|
||||
/**
|
||||
* 经办主键
|
||||
*/
|
||||
@TableField("f_operator_id")
|
||||
private String operatorId;
|
||||
|
||||
/**
|
||||
* 是否已读
|
||||
*/
|
||||
@TableField("f_read")
|
||||
private Integer circulateRead;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,56 @@
|
||||
package com.yunzhupaas.flowable.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("workflow_comment")
|
||||
public class CommentEntity extends SuperExtendEntity.SuperExtendEnabledEntity<String> {
|
||||
|
||||
/**
|
||||
* 任务主键
|
||||
*/
|
||||
@TableField("F_TASK_ID")
|
||||
private String taskId;
|
||||
|
||||
/**
|
||||
* 评论id
|
||||
*/
|
||||
@TableField("F_REPLY_ID")
|
||||
private String replyId;
|
||||
|
||||
/**
|
||||
* 文本
|
||||
*/
|
||||
@TableField("F_TEXT")
|
||||
private String text;
|
||||
|
||||
/**
|
||||
* 图片
|
||||
*/
|
||||
@TableField("F_IMAGE")
|
||||
private String image;
|
||||
|
||||
/**
|
||||
* 附件
|
||||
*/
|
||||
@TableField("F_FILE")
|
||||
private String files;
|
||||
|
||||
/**
|
||||
* 评论删除
|
||||
*/
|
||||
@TableField("f_delete_show")
|
||||
private Integer deleteShow;
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
package com.yunzhupaas.flowable.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.yunzhupaas.base.entity.SuperExtendEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 常用流程
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/5/22 20:19
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@TableName("workflow_common")
|
||||
public class CommonEntity extends SuperExtendEntity<String> {
|
||||
/**
|
||||
* 对象主键
|
||||
*/
|
||||
@TableField("F_FLOW_ID")
|
||||
private String flowId;
|
||||
}
|
||||
@@ -0,0 +1,65 @@
|
||||
package com.yunzhupaas.flowable.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.yunzhupaas.base.entity.SuperExtendEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 流程委托
|
||||
*
|
||||
* @author 云筑产品开发平台组
|
||||
* @version V3.1.0
|
||||
* @copyright 深圳市乐程软件有限公司
|
||||
* @date 2023/09/27
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@TableName("workflow_delegate")
|
||||
public class DelegateEntity extends SuperExtendEntity.SuperExtendDEEntity<String> {
|
||||
|
||||
/**
|
||||
* 委托人id
|
||||
*/
|
||||
@TableField("F_USER_ID")
|
||||
private String userId;
|
||||
/**
|
||||
* 委托人
|
||||
*/
|
||||
@TableField("F_USER_NAME")
|
||||
private String userName;
|
||||
|
||||
/**
|
||||
* 委托类型(0-发起委托,1-审批委托)
|
||||
*/
|
||||
@TableField("F_TYPE")
|
||||
private Integer type;
|
||||
|
||||
/**
|
||||
* 委托流程
|
||||
*/
|
||||
@TableField("F_FLOW_ID")
|
||||
private String flowId;
|
||||
/**
|
||||
* 委托流程名称
|
||||
*/
|
||||
@TableField("F_FLOW_NAME")
|
||||
private String flowName;
|
||||
|
||||
/**
|
||||
* 开始时间
|
||||
*/
|
||||
@TableField("F_START_TIME")
|
||||
private Date startTime;
|
||||
|
||||
/**
|
||||
* 结束时间
|
||||
*/
|
||||
@TableField("F_END_TIME")
|
||||
private Date endTime;
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
package com.yunzhupaas.flowable.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.yunzhupaas.base.entity.SuperExtendEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/9/2 11:54
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@TableName("workflow_delegate_info")
|
||||
public class DelegateInfoEntity extends SuperExtendEntity<String> {
|
||||
/**
|
||||
* 委托主键
|
||||
*/
|
||||
@TableField("F_DELEGATE_ID")
|
||||
private String delegateId;
|
||||
/**
|
||||
* 被委托人id
|
||||
*/
|
||||
@TableField("F_TO_USER_ID")
|
||||
private String toUserId;
|
||||
/**
|
||||
* 被委托人
|
||||
*/
|
||||
@TableField("F_TO_USER_NAME")
|
||||
private String toUserName;
|
||||
/**
|
||||
* 状态(0.待确认 1.已接受 2.已拒绝)
|
||||
*/
|
||||
@TableField("F_STATUS")
|
||||
private Integer status;
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package com.yunzhupaas.flowable.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.yunzhupaas.base.entity.SuperExtendEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 流程发起用户信息
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/18 9:36
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@TableName("workflow_launch_user")
|
||||
public class LaunchUserEntity 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_task_id")
|
||||
private String taskId;
|
||||
/**
|
||||
* 公司下所有部门
|
||||
*/
|
||||
@TableField("f_department")
|
||||
private String department;
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
package com.yunzhupaas.flowable.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.yunzhupaas.base.entity.SuperExtendEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/6/25 17:00
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@TableName("workflow_node_record")
|
||||
public class NodeRecordEntity extends SuperExtendEntity<String> {
|
||||
/**
|
||||
* 任务id
|
||||
*/
|
||||
@TableField("F_TASK_ID")
|
||||
private String taskId;
|
||||
/**
|
||||
* 节点id
|
||||
*/
|
||||
@TableField("F_NODE_ID")
|
||||
private String nodeId;
|
||||
/**
|
||||
* 节点编码
|
||||
*/
|
||||
@TableField("F_NODE_CODE")
|
||||
private String nodeCode;
|
||||
/**
|
||||
* 节点名称
|
||||
*/
|
||||
@TableField("F_NODE_NAME")
|
||||
private String nodeName;
|
||||
/**
|
||||
* 节点状态,1-已提交 2-已通过 3-已拒绝 4-审批中 5-已退回 6-已撤回 7-等待中
|
||||
*/
|
||||
@TableField("F_NODE_STATUS")
|
||||
private Integer nodeStatus;
|
||||
}
|
||||
@@ -0,0 +1,112 @@
|
||||
package com.yunzhupaas.flowable.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.yunzhupaas.base.entity.SuperExtendEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 经办
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/18 15:10
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@TableName("workflow_operator")
|
||||
public class OperatorEntity extends SuperExtendEntity<String> {
|
||||
/**
|
||||
* 节点名称
|
||||
*/
|
||||
@TableField("f_node_name")
|
||||
private String nodeName;
|
||||
/**
|
||||
* 节点编码
|
||||
*/
|
||||
@TableField("f_node_code")
|
||||
private String nodeCode;
|
||||
/**
|
||||
* 任务id
|
||||
*/
|
||||
@TableField("f_task_id")
|
||||
private String taskId;
|
||||
/**
|
||||
* 节点id,更新节点是先删除后添加,所以节点id待删除
|
||||
*/
|
||||
@TableField("f_node_id")
|
||||
private String nodeId;
|
||||
/**
|
||||
* 加签经办父级id
|
||||
*/
|
||||
@TableField("f_parent_id")
|
||||
private String parentId;
|
||||
/**
|
||||
* 处理时间
|
||||
*/
|
||||
@TableField("f_handle_time")
|
||||
private Date handleTime;
|
||||
/**
|
||||
* 处理人id
|
||||
*/
|
||||
@TableField("f_handle_id")
|
||||
private String handleId;
|
||||
/**
|
||||
* 全部处理人
|
||||
*/
|
||||
@TableField("f_handle_all")
|
||||
private String handleAll;
|
||||
/**
|
||||
* 处理状态,同意、拒绝
|
||||
*/
|
||||
@TableField("f_handle_status")
|
||||
private Integer handleStatus;
|
||||
/**
|
||||
* 处理参数,加签信息
|
||||
*/
|
||||
@TableField("f_handle_parameter")
|
||||
private String handleParameter;
|
||||
/**
|
||||
* 开始处理时间
|
||||
*/
|
||||
@TableField("f_start_handle_time")
|
||||
private Date startHandleTime;
|
||||
/**
|
||||
* 签收时间
|
||||
*/
|
||||
@TableField("f_sign_time")
|
||||
private Date signTime;
|
||||
/**
|
||||
* 截止时间
|
||||
*/
|
||||
@TableField("f_duedate")
|
||||
private Date duedate;
|
||||
/**
|
||||
* 状态
|
||||
*/
|
||||
@TableField("f_status")
|
||||
private Integer status;
|
||||
/**
|
||||
* 是否完成,有操作(如加签、同意等)变1,加签经办完成后变0
|
||||
*/
|
||||
@TableField("f_completion")
|
||||
private Integer completion;
|
||||
/**
|
||||
* 流程引擎类型;1.flowable,2,activity,3.camunda
|
||||
*/
|
||||
@TableField("f_engine_type")
|
||||
private Integer engineType;
|
||||
/**
|
||||
* 草稿数据
|
||||
*/
|
||||
@TableField("f_draft_data")
|
||||
private String draftData;
|
||||
/**
|
||||
* 是否办理节点(0否 1是)
|
||||
*/
|
||||
@TableField("f_is_processing")
|
||||
private Integer isProcessing;
|
||||
}
|
||||
@@ -0,0 +1,92 @@
|
||||
package com.yunzhupaas.flowable.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.yunzhupaas.base.entity.SuperExtendEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 经办记录
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/23 9:13
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@TableName("workflow_record")
|
||||
public class RecordEntity extends SuperExtendEntity<String> {
|
||||
/**
|
||||
* 节点名称
|
||||
*/
|
||||
@TableField("f_node_name")
|
||||
private String nodeName;
|
||||
/**
|
||||
* 节点编码
|
||||
*/
|
||||
@TableField("f_node_code")
|
||||
private String nodeCode;
|
||||
/**
|
||||
* 节点id
|
||||
*/
|
||||
@TableField("f_node_id")
|
||||
private String nodeId;
|
||||
/**
|
||||
* 经办类型
|
||||
*/
|
||||
@TableField("f_handle_type")
|
||||
private Integer handleType;
|
||||
/**
|
||||
* 经办人员
|
||||
*/
|
||||
@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;
|
||||
/**
|
||||
* 任务id
|
||||
*/
|
||||
@TableField("f_task_id")
|
||||
private String taskId;
|
||||
/**
|
||||
* 签名图片
|
||||
*/
|
||||
@TableField("f_sign_img")
|
||||
private String signImg;
|
||||
/**
|
||||
* 状态,0.进行数据 1.加签数据 3.已办不显示数据 -1.作废
|
||||
*/
|
||||
@TableField("f_status")
|
||||
private Integer status;
|
||||
/**
|
||||
* 流转操作人
|
||||
*/
|
||||
@TableField("f_handle_user_id")
|
||||
private String handleUserId;
|
||||
/**
|
||||
* 经办文件
|
||||
*/
|
||||
@TableField("f_file_list")
|
||||
private String fileList;
|
||||
/**
|
||||
* 拓展字段
|
||||
*/
|
||||
@TableField("f_expand_field")
|
||||
private String expandField;
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
package com.yunzhupaas.flowable.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.yunzhupaas.base.entity.SuperExtendEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/5/8 17:57
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@TableName("workflow_reject_data")
|
||||
public class RejectDataEntity extends SuperExtendEntity<String> {
|
||||
/**
|
||||
* 任务json
|
||||
*/
|
||||
@TableField("F_TASK_JSON")
|
||||
private String taskJson;
|
||||
/**
|
||||
* 经办json
|
||||
*/
|
||||
@TableField("F_OPERATOR_JSON")
|
||||
private String operatorJson;
|
||||
/**
|
||||
* 节点编码
|
||||
*/
|
||||
@TableField("F_NODE_CODE")
|
||||
private String nodeCode;
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
package com.yunzhupaas.flowable.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.yunzhupaas.base.entity.SuperExtendEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 撤销
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/8/23 17:27
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@TableName("workflow_revoke")
|
||||
public class RevokeEntity extends SuperExtendEntity<String> {
|
||||
/**
|
||||
* 任务主键
|
||||
*/
|
||||
@TableField("F_TASK_ID")
|
||||
private String taskId;
|
||||
/**
|
||||
* 撤销任务主键
|
||||
*/
|
||||
@TableField("F_REVOKE_TASK_ID")
|
||||
private String revokeTaskId;
|
||||
/**
|
||||
* 表单数据
|
||||
*/
|
||||
@TableField("F_FORM_DATA")
|
||||
private String formData;
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
package com.yunzhupaas.flowable.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.yunzhupaas.base.entity.SuperExtendEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 子流程发起参数(依次发起)
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/12/6 15:27
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@TableName("workflow_subtask_data")
|
||||
public class SubtaskDataEntity extends SuperExtendEntity<String> {
|
||||
/**
|
||||
* 子流程发起参数
|
||||
*/
|
||||
@TableField("F_SUBTASK_JSON")
|
||||
private String subtaskJson;
|
||||
/**
|
||||
* 父流程id
|
||||
*/
|
||||
@TableField("F_PARENT_ID")
|
||||
private String parentId;
|
||||
/**
|
||||
* 节点编码
|
||||
*/
|
||||
@TableField("F_NODE_CODE")
|
||||
private String nodeCode;
|
||||
}
|
||||
@@ -0,0 +1,180 @@
|
||||
package com.yunzhupaas.flowable.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.yunzhupaas.base.entity.SuperExtendEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 流程引擎
|
||||
*
|
||||
* @author 云筑产品开发平台组
|
||||
* @version V3.4.2
|
||||
* @copyright 深圳市乐程软件有限公司
|
||||
* @date 2024年7月11日 上午9:18
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@TableName("workflow_task")
|
||||
public class TaskEntity extends SuperExtendEntity<String> {
|
||||
|
||||
/**
|
||||
* 任务编码
|
||||
*/
|
||||
@TableField("F_EN_CODE")
|
||||
private String enCode;
|
||||
|
||||
/**
|
||||
* 任务标题
|
||||
*/
|
||||
@TableField("F_FULL_NAME")
|
||||
private String fullName;
|
||||
|
||||
/**
|
||||
* 流程名称
|
||||
*/
|
||||
@TableField("F_FLOW_NAME")
|
||||
private String flowName;
|
||||
|
||||
/**
|
||||
* 流程编码
|
||||
*/
|
||||
@TableField("F_FLOW_CODE")
|
||||
private String flowCode;
|
||||
|
||||
/**
|
||||
* 任务状态
|
||||
*/
|
||||
@TableField("F_STATUS")
|
||||
private Integer status;
|
||||
/**
|
||||
* 历史状态
|
||||
*/
|
||||
@TableField("F_HIS_STATUS")
|
||||
private Integer hisStatus;
|
||||
|
||||
/**
|
||||
* 流程分类
|
||||
*/
|
||||
@TableField("F_FLOW_CATEGORY")
|
||||
private String flowCategory;
|
||||
|
||||
/**
|
||||
* 流程类型
|
||||
*/
|
||||
@TableField("F_FLOW_TYPE")
|
||||
private Integer flowType;
|
||||
|
||||
/**
|
||||
* 流程版本
|
||||
*/
|
||||
@TableField("F_FLOW_VERSION")
|
||||
private String flowVersion;
|
||||
|
||||
/**
|
||||
* 同步异步(0:同步,1:异步)
|
||||
*/
|
||||
@TableField("F_IS_ASYNC")
|
||||
private Integer isAsync;
|
||||
|
||||
/**
|
||||
* 子流程参数
|
||||
*/
|
||||
@TableField("F_SUB_PARAMETER")
|
||||
private String subParameter;
|
||||
|
||||
/**
|
||||
* 父级实例id
|
||||
*/
|
||||
@TableField("F_PARENT_ID")
|
||||
private String parentId;
|
||||
|
||||
/**
|
||||
* 紧急程度
|
||||
*/
|
||||
@TableField("F_URGENT")
|
||||
private Integer urgent;
|
||||
|
||||
/**
|
||||
* 流程主键
|
||||
*/
|
||||
@TableField("F_TEMPLATE_ID")
|
||||
private String templateId;
|
||||
|
||||
/**
|
||||
* 流程版本主键
|
||||
*/
|
||||
@TableField("F_FLOW_ID")
|
||||
private String flowId;
|
||||
|
||||
/**
|
||||
* 流程引擎实例id
|
||||
*/
|
||||
@TableField("F_INSTANCE_ID")
|
||||
private String instanceId;
|
||||
/**
|
||||
* 流程引擎类型;1.flowable,2,activity,3.camunda
|
||||
*/
|
||||
@TableField("F_ENGINE_TYPE")
|
||||
private Integer engineType;
|
||||
|
||||
/**
|
||||
* 委托用户
|
||||
*/
|
||||
@TableField("f_delegate_user_id")
|
||||
private String delegateUserId;
|
||||
/**
|
||||
* 开始时间
|
||||
*/
|
||||
@TableField("f_start_time")
|
||||
private Date startTime;
|
||||
/**
|
||||
* 结束时间
|
||||
*/
|
||||
@TableField("f_end_time")
|
||||
private Date endTime;
|
||||
/**
|
||||
* 当前节点名称
|
||||
*/
|
||||
@TableField("f_current_node_name")
|
||||
private String currentNodeName;
|
||||
/**
|
||||
* 当前节点编码
|
||||
*/
|
||||
@TableField("f_current_node_code")
|
||||
private String currentNodeCode;
|
||||
/**
|
||||
* 冻结审批,退回前的任务、经办的信息
|
||||
*/
|
||||
@TableField("f_reject_data_id")
|
||||
private String rejectDataId;
|
||||
/**
|
||||
* 子流程节点编码
|
||||
*/
|
||||
@TableField("f_sub_code")
|
||||
private String subCode;
|
||||
/**
|
||||
* 全局参数
|
||||
*/
|
||||
@TableField("f_global_parameter")
|
||||
private String globalParameter;
|
||||
/**
|
||||
* 是否能恢复(0:能,1:不能)
|
||||
*/
|
||||
@TableField("F_RESTORE")
|
||||
private Integer isRestore;
|
||||
/**
|
||||
* 是否归档(null:未配置,0:未归档,1:已归档)
|
||||
*/
|
||||
@TableField("F_IS_FILE")
|
||||
private Integer isFile;
|
||||
/**
|
||||
* 类型(0-功能 1-发起)
|
||||
*/
|
||||
@TableField("F_TYPE")
|
||||
private Integer type;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
package com.yunzhupaas.flowable.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.yunzhupaas.base.entity.SuperExtendEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 任务条件
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/8/23 17:27
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@TableName("workflow_task_line")
|
||||
public class TaskLineEntity extends SuperExtendEntity<String> {
|
||||
/**
|
||||
* 任务主键
|
||||
*/
|
||||
@TableField("F_TASK_ID")
|
||||
private String taskId;
|
||||
/**
|
||||
* 线的键
|
||||
*/
|
||||
@TableField("F_LINE_KEY")
|
||||
private String lineKey;
|
||||
/**
|
||||
* 线的值
|
||||
*/
|
||||
@TableField("F_LINE_VALUE")
|
||||
private String lineValue;
|
||||
}
|
||||
@@ -0,0 +1,97 @@
|
||||
package com.yunzhupaas.flowable.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("workflow_template")
|
||||
public class TemplateEntity extends SuperExtendEntity.SuperExtendDEEntity<String> {
|
||||
|
||||
/**
|
||||
* 流程主版本
|
||||
*/
|
||||
@TableField("F_FLOW_ID")
|
||||
private String flowId;
|
||||
/**
|
||||
* 流程主版本
|
||||
*/
|
||||
@TableField("F_VERSION")
|
||||
private String version;
|
||||
|
||||
/**
|
||||
* 流程编码
|
||||
*/
|
||||
@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;
|
||||
|
||||
/**
|
||||
* 流程设置
|
||||
*/
|
||||
@TableField("F_FLOW_CONFIG")
|
||||
private String flowConfig;
|
||||
|
||||
/**
|
||||
* 流程权限(1全局 2权限)
|
||||
*/
|
||||
@TableField("F_VISIBLE_TYPE")
|
||||
private Integer visibleType;
|
||||
|
||||
@TableField("F_FLOWABLE_ID")
|
||||
private String flowableId;
|
||||
@TableField("F_ACTIVITI_ID")
|
||||
private String activitiId;
|
||||
@TableField("F_CAMUNDA_ID")
|
||||
private String camundaId;
|
||||
|
||||
/**
|
||||
* 流程显示类型(0-全局 1-流程 2-菜单)
|
||||
*/
|
||||
@TableField("F_SHOW_TYPE")
|
||||
private Integer showType;
|
||||
/**
|
||||
* 状态(0.未上架,1.上架,2.下架-继续审批,3.下架-隐藏审批)
|
||||
*/
|
||||
@TableField("F_STATUS")
|
||||
private Integer status;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,66 @@
|
||||
package com.yunzhupaas.flowable.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("workflow_version")
|
||||
public class TemplateJsonEntity extends SuperExtendEntity<String> {
|
||||
|
||||
/**
|
||||
* 流程模板id
|
||||
*/
|
||||
@TableField("F_TEMPLATE_ID")
|
||||
private String templateId;
|
||||
|
||||
/**
|
||||
* 流程版本
|
||||
*/
|
||||
@TableField("F_VERSION")
|
||||
private String version;
|
||||
|
||||
/**
|
||||
* 状态(0.设计,1.启用,2.历史)
|
||||
*/
|
||||
@TableField("F_STATUS")
|
||||
private Integer state;
|
||||
|
||||
/**
|
||||
* 流程模板
|
||||
*/
|
||||
@TableField("F_XML")
|
||||
private String flowXml;
|
||||
|
||||
/**
|
||||
* flowable部署ID
|
||||
*/
|
||||
@TableField("f_flowable_id")
|
||||
private String flowableId;
|
||||
/**
|
||||
* activiti部署ID
|
||||
*/
|
||||
@TableField("f_activiti_id")
|
||||
private String activitiId;
|
||||
/**
|
||||
* camunda部署ID
|
||||
*/
|
||||
@TableField("f_camunda_id")
|
||||
private String camundaId;
|
||||
/**
|
||||
* 消息配置id
|
||||
*/
|
||||
@TableField("f_send_config_ids")
|
||||
private String sendConfigIds;
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
package com.yunzhupaas.flowable.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("workflow_node")
|
||||
public class TemplateNodeEntity extends SuperExtendEntity<String> {
|
||||
|
||||
/**
|
||||
* 流程版本主键
|
||||
*/
|
||||
@TableField("F_FLOW_ID")
|
||||
private String flowId;
|
||||
/**
|
||||
* 表单主键
|
||||
*/
|
||||
@TableField("f_form_id")
|
||||
private String formId;
|
||||
/**
|
||||
* 节点类型
|
||||
*/
|
||||
@TableField("f_node_type")
|
||||
private String nodeType;
|
||||
/**
|
||||
* 节点编码
|
||||
*/
|
||||
@TableField("f_node_code")
|
||||
private String nodeCode;
|
||||
/**
|
||||
* 节点属性
|
||||
*/
|
||||
@TableField("f_node_json")
|
||||
private String nodeJson;
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,72 @@
|
||||
package com.yunzhupaas.flowable.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.yunzhupaas.base.entity.SuperExtendEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/9/10 17:06
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@TableName("workflow_trigger_record")
|
||||
public class TriggerRecordEntity extends SuperExtendEntity<String> {
|
||||
/**
|
||||
* 触发主键
|
||||
*/
|
||||
@TableField("F_TRIGGER_ID")
|
||||
private String triggerId;
|
||||
/**
|
||||
* 任务主键
|
||||
*/
|
||||
@TableField("F_TASK_ID")
|
||||
private String taskId;
|
||||
/**
|
||||
* 节点id
|
||||
*/
|
||||
@TableField("F_NODE_ID")
|
||||
private String nodeId;
|
||||
/**
|
||||
* 节点编号
|
||||
*/
|
||||
@TableField("F_NODE_CODE")
|
||||
private String nodeCode;
|
||||
/**
|
||||
* 节点名称
|
||||
*/
|
||||
@TableField("F_NODE_NAME")
|
||||
private String nodeName;
|
||||
/**
|
||||
* 开始时间
|
||||
*/
|
||||
@TableField("F_START_TIME")
|
||||
private Date startTime;
|
||||
/**
|
||||
* 结束时间
|
||||
*/
|
||||
@TableField("F_END_TIME")
|
||||
private Date endTime;
|
||||
/**
|
||||
* 状态,0-通过 1-异常
|
||||
*/
|
||||
@TableField("F_STATUS")
|
||||
private Integer status;
|
||||
/**
|
||||
* 错误提示
|
||||
*/
|
||||
@TableField("F_ERROR_TIP")
|
||||
private String errorTip;
|
||||
/**
|
||||
* 错误数据
|
||||
*/
|
||||
@TableField("F_ERROR_DATA")
|
||||
private String errorData;
|
||||
}
|
||||
@@ -0,0 +1,93 @@
|
||||
package com.yunzhupaas.flowable.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.yunzhupaas.base.entity.SuperExtendEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 触发任务
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/9/10 16:52
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@TableName("workflow_trigger_task")
|
||||
public class TriggerTaskEntity extends SuperExtendEntity<String> {
|
||||
/**
|
||||
* 标题
|
||||
*/
|
||||
@TableField("F_FULL_NAME")
|
||||
private String fullName;
|
||||
/**
|
||||
* 重试任务开始时间
|
||||
*/
|
||||
@TableField("F_PARENT_TIME")
|
||||
private Date parentTime;
|
||||
/**
|
||||
* 重试任务主键id
|
||||
*/
|
||||
@TableField("F_PARENT_ID")
|
||||
private String parentId;
|
||||
/**
|
||||
* 标准任务主键
|
||||
*/
|
||||
@TableField("F_TASK_ID")
|
||||
private String taskId;
|
||||
/**
|
||||
* 节点编码
|
||||
*/
|
||||
@TableField("F_NODE_CODE")
|
||||
private String nodeCode;
|
||||
/**
|
||||
* 节点id
|
||||
*/
|
||||
@TableField("F_NODE_ID")
|
||||
private String nodeId;
|
||||
/**
|
||||
* 同步异步
|
||||
*/
|
||||
@TableField("F_IS_ASYNC")
|
||||
private Integer isAsync;
|
||||
/**
|
||||
* 开始时间
|
||||
*/
|
||||
@TableField("F_START_TIME")
|
||||
private Date startTime;
|
||||
/**
|
||||
* 模板id
|
||||
*/
|
||||
@TableField("F_FLOW_ID")
|
||||
private String flowId;
|
||||
/**
|
||||
* 数据
|
||||
*/
|
||||
@TableField("F_DATA")
|
||||
private String data;
|
||||
/**
|
||||
* 数据主键
|
||||
*/
|
||||
@TableField("F_DATA_ID")
|
||||
private String dataId;
|
||||
/**
|
||||
* 引擎主键
|
||||
*/
|
||||
@TableField("F_INSTANCE_ID")
|
||||
private String instanceId;
|
||||
/**
|
||||
* 流程引擎类型;1.flowable,2,activity,3.camunda
|
||||
*/
|
||||
@TableField("F_ENGINE_TYPE")
|
||||
private Integer engineType;
|
||||
/**
|
||||
* 状态
|
||||
*/
|
||||
@TableField("F_STATUS")
|
||||
private Integer status;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
package com.yunzhupaas.flowable.enums;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* 分流规则(网关类型)
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/19 9:21
|
||||
*/
|
||||
@Getter
|
||||
public enum DivideRuleEnum {
|
||||
/**
|
||||
* 根据条件多分支流转(包容网关)
|
||||
*/
|
||||
INCLUSION("inclusion"),
|
||||
/**
|
||||
* 根据条件单分支流转(排它网关)
|
||||
*/
|
||||
EXCLUSIVE("exclusive"),
|
||||
/**
|
||||
* 所有分支都流转(并行网关)
|
||||
*/
|
||||
PARALLEL("parallel"),
|
||||
/**
|
||||
* 选择分支
|
||||
*/
|
||||
CHOOSE("choose");
|
||||
|
||||
private final String type;
|
||||
|
||||
DivideRuleEnum(String type) {
|
||||
this.type = type;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
package com.yunzhupaas.flowable.enums;
|
||||
|
||||
/**
|
||||
* 异常规则
|
||||
*
|
||||
* @author :云筑产品开发平台组
|
||||
* @version: V3.1.0
|
||||
* @copyright 深圳市乐程软件有限公司
|
||||
* @date :2022/6/17 10:57
|
||||
*/
|
||||
public enum ErrorRuleEnum {
|
||||
/**
|
||||
* 1.超级管理员
|
||||
*/
|
||||
administrator(1, "超级管理员"),
|
||||
/**
|
||||
* 2.指定人员
|
||||
*/
|
||||
initiator(2, "指定人员"),
|
||||
/**
|
||||
* 3.上一节点审批人指定处理人
|
||||
*/
|
||||
node(3, "上一节点审批人指定处理人"),
|
||||
/**
|
||||
* 4.默认审批通过
|
||||
*/
|
||||
pass(4, "默认审批通过"),
|
||||
/**
|
||||
* 5.无法提交
|
||||
*/
|
||||
notSubmit(5, "无法提交"),
|
||||
/**
|
||||
* 6.发起者本人处理
|
||||
*/
|
||||
creatorUserId(6, "发起者本人处理");
|
||||
|
||||
private int code;
|
||||
private String message;
|
||||
|
||||
ErrorRuleEnum(int code, String message) {
|
||||
this.code = code;
|
||||
this.message = message;
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据状态code获取枚举名称
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public static ErrorRuleEnum getByCode(Integer code) {
|
||||
for (ErrorRuleEnum status : ErrorRuleEnum.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;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,85 @@
|
||||
package com.yunzhupaas.flowable.enums;
|
||||
|
||||
/**
|
||||
* 附件条件
|
||||
*
|
||||
* @author :云筑产品开发平台组
|
||||
* @version: V3.1.0
|
||||
* @copyright 深圳市乐程软件有限公司
|
||||
* @date :2022/6/14 16:50
|
||||
*/
|
||||
public enum ExtraRuleEnum {
|
||||
/**
|
||||
* 无条件
|
||||
*/
|
||||
unconditional(1, "无条件"),
|
||||
/**
|
||||
* 同一部门
|
||||
*/
|
||||
organize(2, "同一部门"),
|
||||
/**
|
||||
* 同一岗位
|
||||
*/
|
||||
position(3, "同一岗位"),
|
||||
/**
|
||||
* 发起人上级
|
||||
*/
|
||||
manager(4, "发起人上级"),
|
||||
/**
|
||||
* 发起人下属
|
||||
*/
|
||||
subordinate(5, "发起人下属"),
|
||||
/**
|
||||
* 同一公司
|
||||
*/
|
||||
department(6, "同一公司"),
|
||||
/**
|
||||
* 同一角色
|
||||
*/
|
||||
role(7, "同一角色"),
|
||||
/**
|
||||
* 同一分组
|
||||
*/
|
||||
group(8, "同一分组");
|
||||
|
||||
private int code;
|
||||
private String message;
|
||||
|
||||
ExtraRuleEnum(int code, String message) {
|
||||
this.code = code;
|
||||
this.message = message;
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据状态code获取枚举名称
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public static ExtraRuleEnum getByCode(Integer code) {
|
||||
for (ExtraRuleEnum status : ExtraRuleEnum.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;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,46 @@
|
||||
package com.yunzhupaas.flowable.enums;
|
||||
|
||||
/**
|
||||
* 消息类型
|
||||
*
|
||||
* @author 云筑产品开发平台组
|
||||
* @version V3.1.0
|
||||
* @copyright 深圳市乐程软件有限公司
|
||||
* @date 2024-09-29 上午9:18
|
||||
*/
|
||||
public enum FlowMessageEnum {
|
||||
//发起
|
||||
me(1, "me"),
|
||||
//待签
|
||||
sign(2, "sign"),
|
||||
//待办
|
||||
doing(3, "doing"),
|
||||
//抄送
|
||||
circulate(4, "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;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,71 @@
|
||||
package com.yunzhupaas.flowable.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;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,99 @@
|
||||
package com.yunzhupaas.flowable.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;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,96 @@
|
||||
package com.yunzhupaas.flowable.enums;
|
||||
|
||||
public enum NodeEnum {
|
||||
/**
|
||||
* 开始
|
||||
*/
|
||||
start("start"),
|
||||
/**
|
||||
* 结束
|
||||
*/
|
||||
end("end"),
|
||||
/**
|
||||
* 全局
|
||||
*/
|
||||
global("global"),
|
||||
/**
|
||||
* 子流程
|
||||
*/
|
||||
subFlow("subFlow"),
|
||||
/**
|
||||
* 线
|
||||
*/
|
||||
connect("connect"),
|
||||
/**
|
||||
* 审批
|
||||
*/
|
||||
approver("approver"),
|
||||
/**
|
||||
* 办理
|
||||
*/
|
||||
processing("processing"),
|
||||
/**
|
||||
* 触发事件
|
||||
*/
|
||||
trigger("trigger"),
|
||||
/**
|
||||
* 事件触发
|
||||
*/
|
||||
eventTrigger("eventTrigger"),
|
||||
/**
|
||||
* 定时触发
|
||||
*/
|
||||
timeTrigger("timeTrigger"),
|
||||
/**
|
||||
* 通知触发
|
||||
*/
|
||||
noticeTrigger("noticeTrigger"),
|
||||
/**
|
||||
* webhook触发
|
||||
*/
|
||||
webhookTrigger("webhookTrigger"),
|
||||
/**
|
||||
* 获取数据
|
||||
*/
|
||||
getData("getData"),
|
||||
/**
|
||||
* 新增数据
|
||||
*/
|
||||
addData("addData"),
|
||||
/**
|
||||
* 更新数据
|
||||
*/
|
||||
updateData("updateData"),
|
||||
/**
|
||||
* 删除数据
|
||||
*/
|
||||
deleteData("deleteData"),
|
||||
/**
|
||||
* 数据接口
|
||||
*/
|
||||
dataInterface("dataInterface"),
|
||||
/**
|
||||
* 消息通知
|
||||
*/
|
||||
message("message"),
|
||||
/**
|
||||
* 发起审批
|
||||
*/
|
||||
launchFlow("launchFlow"),
|
||||
/**
|
||||
* 创建日程
|
||||
*/
|
||||
schedule("schedule");
|
||||
|
||||
private final String type;
|
||||
|
||||
NodeEnum(String type) {
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
public String getType() {
|
||||
return type;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
package com.yunzhupaas.flowable.enums;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* 经办类型
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/23 17:23
|
||||
*/
|
||||
@Getter
|
||||
public enum OperatorStateEnum {
|
||||
|
||||
// 待去除
|
||||
WaitSign(0, "待签收"),
|
||||
|
||||
Runing(1, "流转中"),
|
||||
|
||||
AddSign(2, "加签"),
|
||||
|
||||
Transfer(3, "转审"),
|
||||
|
||||
Assigned(4, "指派"),
|
||||
|
||||
Back(5, "退回"),
|
||||
|
||||
Recall(6, "撤回"),
|
||||
|
||||
Assist(7, "协办"),
|
||||
|
||||
Revoke(8, "撤销"),
|
||||
|
||||
TransferProcessing(9, "转办"),
|
||||
|
||||
// 无用节点
|
||||
Futility(-1, "无用节点"),
|
||||
// 用于嵌入的任务流程
|
||||
Waiting(-2, "未激活");
|
||||
|
||||
private Integer code;
|
||||
private String message;
|
||||
|
||||
OperatorStateEnum(Integer code, String message) {
|
||||
this.code = code;
|
||||
this.message = message;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,69 @@
|
||||
package com.yunzhupaas.flowable.enums;
|
||||
|
||||
/**
|
||||
* 打印条件
|
||||
*
|
||||
* @author :云筑产品开发平台组
|
||||
* @version: V3.1.0
|
||||
* @copyright 深圳市乐程软件有限公司
|
||||
* @date :2022/6/14 16:50
|
||||
*/
|
||||
public enum PrintEnum {
|
||||
/**
|
||||
* 不限制
|
||||
*/
|
||||
unconditional(1, "不限制"),
|
||||
/**
|
||||
* 节点结束
|
||||
*/
|
||||
nodeEnd(2, "节点结束"),
|
||||
/**
|
||||
* 流程结束
|
||||
*/
|
||||
flowEnd(3, "流程结束"),
|
||||
/**
|
||||
* 条件设置
|
||||
*/
|
||||
conditions(4, "条件设置");
|
||||
|
||||
private int code;
|
||||
private String message;
|
||||
|
||||
PrintEnum(int code, String message) {
|
||||
this.code = code;
|
||||
this.message = message;
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据状态code获取枚举名称
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public static PrintEnum getByCode(Integer code) {
|
||||
for (PrintEnum status : PrintEnum.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;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,60 @@
|
||||
package com.yunzhupaas.flowable.enums;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/26 17:32
|
||||
*/
|
||||
@Getter
|
||||
public enum RecordEnum {
|
||||
// 拒绝
|
||||
reject(0, "拒绝"),
|
||||
// 同意
|
||||
audit(1, "同意"),
|
||||
// 提交
|
||||
submit(2, "提交"),
|
||||
// 退回
|
||||
back(3, "退回"),
|
||||
// 撤回
|
||||
recall(4, "撤回"),
|
||||
// 加签
|
||||
addSign(5, "加签"),
|
||||
// 减签
|
||||
subtractSign(6, "减签"),
|
||||
// 转审
|
||||
transfer(7, "转审"),
|
||||
// 暂停
|
||||
pause(8, "暂停"),
|
||||
// 重启
|
||||
reboot(9, "重启"),
|
||||
// 复活
|
||||
activate(10, "复活"),
|
||||
// 指派
|
||||
assign(11, "指派"),
|
||||
// 催办
|
||||
press(12, "催办"),
|
||||
// 协办
|
||||
assist(13, "协办"),
|
||||
// 撤销
|
||||
revoke(14, "撤销"),
|
||||
// 终止
|
||||
cancel(15, "终止"),
|
||||
|
||||
auditRevoke(16, "同意撤销"),
|
||||
|
||||
rejectRevoke(17, "拒绝撤销"),
|
||||
|
||||
transferProcessing(18, "转办");
|
||||
|
||||
private Integer code;
|
||||
private String message;
|
||||
|
||||
RecordEnum(Integer code, String message) {
|
||||
this.code = code;
|
||||
this.message = message;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
package com.yunzhupaas.flowable.enums;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* 任务状态枚举
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/17 19:03
|
||||
*/
|
||||
@Getter
|
||||
public enum TaskStatusEnum {
|
||||
/**
|
||||
* 待提交
|
||||
*/
|
||||
TO_BE_SUBMIT(0, "待提交"),
|
||||
/**
|
||||
* 进行中
|
||||
*/
|
||||
RUNNING(1, "进行中"),
|
||||
/**
|
||||
* 已通过
|
||||
*/
|
||||
PASSED(2, "已通过"),
|
||||
/**
|
||||
* 已拒绝
|
||||
*/
|
||||
REJECTED(3, "已拒绝"),
|
||||
/**
|
||||
* 已终止
|
||||
*/
|
||||
CANCEL(4, "已终止"),
|
||||
/**
|
||||
* 已暂停
|
||||
*/
|
||||
PAUSED(5, "已暂停"),
|
||||
/**
|
||||
* 撤销中
|
||||
*/
|
||||
REVOKING(6, "撤销中"),
|
||||
/**
|
||||
* 已撤销
|
||||
*/
|
||||
REVOKED(7, "已撤销"),
|
||||
/**
|
||||
* 已退回
|
||||
*/
|
||||
BACKED(8, "已退回"),
|
||||
/**
|
||||
* 已撤回
|
||||
*/
|
||||
RECALL(9, "已撤回"),
|
||||
/**
|
||||
* 异常
|
||||
*/
|
||||
EXCEPTION(10, "异常");
|
||||
|
||||
private final Integer code;
|
||||
private final String message;
|
||||
|
||||
TaskStatusEnum(int code, String message) {
|
||||
this.code = code;
|
||||
this.message = message;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package com.yunzhupaas.flowable.enums;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/9/11 9:20
|
||||
*/
|
||||
@Getter
|
||||
public enum TriggerRecordEnum {
|
||||
/**
|
||||
* 通过
|
||||
*/
|
||||
PASSED(0, "通过"),
|
||||
/**
|
||||
* 异常
|
||||
*/
|
||||
EXCEPTION(1, "异常");
|
||||
|
||||
private final Integer code;
|
||||
private final String message;
|
||||
|
||||
TriggerRecordEnum(int code, String message) {
|
||||
this.code = code;
|
||||
this.message = message;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
package com.yunzhupaas.flowable.model.candidates;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/18 21:17
|
||||
*/
|
||||
@Data
|
||||
public class CandidateCheckFo {
|
||||
String flowId;
|
||||
Map<String, Object> formData = new HashMap<>();
|
||||
// 1.同意 0.拒绝
|
||||
Integer handleStatus = 1;
|
||||
// 任务主键
|
||||
String id;
|
||||
|
||||
String delegateUser;
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
package com.yunzhupaas.flowable.model.candidates;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/19 10:24
|
||||
*/
|
||||
@Data
|
||||
public class CandidateCheckVo implements Serializable {
|
||||
@Schema(description = "节点")
|
||||
private List<CandidateListModel> list = new ArrayList<>();
|
||||
/**
|
||||
* 1.有分支 //2.没有分支有候选人 //3.没有分支也没有候选人
|
||||
*/
|
||||
private Integer type = 3;
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
package com.yunzhupaas.flowable.model.candidates;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/19 10:22
|
||||
*/
|
||||
@Data
|
||||
public class CandidateListModel implements Serializable {
|
||||
@Schema(description = "节点编码")
|
||||
private String nodeCode;
|
||||
@Schema(description = "节点名称")
|
||||
private String nodeName;
|
||||
@Schema(description = "是否候选人")
|
||||
private Boolean isCandidates = false;
|
||||
@Schema(description = "是否有候选人")
|
||||
private Boolean hasCandidates = false;
|
||||
@Schema(description = "已经选择的候选人")
|
||||
private String selected;
|
||||
@Schema(description = "是否选择分支")
|
||||
private Boolean isBranchFlow = false;
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
package com.yunzhupaas.flowable.model.candidates;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import com.yunzhupaas.base.Pagination;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/20 11:06
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class CandidateUserFo extends Pagination {
|
||||
/**
|
||||
* 版本主键
|
||||
*/
|
||||
@Schema(description = "版本主键")
|
||||
private String flowId;
|
||||
/**
|
||||
* 节点编码
|
||||
*/
|
||||
@Schema(description = "节点编码")
|
||||
private String nodeCode;
|
||||
/**
|
||||
* 委托人
|
||||
*/
|
||||
@Schema(description = "委托人")
|
||||
private String delegateUser;
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
package com.yunzhupaas.flowable.model.candidates;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/20 11:06
|
||||
*/
|
||||
@Data
|
||||
public class CandidateUserVo implements Serializable {
|
||||
@Schema(description = "主键")
|
||||
private String id;
|
||||
@Schema(description = "名称")
|
||||
private String fullName;
|
||||
@Schema(description = "头像")
|
||||
private String headIcon;
|
||||
@Schema(description = "组织")
|
||||
private String organize;
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
package com.yunzhupaas.flowable.model.candidates;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/18 15:58
|
||||
*/
|
||||
@Data
|
||||
public class CandidatesVo implements Serializable {
|
||||
/**
|
||||
* 节点id
|
||||
*/
|
||||
@Schema(description = "节点id")
|
||||
private String nodeId;
|
||||
/**
|
||||
* 任务id
|
||||
*/
|
||||
@Schema(description = "任务id")
|
||||
private String taskId;
|
||||
/**
|
||||
* 审批人id
|
||||
*/
|
||||
@Schema(description = "审批人id")
|
||||
private String handleId;
|
||||
/**
|
||||
* 审批人账号
|
||||
*/
|
||||
@Schema(description = "审批人账号")
|
||||
private String account;
|
||||
/**
|
||||
* 候选人
|
||||
*/
|
||||
@Schema(description = "候选人")
|
||||
private String candidates;
|
||||
/**
|
||||
* 经办主键
|
||||
*/
|
||||
@Schema(description = "经办主键")
|
||||
private String operatorId;
|
||||
/**
|
||||
* 审批类型(1-候选人 2-异常处理人)
|
||||
*/
|
||||
@Schema(description = "审批类型(1-候选人 2-异常处理人)")
|
||||
private Integer type;
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package com.yunzhupaas.flowable.model.comment;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 版本: V3.1.0
|
||||
* 版权: 深圳市乐程软件有限公司
|
||||
* 作者: 云筑产品开发平台组
|
||||
*/
|
||||
@Data
|
||||
public class CommentCrForm {
|
||||
|
||||
@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;
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
package com.yunzhupaas.flowable.model.comment;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 版本: V3.1.0
|
||||
* 版权: 深圳市乐程软件有限公司
|
||||
* 作者: 云筑产品开发平台组
|
||||
*/
|
||||
@Data
|
||||
public class CommentInfoVO extends CommentCrForm{
|
||||
|
||||
@Schema(description = "主键")
|
||||
private String id;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,57 @@
|
||||
package com.yunzhupaas.flowable.model.comment;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 版本: V3.1.0
|
||||
* 版权: 深圳市乐程软件有限公司
|
||||
* 作者: 云筑产品开发平台组
|
||||
*/
|
||||
@Data
|
||||
public class CommentListVO {
|
||||
|
||||
@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;
|
||||
|
||||
@Schema(description = "是否删除")
|
||||
private Integer isDel;
|
||||
|
||||
@Schema(description = "主键")
|
||||
private String id;
|
||||
|
||||
@Schema(description = "评论id")
|
||||
private String replyId;
|
||||
|
||||
@Schema(description = "评论删除")
|
||||
private Integer deleteShow;
|
||||
|
||||
@Schema(description = "评论内容")
|
||||
private String replyText;
|
||||
|
||||
@Schema(description = "评论用户")
|
||||
private String replyUser;
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
package com.yunzhupaas.flowable.model.comment;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import com.yunzhupaas.base.Pagination;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 版本: V3.1.0
|
||||
* 版权: 深圳市乐程软件有限公司
|
||||
* 作者: 云筑产品开发平台组
|
||||
*/
|
||||
@Data
|
||||
public class CommentPagination extends Pagination {
|
||||
|
||||
@Schema(description = "任务主键")
|
||||
private String taskId;
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
package com.yunzhupaas.flowable.model.delegate;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author 云筑产品开发平台组
|
||||
* @version V3.1.0
|
||||
* @copyright 深圳市乐程软件有限公司
|
||||
* @date 2024/3/15 9:18
|
||||
*/
|
||||
@Data
|
||||
public class DelegateCrForm {
|
||||
@Schema(description = "委托人名称")
|
||||
private String userName;
|
||||
@Schema(description = "委托人id")
|
||||
private String userId;
|
||||
/**
|
||||
* 委托人id集合
|
||||
*/
|
||||
private List<String> userIdList = new ArrayList<>();
|
||||
@Schema(description = "被委托人")
|
||||
@NotBlank(message = "必填")
|
||||
private String toUserName;
|
||||
@Schema(description = "被委托人id")
|
||||
private List<String> toUserId = new ArrayList<>();
|
||||
@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;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
package com.yunzhupaas.flowable.model.delegate;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/9/2 16:31
|
||||
*/
|
||||
@Data
|
||||
public class DelegateInfoModel {
|
||||
@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 Date startTime;
|
||||
@Schema(description = "结束日期")
|
||||
private Date endTime;
|
||||
@Schema(description = "委托流程id")
|
||||
private String flowId;
|
||||
@Schema(description = "委托流程名称")
|
||||
private String flowName;
|
||||
@Schema(description = "有效标志")
|
||||
private Integer enabledMark;
|
||||
@Schema(description = "状态")
|
||||
private Integer status;
|
||||
@Schema(description = "确认状态")
|
||||
private Integer confirmStatus;
|
||||
@Schema(description = "委托id")
|
||||
private String delegateId;
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
package com.yunzhupaas.flowable.model.delegate;
|
||||
|
||||
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 DelegateInfoVO {
|
||||
@Schema(description = "主键id")
|
||||
private String id;
|
||||
@Schema(description = "委托类型0-发起委托,1-审批委托")
|
||||
private Integer 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 List<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;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,51 @@
|
||||
package com.yunzhupaas.flowable.model.delegate;
|
||||
|
||||
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 DelegateListVO {
|
||||
@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;
|
||||
/**
|
||||
* 生效状态,0.未生效 1.生效中 2.已失效
|
||||
*/
|
||||
private Integer status;
|
||||
/**
|
||||
* 确认状态,0.待确认 1.已接受 2.已拒绝
|
||||
*/
|
||||
private Integer confirmStatus;
|
||||
/**
|
||||
* 是否可编辑
|
||||
*/
|
||||
private Boolean isEdit = true;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
package com.yunzhupaas.flowable.model.delegate;
|
||||
|
||||
import com.yunzhupaas.base.Pagination;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/5/13 17:35
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class DelegatePagination extends Pagination {
|
||||
/**
|
||||
* 1.我的委托 2.委托给我 3.我的代理 4.代理给我
|
||||
*/
|
||||
private Integer type;
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
package com.yunzhupaas.flowable.model.delegate;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @author 云筑产品开发平台组
|
||||
* @version V3.1.0
|
||||
* @copyright 深圳市乐程软件有限公司
|
||||
* @date 2024/3/15 9:18
|
||||
*/
|
||||
@Data
|
||||
public class DelegateUpForm extends DelegateCrForm {
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
package com.yunzhupaas.flowable.model.flowable;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/5/8 20:12
|
||||
*/
|
||||
@Data
|
||||
public class AfterFo {
|
||||
/**
|
||||
* 部署ID
|
||||
*/
|
||||
private String deploymentId;
|
||||
/**
|
||||
* 节点Key
|
||||
*/
|
||||
private List<String> taskKeys = new ArrayList<>();
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
package com.yunzhupaas.flowable.model.flowable;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/5/8 9:13
|
||||
*/
|
||||
@Data
|
||||
public class BackFo {
|
||||
/**
|
||||
* 任务ID
|
||||
*/
|
||||
@Schema(name = "taskId", description = "任务ID")
|
||||
private String taskId;
|
||||
/**
|
||||
* 目标节点ID
|
||||
*/
|
||||
@Schema(name = "targetKey", description = "目标节点ID")
|
||||
private String targetKey;
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.yunzhupaas.flowable.model.flowable;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/6/4 15:59
|
||||
*/
|
||||
@Data
|
||||
public class CompensateFo {
|
||||
/**
|
||||
* 实例主键
|
||||
*/
|
||||
private String instanceId;
|
||||
/**
|
||||
* 原先的节点
|
||||
*/
|
||||
private List<String> source;
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
package com.yunzhupaas.flowable.model.flowable;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/5/9 9:53
|
||||
*/
|
||||
@Data
|
||||
public class CompleteFo {
|
||||
/**
|
||||
* 任务ID
|
||||
*/
|
||||
@Schema(name = "taskId", description = "任务ID")
|
||||
private String taskId;
|
||||
/**
|
||||
* 变量
|
||||
*/
|
||||
@Schema(name = "variables", description = "变量")
|
||||
private Map<String, Object> variables;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.yunzhupaas.flowable.model.flowable;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class FlowAbleData {
|
||||
/**
|
||||
* 部署ID
|
||||
*/
|
||||
private String deploymentId;
|
||||
/**
|
||||
* 实例ID
|
||||
*/
|
||||
private String instanceId;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
package com.yunzhupaas.flowable.model.flowable;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class FlowAbleForm {
|
||||
private String bpmnXml;
|
||||
private String key;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
package com.yunzhupaas.flowable.model.flowable;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class FlowAbleModel {
|
||||
private Boolean success = false;
|
||||
private Object data = new Object();
|
||||
private String msg;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,414 @@
|
||||
package com.yunzhupaas.flowable.model.flowable;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
||||
import com.yunzhupaas.config.ConfigValueUtil;
|
||||
import com.yunzhupaas.constant.MsgCode;
|
||||
import com.yunzhupaas.exception.WorkFlowException;
|
||||
import com.yunzhupaas.util.JsonUtil;
|
||||
import com.yunzhupaas.util.StringUtil;
|
||||
import com.yunzhupaas.util.UserProvider;
|
||||
import com.yunzhupaas.util.wxutil.HttpUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.net.URLDecoder;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@Slf4j
|
||||
@Component
|
||||
public class FlowAbleUrl {
|
||||
|
||||
@Autowired
|
||||
private ConfigValueUtil configValueUtil;
|
||||
|
||||
public String deployFlowAble(String flowXml, String key) throws WorkFlowException {
|
||||
String url = getFlowAbleUrl() + "/api/Flow/definition/deploy";
|
||||
FlowAbleForm flowAbleForm = new FlowAbleForm();
|
||||
flowAbleForm.setKey(key);
|
||||
try {
|
||||
flowAbleForm.setBpmnXml(URLDecoder.decode(flowXml, Constants.UTF_8));
|
||||
} catch (Exception e) {
|
||||
flowAbleForm.setBpmnXml(flowXml);
|
||||
}
|
||||
JSONObject jsonObject = HttpUtil.httpRequest(url, "POST", JsonUtil.getObjectToString(flowAbleForm), UserProvider.getToken());
|
||||
FlowAbleModel flowAbleModel = JsonUtil.getJsonToBean(jsonObject, FlowAbleModel.class);
|
||||
if (null == flowAbleModel) {
|
||||
log.error(MsgCode.WF090.get());
|
||||
throw new WorkFlowException(MsgCode.WF142.get());
|
||||
}
|
||||
if (!flowAbleModel.getSuccess()) {
|
||||
throw new WorkFlowException(flowAbleModel.getMsg());
|
||||
}
|
||||
FlowAbleData data = JsonUtil.getJsonToBean(flowAbleModel.getData(), FlowAbleData.class);
|
||||
return data.getDeploymentId();
|
||||
}
|
||||
|
||||
private String getFlowAbleUrl() {
|
||||
return configValueUtil.getFlowDomain();
|
||||
}
|
||||
|
||||
/**
|
||||
* 启动流程实例
|
||||
*
|
||||
* @param deploymentId 引擎部署ID
|
||||
* @param variables 变量
|
||||
*/
|
||||
public String startInstance(String deploymentId, Map<String, Object> variables) throws WorkFlowException {
|
||||
String url = getFlowAbleUrl() + "/api/Flow/instance/start";
|
||||
InstanceStartFo fo = new InstanceStartFo();
|
||||
fo.setDeploymentId(deploymentId);
|
||||
fo.setVariables(variables);
|
||||
JSONObject jsonObject = HttpUtil.httpRequest(url, "POST", JsonUtil.getObjectToString(fo), UserProvider.getToken());
|
||||
FlowAbleModel flowAbleModel = JsonUtil.getJsonToBean(jsonObject, FlowAbleModel.class);
|
||||
if (null == flowAbleModel) {
|
||||
log.error(MsgCode.WF091.get());
|
||||
throw new WorkFlowException(MsgCode.WF142.get());
|
||||
}
|
||||
if (!flowAbleModel.getSuccess()) {
|
||||
throw new WorkFlowException(flowAbleModel.getMsg());
|
||||
}
|
||||
FlowAbleData data = JsonUtil.getJsonToBean(flowAbleModel.getData(), FlowAbleData.class);
|
||||
return data.getInstanceId();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取当前任务
|
||||
*
|
||||
* @param instanceId 引擎实例ID
|
||||
*/
|
||||
public List<FlowableTaskModel> getCurrentTask(String instanceId) throws WorkFlowException {
|
||||
String url = getFlowAbleUrl() + "/api/Flow/task/list/" + instanceId;
|
||||
JSONObject jsonObject = HttpUtil.httpRequest(url, "GET", null, UserProvider.getToken());
|
||||
FlowAbleModel flowAbleModel = JsonUtil.getJsonToBean(jsonObject, FlowAbleModel.class);
|
||||
if (null == flowAbleModel) {
|
||||
log.error(MsgCode.WF092.get());
|
||||
throw new WorkFlowException(MsgCode.WF142.get());
|
||||
}
|
||||
if (!flowAbleModel.getSuccess()) {
|
||||
throw new WorkFlowException(flowAbleModel.getMsg());
|
||||
}
|
||||
return JsonUtil.getJsonToList(flowAbleModel.getData(), FlowableTaskModel.class);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除流程实例
|
||||
*
|
||||
* @param instanceId 实例ID
|
||||
* @param deleteReason 删除原因
|
||||
*/
|
||||
public void deleteInstance(String instanceId, String deleteReason) throws WorkFlowException {
|
||||
String url = getFlowAbleUrl() + "/api/Flow/instance?instanceId=" + instanceId;
|
||||
if (StringUtil.isNotEmpty(deleteReason)) {
|
||||
url += "&deleteReason=" + deleteReason;
|
||||
}
|
||||
JSONObject jsonObject = HttpUtil.httpRequest(url, "DELETE", null, UserProvider.getToken());
|
||||
FlowAbleModel flowAbleModel = JsonUtil.getJsonToBean(jsonObject, FlowAbleModel.class);
|
||||
if (null == flowAbleModel || !flowAbleModel.getSuccess()) {
|
||||
log.error("流程实例删除异常: {}", flowAbleModel);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取出线Key集合
|
||||
*
|
||||
* @param fo 参数类
|
||||
*/
|
||||
public List<String> getOutgoingFlows(OutgoingFlowsFo fo) throws WorkFlowException {
|
||||
String url = getFlowAbleUrl() + "/api/Flow/task/outgoing/flows";
|
||||
if (StringUtil.isNotEmpty(fo.getTaskId())) {
|
||||
url += "?taskId=" + fo.getTaskId();
|
||||
} else {
|
||||
url += "?deploymentId=" + fo.getDeploymentId() + "&taskKey=" + fo.getTaskKey();
|
||||
}
|
||||
JSONObject jsonObject = HttpUtil.httpRequest(url, "GET", null, UserProvider.getToken());
|
||||
FlowAbleModel flowAbleModel = JsonUtil.getJsonToBean(jsonObject, FlowAbleModel.class);
|
||||
if (null == flowAbleModel) {
|
||||
log.error(MsgCode.WF094.get());
|
||||
throw new WorkFlowException(MsgCode.WF142.get());
|
||||
}
|
||||
if (!flowAbleModel.getSuccess()) {
|
||||
throw new WorkFlowException(flowAbleModel.getMsg());
|
||||
}
|
||||
return JsonUtil.getJsonToList(flowAbleModel.getData(), String.class);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取线之后的任务节点
|
||||
*
|
||||
* @param deploymentId 部署id
|
||||
* @param flowKey 连接线的Key
|
||||
*/
|
||||
public List<String> getTaskKeyAfterFlow(String deploymentId, String flowKey) throws WorkFlowException {
|
||||
String url = getFlowAbleUrl() + "/api/Flow/task/flow/target?deploymentId=" + deploymentId + "&flowKey=" + flowKey;
|
||||
JSONObject jsonObject = HttpUtil.httpRequest(url, "GET", null, UserProvider.getToken());
|
||||
FlowAbleModel flowAbleModel = JsonUtil.getJsonToBean(jsonObject, FlowAbleModel.class);
|
||||
if (null == flowAbleModel) {
|
||||
log.error(MsgCode.WF095.get());
|
||||
throw new WorkFlowException(MsgCode.WF142.get());
|
||||
}
|
||||
if (!flowAbleModel.getSuccess()) {
|
||||
throw new WorkFlowException(flowAbleModel.getMsg());
|
||||
}
|
||||
return JsonUtil.getJsonToList(flowAbleModel.getData(), String.class);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取下一级任务节点集合
|
||||
*
|
||||
* @param fo 参数类
|
||||
*/
|
||||
public List<FlowableNodeModel> getNext(NextOrPrevFo fo) throws WorkFlowException {
|
||||
String url = getFlowAbleUrl() + "/api/Flow/task/next";
|
||||
if (StringUtil.isNotEmpty(fo.getTaskId())) {
|
||||
url += "?taskId=" + fo.getTaskId();
|
||||
} else {
|
||||
url += "?deploymentId=" + fo.getDeploymentId() + "&taskKey=" + fo.getTaskKey();
|
||||
}
|
||||
JSONObject jsonObject = HttpUtil.httpRequest(url, "GET", null, UserProvider.getToken());
|
||||
FlowAbleModel flowAbleModel = JsonUtil.getJsonToBean(jsonObject, FlowAbleModel.class);
|
||||
if (null == flowAbleModel) {
|
||||
log.error(MsgCode.WF096.get());
|
||||
throw new WorkFlowException(MsgCode.WF142.get());
|
||||
}
|
||||
if (!flowAbleModel.getSuccess()) {
|
||||
throw new WorkFlowException(flowAbleModel.getMsg());
|
||||
}
|
||||
return JsonUtil.getJsonToList(flowAbleModel.getData(), FlowableNodeModel.class);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取上一级任务节点id集合
|
||||
*
|
||||
* @param fo 参数类
|
||||
*/
|
||||
public List<String> getPrev(NextOrPrevFo fo) throws WorkFlowException {
|
||||
String url = getFlowAbleUrl() + "/api/Flow/task/prev";
|
||||
if (StringUtil.isNotEmpty(fo.getTaskId())) {
|
||||
url += "?taskId=" + fo.getTaskId();
|
||||
} else {
|
||||
url += "?deploymentId=" + fo.getDeploymentId() + "&taskKey=" + fo.getTaskKey();
|
||||
}
|
||||
JSONObject jsonObject = HttpUtil.httpRequest(url, "GET", null, UserProvider.getToken());
|
||||
FlowAbleModel flowAbleModel = JsonUtil.getJsonToBean(jsonObject, FlowAbleModel.class);
|
||||
if (null == flowAbleModel) {
|
||||
log.error(MsgCode.WF097.get());
|
||||
throw new WorkFlowException(MsgCode.WF142.get());
|
||||
}
|
||||
if (!flowAbleModel.getSuccess()) {
|
||||
throw new WorkFlowException(flowAbleModel.getMsg());
|
||||
}
|
||||
return JsonUtil.getJsonToList(flowAbleModel.getData(), String.class);
|
||||
}
|
||||
|
||||
/**
|
||||
* 完成流程任务
|
||||
*
|
||||
* @param fo 参数类
|
||||
*/
|
||||
public void complete(CompleteFo fo) throws WorkFlowException {
|
||||
String url = getFlowAbleUrl() + "/api/Flow/task/complete";
|
||||
JSONObject jsonObject = HttpUtil.httpRequest(url, "POST", JsonUtil.getObjectToString(fo), UserProvider.getToken());
|
||||
FlowAbleModel flowAbleModel = JsonUtil.getJsonToBean(jsonObject, FlowAbleModel.class);
|
||||
if (null == flowAbleModel) {
|
||||
log.error(MsgCode.WF098.get());
|
||||
throw new WorkFlowException(MsgCode.WF142.get());
|
||||
}
|
||||
if (!flowAbleModel.getSuccess()) {
|
||||
throw new WorkFlowException(flowAbleModel.getMsg());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取流程实例
|
||||
*
|
||||
* @param instanceId 实例id
|
||||
*/
|
||||
public FlowableInstanceModel getInstance(String instanceId) throws WorkFlowException {
|
||||
String url = getFlowAbleUrl() + "/api/Flow/instance/" + instanceId;
|
||||
JSONObject jsonObject = HttpUtil.httpRequest(url, "GET", null, UserProvider.getToken());
|
||||
FlowAbleModel flowAbleModel = JsonUtil.getJsonToBean(jsonObject, FlowAbleModel.class);
|
||||
if (null == flowAbleModel) {
|
||||
log.error(MsgCode.WF099.get());
|
||||
throw new WorkFlowException(MsgCode.WF142.get());
|
||||
}
|
||||
if (!flowAbleModel.getSuccess()) {
|
||||
throw new WorkFlowException(flowAbleModel.getMsg());
|
||||
}
|
||||
return JsonUtil.getJsonToBean(flowAbleModel.getData(), FlowableInstanceModel.class);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取未经过的节点
|
||||
*
|
||||
* @param instanceId 引擎实例主键
|
||||
*/
|
||||
public List<String> getTobePass(String instanceId) throws WorkFlowException {
|
||||
String url = getFlowAbleUrl() + "/api/Flow/task/tobe/pass/" + instanceId;
|
||||
JSONObject jsonObject = HttpUtil.httpRequest(url, "GET", null, UserProvider.getToken());
|
||||
FlowAbleModel flowAbleModel = JsonUtil.getJsonToBean(jsonObject, FlowAbleModel.class);
|
||||
if (null == flowAbleModel) {
|
||||
log.error(MsgCode.WF100.get());
|
||||
throw new WorkFlowException(MsgCode.WF142.get());
|
||||
}
|
||||
if (!flowAbleModel.getSuccess()) {
|
||||
throw new WorkFlowException(flowAbleModel.getMsg());
|
||||
}
|
||||
return JsonUtil.getJsonToList(flowAbleModel.getData(), String.class);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取节点的后续节点
|
||||
*
|
||||
* @param fo 参数
|
||||
*/
|
||||
public List<String> getAfter(AfterFo fo) throws WorkFlowException {
|
||||
String url = getFlowAbleUrl() + "/api/Flow/task/after";
|
||||
JSONObject jsonObject = HttpUtil.httpRequest(url, "POST", JsonUtil.getObjectToString(fo), UserProvider.getToken());
|
||||
FlowAbleModel flowAbleModel = JsonUtil.getJsonToBean(jsonObject, FlowAbleModel.class);
|
||||
if (null == flowAbleModel) {
|
||||
log.error(MsgCode.WF101.get());
|
||||
throw new WorkFlowException(MsgCode.WF142.get());
|
||||
}
|
||||
if (!flowAbleModel.getSuccess()) {
|
||||
throw new WorkFlowException(flowAbleModel.getMsg());
|
||||
}
|
||||
return JsonUtil.getJsonToList(flowAbleModel.getData(), String.class);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取可回退的节点ID
|
||||
*
|
||||
* @param taskId 引擎任务主键
|
||||
*/
|
||||
public List<String> getFallbacks(String taskId) throws WorkFlowException {
|
||||
String url = getFlowAbleUrl() + "/api/Flow/task/fallbacks/" + taskId;
|
||||
JSONObject jsonObject = HttpUtil.httpRequest(url, "GET", null, UserProvider.getToken());
|
||||
FlowAbleModel flowAbleModel = JsonUtil.getJsonToBean(jsonObject, FlowAbleModel.class);
|
||||
if (null == flowAbleModel) {
|
||||
log.error(MsgCode.WF102.get());
|
||||
throw new WorkFlowException(MsgCode.WF142.get());
|
||||
}
|
||||
if (!flowAbleModel.getSuccess()) {
|
||||
throw new WorkFlowException(flowAbleModel.getMsg());
|
||||
}
|
||||
return JsonUtil.getJsonToList(flowAbleModel.getData(), String.class);
|
||||
}
|
||||
|
||||
/**
|
||||
* 退回
|
||||
*
|
||||
* @param fo 参数
|
||||
*/
|
||||
public void back(BackFo fo) throws WorkFlowException {
|
||||
String url = getFlowAbleUrl() + "/api/Flow/task/back";
|
||||
JSONObject jsonObject = HttpUtil.httpRequest(url, "POST", JsonUtil.getObjectToString(fo), UserProvider.getToken());
|
||||
FlowAbleModel flowAbleModel = JsonUtil.getJsonToBean(jsonObject, FlowAbleModel.class);
|
||||
if (null == flowAbleModel) {
|
||||
log.error(MsgCode.WF103.get());
|
||||
throw new WorkFlowException(MsgCode.WF142.get());
|
||||
}
|
||||
if (!flowAbleModel.getSuccess()) {
|
||||
throw new WorkFlowException(flowAbleModel.getMsg());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 节点跳转
|
||||
*
|
||||
* @param fo 参数
|
||||
*/
|
||||
public void jump(JumpFo fo) throws WorkFlowException {
|
||||
String url = getFlowAbleUrl() + "/api/Flow/task/jump";
|
||||
JSONObject jsonObject = HttpUtil.httpRequest(url, "POST", JsonUtil.getObjectToString(fo), UserProvider.getToken());
|
||||
FlowAbleModel flowAbleModel = JsonUtil.getJsonToBean(jsonObject, FlowAbleModel.class);
|
||||
if (null == flowAbleModel) {
|
||||
log.error(MsgCode.WF104.get());
|
||||
throw new WorkFlowException(MsgCode.WF142.get());
|
||||
}
|
||||
if (!flowAbleModel.getSuccess()) {
|
||||
throw new WorkFlowException(flowAbleModel.getMsg());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 任务完成的补偿
|
||||
*
|
||||
* @param fo 参数
|
||||
*/
|
||||
public List<FlowableTaskModel> compensate(CompensateFo fo) throws WorkFlowException {
|
||||
String url = getFlowAbleUrl() + "/api/Flow/task/compensate";
|
||||
JSONObject jsonObject = HttpUtil.httpRequest(url, "POST", JsonUtil.getObjectToString(fo), UserProvider.getToken());
|
||||
FlowAbleModel flowAbleModel = JsonUtil.getJsonToBean(jsonObject, FlowAbleModel.class);
|
||||
if (null == flowAbleModel) {
|
||||
log.error(MsgCode.WF105.get());
|
||||
throw new WorkFlowException(MsgCode.WF142.get());
|
||||
}
|
||||
if (!flowAbleModel.getSuccess()) {
|
||||
throw new WorkFlowException(flowAbleModel.getMsg());
|
||||
}
|
||||
return JsonUtil.getJsonToList(flowAbleModel.getData(), FlowableTaskModel.class);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取历史节点
|
||||
*
|
||||
* @param instanceId 实例主键
|
||||
*/
|
||||
public List<FlowableHistoricModel> getHistoric(String instanceId) throws WorkFlowException {
|
||||
String url = getFlowAbleUrl() + "/api/Flow/task/historic/" + instanceId;
|
||||
JSONObject jsonObject = HttpUtil.httpRequest(url, "GET", null, UserProvider.getToken());
|
||||
FlowAbleModel flowAbleModel = JsonUtil.getJsonToBean(jsonObject, FlowAbleModel.class);
|
||||
if (null == flowAbleModel) {
|
||||
log.error("获取历史节点失败");
|
||||
throw new WorkFlowException(MsgCode.WF142.get());
|
||||
}
|
||||
if (!flowAbleModel.getSuccess()) {
|
||||
throw new WorkFlowException(flowAbleModel.getMsg());
|
||||
}
|
||||
return JsonUtil.getJsonToList(flowAbleModel.getData(), FlowableHistoricModel.class);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取历史结束节点
|
||||
*
|
||||
* @param instanceId 实例主键
|
||||
*/
|
||||
public List<String> getHistoricEnd(String instanceId) throws WorkFlowException {
|
||||
String url = getFlowAbleUrl() + "/api/Flow/task/historic/end/" + instanceId;
|
||||
JSONObject jsonObject = HttpUtil.httpRequest(url, "GET", null, UserProvider.getToken());
|
||||
FlowAbleModel flowAbleModel = JsonUtil.getJsonToBean(jsonObject, FlowAbleModel.class);
|
||||
if (null == flowAbleModel) {
|
||||
log.error("获取历史结束节点失败");
|
||||
throw new WorkFlowException(MsgCode.WF142.get());
|
||||
}
|
||||
if (!flowAbleModel.getSuccess()) {
|
||||
throw new WorkFlowException(flowAbleModel.getMsg());
|
||||
}
|
||||
return JsonUtil.getJsonToList(flowAbleModel.getData(), String.class);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取元素信息
|
||||
*
|
||||
* @param deploymentId 部署id
|
||||
* @param key 节点key
|
||||
*/
|
||||
public FlowableNodeModel getElementInfo(String deploymentId, String key) throws WorkFlowException {
|
||||
String url = getFlowAbleUrl() + "/api/Flow/task/element/info";
|
||||
url += "?deploymentId=" + deploymentId + "&key=" + key;
|
||||
JSONObject jsonObject = HttpUtil.httpRequest(url, "GET", null, UserProvider.getToken());
|
||||
FlowAbleModel flowAbleModel = JsonUtil.getJsonToBean(jsonObject, FlowAbleModel.class);
|
||||
if (null == flowAbleModel) {
|
||||
log.error("获取元素信息失败");
|
||||
throw new WorkFlowException(MsgCode.WF142.get());
|
||||
}
|
||||
if (!flowAbleModel.getSuccess()) {
|
||||
throw new WorkFlowException(flowAbleModel.getMsg());
|
||||
}
|
||||
return JsonUtil.getJsonToBean(flowAbleModel.getData(), FlowableNodeModel.class);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
package com.yunzhupaas.flowable.model.flowable;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/6/18 17:21
|
||||
*/
|
||||
@Data
|
||||
public class FlowableHistoricModel {
|
||||
/**
|
||||
* 任务ID
|
||||
*/
|
||||
private String taskId;
|
||||
/**
|
||||
* 节点编码
|
||||
*/
|
||||
private String code;
|
||||
/**
|
||||
* 开始时间
|
||||
*/
|
||||
private Long startTime;
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
package com.yunzhupaas.flowable.model.flowable;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/25 8:57
|
||||
*/
|
||||
@Data
|
||||
public class FlowableInstanceModel {
|
||||
/**
|
||||
* 实例ID
|
||||
*/
|
||||
@Schema(name = "instanceId", description = "实例ID")
|
||||
private String instanceId;
|
||||
/**
|
||||
* 开始时间
|
||||
*/
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
@Schema(name = "startTime", description = "开始时间")
|
||||
private Date startTime;
|
||||
/**
|
||||
* 结束时间
|
||||
*/
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
@Schema(name = "endTime", description = "结束时间")
|
||||
private Date endTime;
|
||||
/**
|
||||
* 耗时
|
||||
*/
|
||||
@Schema(name = "durationInMillis", description = "耗时")
|
||||
private Long durationInMillis;
|
||||
/**
|
||||
* 删除原因
|
||||
*/
|
||||
@Schema(name = "deleteReason", description = "删除原因")
|
||||
private String deleteReason;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
package com.yunzhupaas.flowable.model.flowable;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* flowable节点
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/19 17:52
|
||||
*/
|
||||
@Data
|
||||
public class FlowableNodeModel implements Serializable {
|
||||
/**
|
||||
* 元素ID
|
||||
*/
|
||||
@Schema(name = "id", description = "元素ID")
|
||||
private String id;
|
||||
/**
|
||||
* 元素名称
|
||||
*/
|
||||
@Schema(name = "name", description = "元素名称")
|
||||
private String name;
|
||||
/**
|
||||
* 进线ID
|
||||
*/
|
||||
@Schema(name = "incoming", description = "进线ID")
|
||||
private List<String> incomingList;
|
||||
/**
|
||||
* 出线ID
|
||||
*/
|
||||
@Schema(name = "outgoingList", description = "出线ID")
|
||||
private List<String> outgoingList;
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
package com.yunzhupaas.flowable.model.flowable;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 引擎任务
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/18 9:17
|
||||
*/
|
||||
@Data
|
||||
public class FlowableTaskModel implements Serializable {
|
||||
/**
|
||||
* 任务ID
|
||||
*/
|
||||
@Schema(name = "taskId", description = "任务ID")
|
||||
private String taskId;
|
||||
/**
|
||||
* 任务名称
|
||||
*/
|
||||
@Schema(name = "taskName", description = "任务名称")
|
||||
private String taskName;
|
||||
/**
|
||||
* 任务Key
|
||||
*/
|
||||
@Schema(name = "taskKey", description = "任务Key")
|
||||
private String taskKey;
|
||||
/**
|
||||
* 实例ID
|
||||
*/
|
||||
@Schema(name = "instanceId", description = "实例ID")
|
||||
private String instanceId;
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
package com.yunzhupaas.flowable.model.flowable;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 启动实例参数类
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/17 21:14
|
||||
*/
|
||||
@Data
|
||||
public class InstanceStartFo implements Serializable {
|
||||
/**
|
||||
* 部署ID
|
||||
*/
|
||||
@Schema(name = "deploymentId", description = "部署ID")
|
||||
private String deploymentId;
|
||||
/**
|
||||
* 变量
|
||||
*/
|
||||
@Schema(name = "variables", description = "变量")
|
||||
private Map<String, Object> variables;
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
package com.yunzhupaas.flowable.model.flowable;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/5/9 16:36
|
||||
*/
|
||||
@Data
|
||||
public class JumpFo {
|
||||
/**
|
||||
* 实例ID
|
||||
*/
|
||||
private String instanceId;
|
||||
/**
|
||||
* 源节点集合
|
||||
*/
|
||||
private List<String> source;
|
||||
/**
|
||||
* 目标节点集合
|
||||
*/
|
||||
private List<String> target;
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
package com.yunzhupaas.flowable.model.flowable;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/23 11:06
|
||||
*/
|
||||
@Data
|
||||
public class NextOrPrevFo {
|
||||
/**
|
||||
* 部署ID
|
||||
*/
|
||||
@Schema(name = "deploymentId", description = "部署ID")
|
||||
private String deploymentId;
|
||||
/**
|
||||
* 节点Key
|
||||
*/
|
||||
@Schema(name = "taskKey", description = "节点Key")
|
||||
private String taskKey;
|
||||
/**
|
||||
* 任务ID
|
||||
*/
|
||||
@Schema(name = "taskId", description = "任务ID")
|
||||
private String taskId;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
package com.yunzhupaas.flowable.model.flowable;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/18 13:34
|
||||
*/
|
||||
@Data
|
||||
public class OutgoingFlowsFo implements Serializable {
|
||||
/**
|
||||
* 部署ID
|
||||
*/
|
||||
@Schema(name = "deploymentId", description = "部署ID")
|
||||
private String deploymentId;
|
||||
/**
|
||||
* 节点Key
|
||||
*/
|
||||
@Schema(name = "taskKey", description = "节点Key")
|
||||
private String taskKey;
|
||||
/**
|
||||
* 任务ID
|
||||
*/
|
||||
@Schema(name = "taskId", description = "任务ID")
|
||||
private String taskId;
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package com.yunzhupaas.flowable.model.message;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @author :云筑产品开发平台组
|
||||
* @version: V3.1.0
|
||||
* @copyright 深圳市乐程软件有限公司
|
||||
* @date :2024/4/25 下午5:13
|
||||
*/
|
||||
@Data
|
||||
public class ContModel {
|
||||
/**
|
||||
* 引擎id
|
||||
*/
|
||||
private String flowId;
|
||||
/**
|
||||
* 任务id
|
||||
*/
|
||||
private String taskId;
|
||||
/**
|
||||
* 经办id或抄送id
|
||||
*/
|
||||
private String operatorId;
|
||||
/**
|
||||
* 页面类型
|
||||
*/
|
||||
private String opType;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
package com.yunzhupaas.flowable.model.message;
|
||||
|
||||
import com.yunzhupaas.base.UserInfo;
|
||||
import com.yunzhupaas.flowable.entity.TaskEntity;
|
||||
import com.yunzhupaas.flowable.model.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 DelegateModel {
|
||||
//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 TaskEntity flowTask = new TaskEntity();
|
||||
//审批是否要发送消息
|
||||
private Boolean approve = true;
|
||||
/**
|
||||
* 确认
|
||||
*/
|
||||
private Integer ack = 0;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
package com.yunzhupaas.flowable.model.message;
|
||||
|
||||
import com.yunzhupaas.flowable.entity.RecordEntity;
|
||||
import com.yunzhupaas.flowable.entity.TaskEntity;
|
||||
import com.yunzhupaas.flowable.model.templatenode.nodejson.TemplateJsonModel;
|
||||
import com.yunzhupaas.permission.entity.UserEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/23 9:41
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class FlowEventModel {
|
||||
//数据
|
||||
private String dataJson;
|
||||
//表单数据
|
||||
private Map<String, Object> data;
|
||||
//系统匹配
|
||||
private TemplateJsonModel templateJson;
|
||||
//操作对象
|
||||
private RecordEntity record;
|
||||
// 任务
|
||||
private TaskEntity taskEntity;
|
||||
|
||||
private UserEntity createUser;
|
||||
private UserEntity delegate;
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,117 @@
|
||||
package com.yunzhupaas.flowable.model.message;
|
||||
|
||||
import com.yunzhupaas.flowable.entity.CirculateEntity;
|
||||
import com.yunzhupaas.flowable.entity.OperatorEntity;
|
||||
import com.yunzhupaas.flowable.entity.TaskEntity;
|
||||
import com.yunzhupaas.flowable.entity.TemplateNodeEntity;
|
||||
import com.yunzhupaas.flowable.model.task.FlowModel;
|
||||
import com.yunzhupaas.flowable.model.templatenode.nodejson.MsgConfig;
|
||||
import com.yunzhupaas.flowable.model.util.FlowNature;
|
||||
import com.yunzhupaas.permission.entity.UserEntity;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @author :云筑产品开发平台组
|
||||
* @version: V3.1.0
|
||||
* @copyright 深圳市乐程软件有限公司
|
||||
* @date :2024/4/25 下午1:49
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
@NoArgsConstructor
|
||||
public class FlowMsgModel {
|
||||
private Boolean startHandId = false;
|
||||
private FlowModel flowModel = new FlowModel();
|
||||
private TaskEntity taskEntity = new TaskEntity();
|
||||
private String nodeCode;
|
||||
private List<TemplateNodeEntity> nodeList = new ArrayList<>();
|
||||
private List<OperatorEntity> operatorList = new ArrayList<>();
|
||||
private List<CirculateEntity> circulateList = new ArrayList<>();
|
||||
private Map<String, Map<String, Object>> formData = new HashMap<>();
|
||||
/**
|
||||
* 代办 (通知代办)
|
||||
*/
|
||||
private Boolean wait = true;
|
||||
/**
|
||||
* 同意
|
||||
*/
|
||||
private Boolean approve = false;
|
||||
/**
|
||||
* 退回
|
||||
*/
|
||||
private Boolean back = 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;
|
||||
/**
|
||||
* 拒绝
|
||||
*/
|
||||
private Boolean reject = false;
|
||||
|
||||
private Boolean transfer = false;
|
||||
private Boolean assign = false;
|
||||
private Boolean press = false;
|
||||
|
||||
/**
|
||||
* 消息类型
|
||||
*/
|
||||
private MsgConfig msgConfig = new MsgConfig();
|
||||
/**
|
||||
* 审批类型
|
||||
*/
|
||||
private String opType = FlowNature.LaunchCreate;
|
||||
/**
|
||||
* 节点数据
|
||||
*/
|
||||
private Map<String, Object> data = new HashMap<>();
|
||||
/**
|
||||
* 审批人
|
||||
*/
|
||||
private List<String> userList = new ArrayList<>();
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private Map<String, String> contMsg = new HashMap<>();
|
||||
|
||||
/**
|
||||
* 创建人
|
||||
*/
|
||||
private UserEntity createUser;
|
||||
/**
|
||||
* 委托人
|
||||
*/
|
||||
private UserEntity delegate;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
package com.yunzhupaas.flowable.model.monitor;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/5/15 11:11
|
||||
*/
|
||||
@Data
|
||||
public class MonitorModel {
|
||||
@Schema(description = "主键")
|
||||
private List<String> ids;
|
||||
}
|
||||
@@ -0,0 +1,152 @@
|
||||
package com.yunzhupaas.flowable.model.monitor;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/5/15 11:00
|
||||
*/
|
||||
@Data
|
||||
public class MonitorVo {
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@Schema(description = "主键")
|
||||
private String id;
|
||||
/**
|
||||
* 任务编码
|
||||
*/
|
||||
@Schema(description = "任务编码")
|
||||
private String enCode;
|
||||
|
||||
/**
|
||||
* 任务标题
|
||||
*/
|
||||
@Schema(description = "任务标题")
|
||||
private String fullName;
|
||||
|
||||
/**
|
||||
* 流程名称
|
||||
*/
|
||||
@Schema(description = "流程名称")
|
||||
private String flowName;
|
||||
|
||||
/**
|
||||
* 流程编码
|
||||
*/
|
||||
@Schema(description = "流程编码")
|
||||
private String flowCode;
|
||||
|
||||
/**
|
||||
* 任务状态
|
||||
*/
|
||||
@Schema(description = "任务状态")
|
||||
private Integer status;
|
||||
|
||||
/**
|
||||
* 流程分类
|
||||
*/
|
||||
@Schema(description = "流程分类")
|
||||
private String flowCategory;
|
||||
|
||||
/**
|
||||
* 流程类型
|
||||
*/
|
||||
@Schema(description = "流程类型")
|
||||
private String flowType;
|
||||
|
||||
/**
|
||||
* 流程版本
|
||||
*/
|
||||
@Schema(description = "流程版本")
|
||||
private String flowVersion;
|
||||
|
||||
/**
|
||||
* 同步异步(0:同步,1:异步)
|
||||
*/
|
||||
@Schema(description = "同步异步(0:同步,1:异步)")
|
||||
private Integer isAsync;
|
||||
|
||||
/**
|
||||
* 父级实例节点编码
|
||||
*/
|
||||
@Schema(description = "父级实例节点编码")
|
||||
private String parentCode;
|
||||
|
||||
/**
|
||||
* 父级实例id
|
||||
*/
|
||||
@Schema(description = "父级实例id")
|
||||
private String parentId;
|
||||
|
||||
/**
|
||||
* 紧急程度
|
||||
*/
|
||||
@Schema(description = "紧急程度")
|
||||
private Integer flowUrgent;
|
||||
|
||||
/**
|
||||
* 流程主键
|
||||
*/
|
||||
@Schema(description = "流程主键")
|
||||
private String templateId;
|
||||
|
||||
/**
|
||||
* 流程版本主键
|
||||
*/
|
||||
@Schema(description = "流程版本主键")
|
||||
private String flowId;
|
||||
|
||||
/**
|
||||
* 是否批量(0:否,1:是)
|
||||
*/
|
||||
@Schema(description = "是否批量(0:否,1:是)")
|
||||
private Integer isBatch;
|
||||
|
||||
/**
|
||||
* 委托用户
|
||||
*/
|
||||
@Schema(description = "委托用户")
|
||||
private String delegateUserId;
|
||||
/**
|
||||
* 开始时间
|
||||
*/
|
||||
@Schema(description = "开始时间")
|
||||
private Date startTime;
|
||||
/**
|
||||
* 结束时间
|
||||
*/
|
||||
@Schema(description = "结束时间")
|
||||
private Date endTime;
|
||||
/**
|
||||
* 当前节点名称
|
||||
*/
|
||||
@Schema(description = "当前节点名称")
|
||||
private String currentNodeName;
|
||||
/**
|
||||
* 指派节点
|
||||
*/
|
||||
@Schema(description = "指派节点")
|
||||
private String assignNode;
|
||||
/**
|
||||
* 创建人
|
||||
*/
|
||||
@Schema(description = "创建人")
|
||||
private String creatorUser;
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@Schema(description = "创建时间")
|
||||
private Long creatorTime;
|
||||
/**
|
||||
* 归档状态
|
||||
*/
|
||||
@Schema(description = "归档状态")
|
||||
private String isFile;
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
package com.yunzhupaas.flowable.model.operator;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 加签参数
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/30 10:33
|
||||
*/
|
||||
@Data
|
||||
public class AddSignModel {
|
||||
/**
|
||||
* 加签人
|
||||
*/
|
||||
private List<String> addSignUserIdList = new ArrayList<>();
|
||||
/**
|
||||
* 加签类型 1.前 2 后
|
||||
*/
|
||||
private Integer addSignType = 1;
|
||||
/**
|
||||
* 审批类型(0:或签 1:会签 2:依次审批)
|
||||
*/
|
||||
private Integer counterSign = 0;
|
||||
/**
|
||||
* 会签比例
|
||||
*/
|
||||
private Integer auditRatio = 100;
|
||||
/**
|
||||
* 加签层级
|
||||
*/
|
||||
private Integer level = 1;
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package com.yunzhupaas.flowable.model.operator;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/5/16 10:07
|
||||
*/
|
||||
@Data
|
||||
public class FlowBatchModel {
|
||||
@Schema(description = "名称")
|
||||
private String fullName;
|
||||
@Schema(description = "主键")
|
||||
private String id;
|
||||
@Schema(description = "数量")
|
||||
private Long num;
|
||||
}
|
||||
@@ -0,0 +1,168 @@
|
||||
package com.yunzhupaas.flowable.model.operator;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/18 15:23
|
||||
*/
|
||||
@Data
|
||||
public class OperatorVo {
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@Schema(description = "主键")
|
||||
private String id;
|
||||
/**
|
||||
* 节点名称
|
||||
*/
|
||||
@Schema(description = "节点名称")
|
||||
private String nodeName;
|
||||
/**
|
||||
* 节点编码
|
||||
*/
|
||||
@Schema(description = "节点编码")
|
||||
private String nodeCode;
|
||||
/**
|
||||
* 任务id
|
||||
*/
|
||||
@Schema(description = "任务id")
|
||||
private String taskId;
|
||||
/**
|
||||
* 节点id
|
||||
*/
|
||||
@Schema(description = "节点id")
|
||||
private String nodeId;
|
||||
/**
|
||||
* 加签经办父级id
|
||||
*/
|
||||
@Schema(description = "加签经办父级id")
|
||||
private String parentId;
|
||||
/**
|
||||
* 处理时间
|
||||
*/
|
||||
@Schema(description = "处理时间")
|
||||
private Date handleTime;
|
||||
/**
|
||||
* 处理人id
|
||||
*/
|
||||
@Schema(description = "处理人id")
|
||||
private String handleId;
|
||||
/**
|
||||
* 处理状态
|
||||
*/
|
||||
@Schema(description = "处理状态")
|
||||
private Integer handleStatus;
|
||||
/**
|
||||
* 处理参数
|
||||
*/
|
||||
@Schema(description = "处理参数")
|
||||
private String handleParameter;
|
||||
/**
|
||||
* 退回参数
|
||||
*/
|
||||
@Schema(description = "退回参数")
|
||||
private String backParameter;
|
||||
/**
|
||||
* 开始处理时间
|
||||
*/
|
||||
@Schema(description = "开始处理时间")
|
||||
private Date startHandleTime;
|
||||
/**
|
||||
* 签收时间
|
||||
*/
|
||||
@Schema(description = "签收时间")
|
||||
private Date signTime;
|
||||
/**
|
||||
* 截止时间
|
||||
*/
|
||||
@Schema(description = "截止时间")
|
||||
private Date duedate;
|
||||
/**
|
||||
* 协办id
|
||||
*/
|
||||
@Schema(description = "协办id")
|
||||
private String assistId;
|
||||
/**
|
||||
* 草稿数据
|
||||
*/
|
||||
@Schema(description = "草稿数据")
|
||||
private String draftData;
|
||||
/**
|
||||
* 是否办理节点(0否 1是)
|
||||
*/
|
||||
@Schema(description = "是否办理节点")
|
||||
private Integer isProcessing;
|
||||
|
||||
/* --------------- 任务相关属性 --------------- */
|
||||
/**
|
||||
* 任务标题
|
||||
*/
|
||||
@Schema(description = "任务标题")
|
||||
private String fullName;
|
||||
/**
|
||||
* 流程名称
|
||||
*/
|
||||
@Schema(description = "流程名称")
|
||||
private String flowName;
|
||||
/**
|
||||
* 紧急程度
|
||||
*/
|
||||
@Schema(description = "紧急程度")
|
||||
private Integer flowUrgent;
|
||||
/**
|
||||
* 当前节点名称
|
||||
*/
|
||||
@Schema(description = "当前节点名称")
|
||||
private String currentNodeName;
|
||||
/**
|
||||
* 创建人id
|
||||
*/
|
||||
@Schema(description = "创建人id")
|
||||
private String creatorUserId;
|
||||
/**
|
||||
* 创建人
|
||||
*/
|
||||
@Schema(description = "创建人")
|
||||
private String creatorUser;
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@Schema(description = "创建时间")
|
||||
private Date creatorTime;
|
||||
/**
|
||||
* 任务
|
||||
*/
|
||||
@Schema(description = "任务")
|
||||
private Integer status;
|
||||
|
||||
@Schema(description = "版本主键")
|
||||
private String flowId;
|
||||
|
||||
@Schema(description = "版本")
|
||||
private String flowVersion;
|
||||
|
||||
@Schema(description = "开始时间")
|
||||
private Date startTime;
|
||||
|
||||
@Schema(description = "流程分类")
|
||||
private String flowCategory;
|
||||
|
||||
private String delegateUser;
|
||||
/**
|
||||
* 经办审批人id
|
||||
*/
|
||||
@Schema(description = "经办审批人id")
|
||||
private String operatorHandleId;
|
||||
/**
|
||||
* 记录创建人id
|
||||
*/
|
||||
@Schema(description = "记录创建人id")
|
||||
private String recordCreatorUserId;
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.yunzhupaas.flowable.model.operator;
|
||||
|
||||
import com.yunzhupaas.base.Pagination;
|
||||
import com.yunzhupaas.flowable.entity.OperatorEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/5/7 15:22
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class ReducePagination extends Pagination {
|
||||
|
||||
private OperatorEntity operator;
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
package com.yunzhupaas.flowable.model.operator;
|
||||
|
||||
import com.yunzhupaas.flowable.model.candidates.CandidateUserVo;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 可减签人员
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/5/7 15:20
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class ReduceUserModel extends CandidateUserVo {
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
package com.yunzhupaas.flowable.model.record;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/6/25 17:18
|
||||
*/
|
||||
@Data
|
||||
public class NodeRecordModel {
|
||||
/**
|
||||
* 任务id
|
||||
*/
|
||||
private String taskId;
|
||||
/**
|
||||
* 节点id
|
||||
*/
|
||||
private String nodeId;
|
||||
/**
|
||||
* 节点编码
|
||||
*/
|
||||
private String nodeCode;
|
||||
/**
|
||||
* 节点名称
|
||||
*/
|
||||
private String nodeName;
|
||||
/**
|
||||
* 节点状态,1-已提交 2-已通过 3-已拒绝 4-审批中 5-已退回 6-已撤回
|
||||
*/
|
||||
private Integer nodeStatus;
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
package com.yunzhupaas.flowable.model.record;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/6/18 17:09
|
||||
*/
|
||||
@Data
|
||||
public class ProgressModel {
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
private String id;
|
||||
/**
|
||||
* 开始时间
|
||||
*/
|
||||
private Long startTime;
|
||||
/**
|
||||
* 节点id
|
||||
*/
|
||||
private String nodeId;
|
||||
/**
|
||||
* 节点编码
|
||||
*/
|
||||
private String nodeCode;
|
||||
/**
|
||||
* 节点名称
|
||||
*/
|
||||
private String nodeName;
|
||||
/**
|
||||
* 节点类型
|
||||
*/
|
||||
private String nodeType;
|
||||
/**
|
||||
* 节点状态, 1-已提交 2-已通过 3-已拒绝 4-审批中. 7等待中、8待办理
|
||||
*/
|
||||
private Integer nodeStatus;
|
||||
/**
|
||||
* 审批类型(0:或签 1:会签 2:依次审批)
|
||||
*/
|
||||
private Integer counterSign;
|
||||
/**
|
||||
* 审批人
|
||||
*/
|
||||
private List<UserItem> approver = new ArrayList<>();
|
||||
/**
|
||||
* 审批人数
|
||||
*/
|
||||
private Integer approverCount = 0;
|
||||
/**
|
||||
* 显示任务流程按钮
|
||||
*/
|
||||
private Boolean showTaskFlow = false;
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
package com.yunzhupaas.flowable.model.record;
|
||||
|
||||
import com.yunzhupaas.flowable.entity.OperatorEntity;
|
||||
import com.yunzhupaas.flowable.model.task.FlowModel;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/26 17:10
|
||||
*/
|
||||
@Data
|
||||
public class RecordModel {
|
||||
/**
|
||||
* 记录操作类型,RecordEnum
|
||||
*/
|
||||
private Integer type;
|
||||
/**
|
||||
* 审批原因
|
||||
*/
|
||||
private FlowModel flowModel = new FlowModel();
|
||||
/**
|
||||
* 流转操作人,如加签给谁
|
||||
*/
|
||||
private String userId;
|
||||
/**
|
||||
* 经办对象
|
||||
*/
|
||||
private OperatorEntity operator = new OperatorEntity();
|
||||
|
||||
}
|
||||
@@ -0,0 +1,102 @@
|
||||
package com.yunzhupaas.flowable.model.record;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/29 10:55
|
||||
*/
|
||||
@Data
|
||||
public class RecordVo {
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@Schema(description = "主键")
|
||||
private String id;
|
||||
/**
|
||||
* 节点名称
|
||||
*/
|
||||
@Schema(description = "节点名称")
|
||||
private String nodeName;
|
||||
/**
|
||||
* 节点编码
|
||||
*/
|
||||
@Schema(description = "节点编码")
|
||||
private String nodeCode;
|
||||
/**
|
||||
* 经办类型
|
||||
*/
|
||||
@Schema(description = "经办类型")
|
||||
private Integer handleType;
|
||||
/**
|
||||
* 经办人员
|
||||
*/
|
||||
@Schema(description = "经办人员")
|
||||
private String handleId;
|
||||
/**
|
||||
* 经办时间
|
||||
*/
|
||||
@Schema(description = "经办时间")
|
||||
private Date handleTime;
|
||||
/**
|
||||
* 经办理由
|
||||
*/
|
||||
@Schema(description = "经办理由")
|
||||
private String handleOpinion;
|
||||
/**
|
||||
* 经办主键
|
||||
*/
|
||||
@Schema(description = "经办主键")
|
||||
private String operatorId;
|
||||
/**
|
||||
* 任务id
|
||||
*/
|
||||
@Schema(description = "任务id")
|
||||
private String taskId;
|
||||
/**
|
||||
* 签名图片
|
||||
*/
|
||||
@Schema(description = "签名图片")
|
||||
private String signImg;
|
||||
/**
|
||||
* 状态
|
||||
*/
|
||||
@Schema(description = "状态")
|
||||
private Integer status;
|
||||
/**
|
||||
* 流转操作人名称
|
||||
*/
|
||||
@Schema(description = "流转操作人名称")
|
||||
private String handleUserName;
|
||||
/**
|
||||
* 经办文件
|
||||
*/
|
||||
@Schema(description = "经办文件")
|
||||
private String fileList;
|
||||
/**
|
||||
* 用户名称
|
||||
*/
|
||||
@Schema(description = "用户名称")
|
||||
private String userName;
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@Schema(description = "创建时间")
|
||||
private Date creatorTime;
|
||||
/**
|
||||
* 头像
|
||||
*/
|
||||
@Schema(description = "头像")
|
||||
private String headIcon;
|
||||
/**
|
||||
* 拓展字段
|
||||
*/
|
||||
@Schema(description = "拓展字段")
|
||||
private List<Map> approvalField = new ArrayList<>();
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package com.yunzhupaas.flowable.model.record;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/6/18 17:12
|
||||
*/
|
||||
@Data
|
||||
public class UserItem {
|
||||
/**
|
||||
* 审批人名
|
||||
*/
|
||||
private String userName;
|
||||
/**
|
||||
* 头像
|
||||
*/
|
||||
private String headIcon;
|
||||
/**
|
||||
* 审批人
|
||||
*/
|
||||
private String userId;
|
||||
/**
|
||||
* 审批类型
|
||||
*/
|
||||
private Integer handleType;
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package com.yunzhupaas.flowable.model.task;
|
||||
|
||||
import com.yunzhupaas.flowable.model.templatenode.FlowErrorModel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 审批返回
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/6/20 15:49
|
||||
*/
|
||||
@Data
|
||||
public class AuditModel {
|
||||
/**
|
||||
* 是否结束
|
||||
*/
|
||||
private Boolean isEnd = false;
|
||||
/**
|
||||
* 异常处理
|
||||
*/
|
||||
private List<FlowErrorModel> errorCodeList = new ArrayList<>();
|
||||
/**
|
||||
* 任务主键
|
||||
*/
|
||||
private String taskId;
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
package com.yunzhupaas.flowable.model.task;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 归档模型
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/5/28 14:16
|
||||
*/
|
||||
@Data
|
||||
public class FileModel {
|
||||
/**
|
||||
* 归档文件夹名称
|
||||
*/
|
||||
public static String FOLDER_NAME = "流程归档";
|
||||
/**
|
||||
* 归档路径
|
||||
*/
|
||||
private String parentId;
|
||||
/**
|
||||
* 文件名称
|
||||
*/
|
||||
private String filename;
|
||||
/**
|
||||
* 创建人
|
||||
*/
|
||||
private String userId;
|
||||
/**
|
||||
* 分享人
|
||||
*/
|
||||
private List<String> userList = new ArrayList<>();
|
||||
}
|
||||
@@ -0,0 +1,117 @@
|
||||
package com.yunzhupaas.flowable.model.task;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import com.yunzhupaas.base.Pagination;
|
||||
import com.yunzhupaas.flowable.model.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 List<Map> approvalField = new ArrayList<>();
|
||||
/**
|
||||
* 处理人,如 转审人、指派人
|
||||
**/
|
||||
@Schema(description = "处理人")
|
||||
private String handleIds;
|
||||
/**
|
||||
* 审批数据
|
||||
**/
|
||||
@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<>();
|
||||
/**
|
||||
* 签收类型,0、签收 1、退签 2、表示流程监控的类型为任务流程
|
||||
*/
|
||||
@Schema(description = "签收类型")
|
||||
private Integer type = 0;
|
||||
/**
|
||||
* 经办文件
|
||||
**/
|
||||
@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 backNodeCode = FlowNature.START;
|
||||
/**
|
||||
* 退回类型 1.重新审批 2.从当前节点审批
|
||||
*/
|
||||
@Schema(description = "退回类型")
|
||||
private Integer backType = FlowNature.RestartType;
|
||||
/**
|
||||
* false 变更 true 复活
|
||||
*/
|
||||
@Schema(description = "类型")
|
||||
private Boolean resurgence = false;
|
||||
/**
|
||||
* true 同步子流程 false 全部子流程
|
||||
*/
|
||||
@Schema(description = "冻结类型")
|
||||
private Boolean suspend = false;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,277 @@
|
||||
package com.yunzhupaas.flowable.model.task;
|
||||
|
||||
import com.yunzhupaas.base.UserInfo;
|
||||
import com.yunzhupaas.flowable.entity.CirculateEntity;
|
||||
import com.yunzhupaas.flowable.entity.OperatorEntity;
|
||||
import com.yunzhupaas.flowable.entity.TaskEntity;
|
||||
import com.yunzhupaas.flowable.entity.TemplateNodeEntity;
|
||||
import com.yunzhupaas.flowable.model.operator.AddSignModel;
|
||||
import com.yunzhupaas.flowable.model.templatenode.FlowErrorModel;
|
||||
import com.yunzhupaas.flowable.model.templatenode.TaskNodeModel;
|
||||
import com.yunzhupaas.flowable.model.templatenode.nodejson.Assign;
|
||||
import com.yunzhupaas.flowable.model.templatenode.nodejson.NodeModel;
|
||||
import com.yunzhupaas.flowable.model.templatenode.nodejson.ProperCond;
|
||||
import com.yunzhupaas.permission.entity.UserEntity;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @author :云筑产品开发平台组
|
||||
* @version: V3.1.0
|
||||
* @copyright 深圳市乐程软件有限公司
|
||||
* @date :2024/6/24 下午4:57
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class FlowMethod {
|
||||
//handleAssignOperator
|
||||
/**
|
||||
* 任务主键
|
||||
*/
|
||||
public String taskId;
|
||||
/**
|
||||
* 审批对象
|
||||
*/
|
||||
private FlowModel flowModel;
|
||||
|
||||
//createOperator
|
||||
/**
|
||||
* 经办实体
|
||||
*/
|
||||
private OperatorEntity operatorEntity;
|
||||
/**
|
||||
* 状态
|
||||
*/
|
||||
private Integer state;
|
||||
/**
|
||||
* 节点
|
||||
*/
|
||||
private NodeModel nodeModel;
|
||||
|
||||
//prevNodeList
|
||||
/**
|
||||
* flowable部署id
|
||||
*/
|
||||
private String deploymentId;
|
||||
/**
|
||||
* 节点编码
|
||||
*/
|
||||
private String nodeCode;
|
||||
/**
|
||||
* 节点对象
|
||||
*/
|
||||
private List<TemplateNodeEntity> nodeEntityList;
|
||||
private List<String> nodeCodeList;
|
||||
|
||||
//handleErrorRule
|
||||
private List<FlowErrorModel> errorList;
|
||||
|
||||
//handleCondition
|
||||
/**
|
||||
* 表单数据
|
||||
*/
|
||||
private Map<String, Object> formData = new HashMap<>();
|
||||
/**
|
||||
* 节点集合
|
||||
*/
|
||||
private Map<String, NodeModel> nodes;
|
||||
/**
|
||||
* 任务
|
||||
*/
|
||||
private TaskEntity taskEntity;
|
||||
|
||||
//completeNode
|
||||
/**
|
||||
* flowable主键
|
||||
*/
|
||||
private String flowableTaskId;
|
||||
/**
|
||||
* 结果Map
|
||||
*/
|
||||
private Map<String, Boolean> resMap = new HashMap<>();
|
||||
|
||||
|
||||
//FlowDataModel
|
||||
/**
|
||||
* 节点对象
|
||||
*/
|
||||
private TemplateNodeEntity nodeEntity;
|
||||
// false 仅查询表单数据
|
||||
/**
|
||||
* 是否保存表单数据
|
||||
*/
|
||||
private Boolean isAssign = true;
|
||||
/**
|
||||
* 是否查询数据
|
||||
*/
|
||||
private Boolean isData = true;
|
||||
|
||||
//getNextApprover
|
||||
/**
|
||||
* 下一节点
|
||||
*/
|
||||
private List<NodeModel> nextNode = new ArrayList<>();
|
||||
|
||||
|
||||
//RecordModel
|
||||
/**
|
||||
* 记录操作类型,RecordEnum
|
||||
*/
|
||||
private Integer type;
|
||||
/**
|
||||
* 流转操作人,如加签给谁
|
||||
*/
|
||||
private String userId;
|
||||
|
||||
|
||||
//improperSort
|
||||
/**
|
||||
* 审批用户
|
||||
*/
|
||||
private List<String> userIds;
|
||||
|
||||
|
||||
//TaskOperator
|
||||
/**
|
||||
* 异常规则
|
||||
*/
|
||||
private Boolean errorRule = false;
|
||||
/**
|
||||
* 附加条件
|
||||
*/
|
||||
private Boolean extraRule = false;
|
||||
/**
|
||||
* 默认审批通过
|
||||
*/
|
||||
private Integer pass = 0;
|
||||
/**
|
||||
* 无法提交
|
||||
*/
|
||||
private Integer notSubmit = 0;
|
||||
/**
|
||||
* 上一节点审批人指定处理人
|
||||
*/
|
||||
private Integer node = 0;
|
||||
|
||||
//rule
|
||||
private Integer rule;
|
||||
|
||||
//getManageOrgByLevel
|
||||
private String organizeOrManager;
|
||||
private Integer level;
|
||||
|
||||
//formData
|
||||
private List<Assign> assignListAll;
|
||||
|
||||
|
||||
//checkNextCandidates
|
||||
private List<NodeModel> nodeList;
|
||||
|
||||
//deleteFormData
|
||||
private List<TaskEntity> taskList;
|
||||
|
||||
|
||||
//getConditionResult
|
||||
/**
|
||||
* 出线集合
|
||||
*/
|
||||
private List<String> outgoingFlows;
|
||||
|
||||
/**
|
||||
* 条件
|
||||
*/
|
||||
private List<ProperCond> conditions;
|
||||
|
||||
/**
|
||||
* 条件匹配逻辑
|
||||
*/
|
||||
private String matchLogic;
|
||||
|
||||
//checkPrint
|
||||
/**
|
||||
* 打印对象
|
||||
*/
|
||||
private List<TaskNodeModel> printNodeList;
|
||||
|
||||
private String handId;
|
||||
|
||||
/**
|
||||
* 未经过的节点
|
||||
*/
|
||||
private List<String> tobePass;
|
||||
/**
|
||||
* 当前节点
|
||||
*/
|
||||
private List<String> currentNodes;
|
||||
/**
|
||||
* 是否签收
|
||||
*/
|
||||
private Boolean signFor;
|
||||
|
||||
/**
|
||||
* 审批方式
|
||||
*/
|
||||
private Integer handleStatus;
|
||||
|
||||
/**
|
||||
* 加签审批方式
|
||||
*/
|
||||
private AddSignModel addSignModel;
|
||||
|
||||
/**
|
||||
* 当前用户
|
||||
*/
|
||||
private UserEntity userEntity;
|
||||
|
||||
/**
|
||||
* 创建人
|
||||
*/
|
||||
private UserEntity createUser;
|
||||
|
||||
/**
|
||||
* 委托人
|
||||
*/
|
||||
private UserEntity delegate;
|
||||
|
||||
/**
|
||||
* 用户信息
|
||||
*/
|
||||
private UserInfo userInfo;
|
||||
|
||||
/**
|
||||
* 经办集合
|
||||
*/
|
||||
private List<OperatorEntity> operatorList;
|
||||
|
||||
/**
|
||||
* 抄送集合
|
||||
*/
|
||||
List<CirculateEntity> circulateList = new ArrayList<>();
|
||||
|
||||
/**
|
||||
* 选择分支时(true) 判断 审批比例 标识
|
||||
*/
|
||||
private Boolean auditFlag = false;
|
||||
|
||||
/**
|
||||
* 获取下一级节点,是否获取子流程节点
|
||||
*/
|
||||
private Boolean nextSubFlow = false;
|
||||
|
||||
/**
|
||||
* 子流程表单数据
|
||||
*/
|
||||
private Map<String, Object> subFormData = new HashMap<>();
|
||||
|
||||
/**
|
||||
* 是否撤销流程
|
||||
*/
|
||||
private Boolean isRevoke = false;
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,261 @@
|
||||
package com.yunzhupaas.flowable.model.task;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonInclude;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import com.yunzhupaas.base.UserInfo;
|
||||
import com.yunzhupaas.flowable.entity.*;
|
||||
import com.yunzhupaas.flowable.enums.TaskStatusEnum;
|
||||
import com.yunzhupaas.flowable.model.operator.AddSignModel;
|
||||
import com.yunzhupaas.flowable.model.templatejson.TemplateJsonInfoVO;
|
||||
import com.yunzhupaas.flowable.model.templatenode.FlowErrorModel;
|
||||
import com.yunzhupaas.flowable.model.templatenode.TaskNodeModel;
|
||||
import com.yunzhupaas.flowable.model.templatenode.nodejson.NodeModel;
|
||||
import com.yunzhupaas.flowable.model.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
|
||||
@JsonInclude
|
||||
public class FlowModel extends FlowHandleModel {
|
||||
/**
|
||||
* 判断新增
|
||||
**/
|
||||
@Schema(description = "判断新增")
|
||||
private String id;
|
||||
/**
|
||||
* 版本ID
|
||||
**/
|
||||
@Schema(description = "版本ID")
|
||||
private String flowId;
|
||||
/**
|
||||
* 部署id
|
||||
**/
|
||||
@Schema(description = "部署id")
|
||||
private String deploymentId;
|
||||
|
||||
private TemplateJsonEntity jsonEntity;
|
||||
private TaskEntity taskEntity = new TaskEntity();
|
||||
private List<TemplateNodeEntity> nodeEntityList = new ArrayList<>();
|
||||
private Map<String, NodeModel> nodes = new HashMap<>();
|
||||
private String flowableTaskId;
|
||||
private TemplateNodeEntity nodeEntity = new TemplateNodeEntity();
|
||||
/**
|
||||
* 加签参数
|
||||
*/
|
||||
private AddSignModel addSignParameter = new AddSignModel();
|
||||
/**
|
||||
* 审批处理标识,0.拒绝 1.同意
|
||||
*/
|
||||
private Integer handleStatus = FlowNature.AuditCompletion;
|
||||
/**
|
||||
* 任务详情类型
|
||||
* -1-我发起的新建/编辑
|
||||
* 0-我发起的详情
|
||||
* 1-待签事宜
|
||||
* 2-待办事宜
|
||||
* 3-在办事宜
|
||||
* 4-已办事宜
|
||||
* 5-抄送事宜
|
||||
* 6-流程监控
|
||||
*/
|
||||
private String opType = "-1";
|
||||
|
||||
private TemplateJsonInfoVO jsonInfoVO = new TemplateJsonInfoVO();
|
||||
private OperatorEntity operatorEntity = new OperatorEntity();
|
||||
private RecordEntity recordEntity = new RecordEntity();
|
||||
private List<OperatorEntity> list = new ArrayList<>();
|
||||
private List<TaskEntity> taskList = new ArrayList<>();
|
||||
private TemplateEntity templateEntity = new TemplateEntity();
|
||||
|
||||
/**
|
||||
* 判断撤回的标识 1.发起撤回 2.审批撤回
|
||||
*/
|
||||
private Integer flag = 1;
|
||||
/**
|
||||
* 事件状态
|
||||
*/
|
||||
private Integer eventStatus = 0;
|
||||
/**
|
||||
* 判断撤回时,为true会抛出异常
|
||||
*/
|
||||
private Boolean isException = false;
|
||||
/**
|
||||
* 下一级节点编码
|
||||
*/
|
||||
private List<String> nextCodes = new ArrayList<>();
|
||||
|
||||
/**
|
||||
* 挂起,0.全部 1.仅主流程
|
||||
*/
|
||||
private Integer pause = 0;
|
||||
/**
|
||||
* 流程结束是否更新为结束节点
|
||||
*/
|
||||
private Boolean finishFlag = true;
|
||||
|
||||
/**
|
||||
* 子流程节点编码
|
||||
*/
|
||||
private String subCode;
|
||||
/**
|
||||
* 子流程参数
|
||||
*/
|
||||
private SubParameterModel subParameter;
|
||||
/**
|
||||
* 流程详情节点
|
||||
*/
|
||||
private List<TaskNodeModel> nodeList = new ArrayList<>();
|
||||
/**
|
||||
* 是否流程,0-菜单 1-发起
|
||||
*/
|
||||
private Integer isFlow = 0;
|
||||
/**
|
||||
* 签名主键
|
||||
*/
|
||||
private String signId;
|
||||
/**
|
||||
* 下次继续使用此签名
|
||||
*/
|
||||
private Boolean useSignNext = false;
|
||||
/**
|
||||
* 触发动作,1同意 2拒绝 3退回
|
||||
*/
|
||||
private Integer action;
|
||||
/**
|
||||
* 拒绝直接结束的触发标识
|
||||
*/
|
||||
private Boolean rejectTrigger = false;
|
||||
/**
|
||||
* 退回id,任务流程为退回触发时,获取最后一个执行节点的id用于退回
|
||||
*/
|
||||
private String backId;
|
||||
|
||||
/**
|
||||
* 流程主键
|
||||
**/
|
||||
@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 Integer status = TaskStatusEnum.TO_BE_SUBMIT.getCode();
|
||||
/**
|
||||
* 父级实例节点编码
|
||||
*/
|
||||
@Schema(description = "父级实例节点编码")
|
||||
private String parentCode;
|
||||
/**
|
||||
* 子流程
|
||||
**/
|
||||
@Schema(description = "子流程")
|
||||
private String parentId = FlowNature.ParentId;
|
||||
/**
|
||||
* 创建人
|
||||
**/
|
||||
@Schema(description = "创建人")
|
||||
private String userId;
|
||||
/**
|
||||
* 被委托人
|
||||
*/
|
||||
@Schema(description = "被委托人")
|
||||
private String delegateUser;
|
||||
/**
|
||||
* 当前经办id
|
||||
**/
|
||||
@Schema(description = "当前经办id")
|
||||
private String operatorId;
|
||||
/**
|
||||
* 回流id
|
||||
*/
|
||||
@Schema(description = "回流主键")
|
||||
private String rollbackId;
|
||||
/**
|
||||
* 任务主键
|
||||
*/
|
||||
@Schema(description = "任务主键")
|
||||
private String taskId;
|
||||
/**
|
||||
* 任务主键
|
||||
*/
|
||||
@Schema(description = "变更节点")
|
||||
private String taskNodeId;
|
||||
/**
|
||||
* 是否冻结审批
|
||||
*/
|
||||
private Boolean rejectUser = false;
|
||||
/**
|
||||
* 子流程,是否异步
|
||||
**/
|
||||
private Integer isAsync = 0;
|
||||
/**
|
||||
* 用户信息
|
||||
*/
|
||||
private UserInfo userInfo;
|
||||
/**
|
||||
* 定时器
|
||||
*/
|
||||
private Boolean isTimer = false;
|
||||
/**
|
||||
* 系统主键
|
||||
*/
|
||||
private String systemId;
|
||||
/**
|
||||
* 自动审批
|
||||
*/
|
||||
private Boolean voluntarily = false;
|
||||
|
||||
/**
|
||||
* 抄送消息标识
|
||||
*/
|
||||
private Boolean copyMsgFlag = true;
|
||||
/**
|
||||
* 自动转审,走指派方法的标识
|
||||
*/
|
||||
private Boolean autoTransferFlag = false;
|
||||
/**
|
||||
* 子流程是否暂存标识
|
||||
*/
|
||||
private Boolean subFlow = false;
|
||||
|
||||
private List<FlowErrorModel> errorList = new ArrayList<>();
|
||||
|
||||
/**
|
||||
* 流程模板id
|
||||
*/
|
||||
private String templateId;
|
||||
/**
|
||||
* 发起人
|
||||
*/
|
||||
private List<String> userIds = new ArrayList<>();
|
||||
/**
|
||||
* 表单数据集合
|
||||
*/
|
||||
private List<Map<String, Object>> formDataList = new ArrayList<>();
|
||||
}
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
package com.yunzhupaas.flowable.model.task;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/8/26 11:00
|
||||
*/
|
||||
@Data
|
||||
public class RevokeFormDataModel {
|
||||
/**
|
||||
* 审批编号
|
||||
*/
|
||||
private String billRule;
|
||||
/**
|
||||
* 提交时间
|
||||
*/
|
||||
private Long creatorTime;
|
||||
/**
|
||||
* 撤销理由
|
||||
*/
|
||||
private String handleOpinion;
|
||||
/**
|
||||
* 关联流程id
|
||||
*/
|
||||
private String revokeTaskId;
|
||||
/**
|
||||
* 关联流程名称
|
||||
*/
|
||||
private String revokeTaskName;
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package com.yunzhupaas.flowable.model.task;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 任务子流程参数
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/5/21 9:43
|
||||
*/
|
||||
@Data
|
||||
public class SubParameterModel {
|
||||
/**
|
||||
* 子流程 上一级任务 节点编码(如果子流程是合流节点 就存最后一个审批的分流节点)
|
||||
*/
|
||||
private String parentCode;
|
||||
/**
|
||||
* flowable task id
|
||||
*/
|
||||
private String nodeId;
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
package com.yunzhupaas.flowable.model.task;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import com.yunzhupaas.base.PaginationTime;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/22 9:06
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class TaskPagination extends PaginationTime {
|
||||
@Schema(description = "所属名称")
|
||||
private String flowId;
|
||||
@Schema(description = "分类")
|
||||
private String flowCategory;
|
||||
@Schema(description = "紧急程度")
|
||||
private Integer flowUrgent;
|
||||
@Schema(description = "所属流程")
|
||||
private String templateId;
|
||||
@Schema(description = "状态")
|
||||
private Integer status;
|
||||
@Schema(description = "用户主键")
|
||||
private String creatorUserId;
|
||||
@Schema(description = "编码")
|
||||
private String nodeCode;
|
||||
/**
|
||||
* 待签、待办、在办、已办、批量在办
|
||||
*/
|
||||
private String category;
|
||||
|
||||
@JsonIgnore
|
||||
private Boolean delegateType = false;
|
||||
@JsonIgnore
|
||||
private String userId;
|
||||
@JsonIgnore
|
||||
private Integer isBatch;
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
package com.yunzhupaas.flowable.model.task;
|
||||
|
||||
import com.yunzhupaas.flowable.entity.CirculateEntity;
|
||||
import com.yunzhupaas.flowable.entity.OperatorEntity;
|
||||
import com.yunzhupaas.flowable.entity.RecordEntity;
|
||||
import com.yunzhupaas.flowable.entity.TaskEntity;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/5/21 11:15
|
||||
*/
|
||||
@Data
|
||||
public class TaskUserListModel {
|
||||
|
||||
private List<String> allUserIdList;
|
||||
|
||||
private TaskEntity flowTask;
|
||||
|
||||
private List<OperatorEntity> operatorList = new ArrayList<>();
|
||||
|
||||
private List<CirculateEntity> circulateList = new ArrayList<>();
|
||||
|
||||
private List<RecordEntity> operatorRecordList = new ArrayList<>();
|
||||
}
|
||||
@@ -0,0 +1,151 @@
|
||||
package com.yunzhupaas.flowable.model.task;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/17 15:02
|
||||
*/
|
||||
@Data
|
||||
public class TaskVo implements Serializable {
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@Schema(description = "主键")
|
||||
private String id;
|
||||
/**
|
||||
* 任务编码
|
||||
*/
|
||||
@Schema(description = "任务编码")
|
||||
private String enCode;
|
||||
|
||||
/**
|
||||
* 任务标题
|
||||
*/
|
||||
@Schema(description = "任务标题")
|
||||
private String fullName;
|
||||
|
||||
/**
|
||||
* 流程名称
|
||||
*/
|
||||
@Schema(description = "流程名称")
|
||||
private String flowName;
|
||||
|
||||
/**
|
||||
* 流程编码
|
||||
*/
|
||||
@Schema(description = "流程编码")
|
||||
private String flowCode;
|
||||
|
||||
/**
|
||||
* 任务状态
|
||||
*/
|
||||
@Schema(description = "任务状态")
|
||||
private Integer status;
|
||||
|
||||
/**
|
||||
* 流程分类
|
||||
*/
|
||||
@Schema(description = "流程分类")
|
||||
private String flowCategory;
|
||||
|
||||
/**
|
||||
* 流程类型
|
||||
*/
|
||||
@Schema(description = "流程类型")
|
||||
private String flowType;
|
||||
|
||||
/**
|
||||
* 流程版本
|
||||
*/
|
||||
@Schema(description = "流程版本")
|
||||
private String flowVersion;
|
||||
|
||||
/**
|
||||
* 同步异步(0:同步,1:异步)
|
||||
*/
|
||||
@Schema(description = "同步异步(0:同步,1:异步)")
|
||||
private Integer isAsync;
|
||||
|
||||
/**
|
||||
* 父级实例id
|
||||
*/
|
||||
@Schema(description = "父级实例id")
|
||||
private String parentId;
|
||||
|
||||
/**
|
||||
* 紧急程度
|
||||
*/
|
||||
@Schema(description = "紧急程度")
|
||||
private Integer flowUrgent;
|
||||
|
||||
/**
|
||||
* 流程主键
|
||||
*/
|
||||
@Schema(description = "流程主键")
|
||||
private String templateId;
|
||||
|
||||
/**
|
||||
* 流程版本主键
|
||||
*/
|
||||
@Schema(description = "流程版本主键")
|
||||
private String flowId;
|
||||
|
||||
/**
|
||||
* 流程引擎实例id
|
||||
*/
|
||||
@Schema(description = "流程引擎实例id")
|
||||
private String instanceId;
|
||||
/**
|
||||
* 流程引擎类型;1.flowable,2,activity,3.camunda
|
||||
*/
|
||||
@Schema(description = "流程引擎类型;1.flowable,2,activity,3.camunda")
|
||||
private Integer engineType;
|
||||
|
||||
/**
|
||||
* 委托用户
|
||||
*/
|
||||
@Schema(description = "委托用户")
|
||||
private String delegateUser;
|
||||
/**
|
||||
* 开始时间
|
||||
*/
|
||||
@Schema(description = "开始时间")
|
||||
private Date startTime;
|
||||
/**
|
||||
* 结束时间
|
||||
*/
|
||||
@Schema(description = "结束时间")
|
||||
private Date endTime;
|
||||
/**
|
||||
* 当前节点名称
|
||||
*/
|
||||
@Schema(description = "当前节点名称")
|
||||
private String currentNodeName;
|
||||
/**
|
||||
* 创建人
|
||||
*/
|
||||
@Schema(description = "创建人")
|
||||
private String creatorUser;
|
||||
/**
|
||||
* 创建人头像
|
||||
*/
|
||||
@Schema(description = "创建人头像")
|
||||
private String headIcon;
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@Schema(description = "创建时间")
|
||||
private Date creatorTime;
|
||||
/**
|
||||
* 是否撤销流程
|
||||
*/
|
||||
private Boolean isRevokeTask = false;
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package com.yunzhupaas.flowable.model.task;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 查看表单
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/8/29 9:42
|
||||
*/
|
||||
@Data
|
||||
public class ViewFormModel {
|
||||
@Schema(description = "表单详情")
|
||||
private Object formInfo;
|
||||
@Schema(description = "表单数据")
|
||||
private Map<String, Object> formData = new HashMap<>();
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
package com.yunzhupaas.flowable.model.template;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import com.yunzhupaas.flowable.model.record.ProgressModel;
|
||||
import com.yunzhupaas.flowable.model.record.RecordVo;
|
||||
import com.yunzhupaas.flowable.model.task.TaskVo;
|
||||
import com.yunzhupaas.flowable.model.templatejson.TemplateJsonInfoVO;
|
||||
import com.yunzhupaas.flowable.model.templatenode.ButtonModel;
|
||||
import com.yunzhupaas.flowable.model.templatenode.TaskNodeModel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 发起、审批详情
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/17 15:32
|
||||
*/
|
||||
@Data
|
||||
public class BeforeInfoVo implements Serializable {
|
||||
|
||||
@Schema(description = "当前节点属性")
|
||||
private Map<String, Object> nodeProperties = new HashMap<>();
|
||||
|
||||
@Schema(description = "表单详情")
|
||||
private Object formInfo;
|
||||
|
||||
@Schema(description = "流程详情")
|
||||
private TemplateJsonInfoVO flowInfo;
|
||||
|
||||
@Schema(description = "流程任务")
|
||||
private TaskVo taskInfo;
|
||||
|
||||
/**
|
||||
* 用于节点的完成情况、经办人等
|
||||
*/
|
||||
@Schema(description = "节点")
|
||||
private List<TaskNodeModel> nodeList = new ArrayList<>();
|
||||
|
||||
@Schema(description = "流转记录")
|
||||
private List<RecordVo> recordList = new ArrayList<>();
|
||||
|
||||
@Schema(description = "表单权限")
|
||||
private List<Map<String, Object>> formOperates = new ArrayList<>();
|
||||
|
||||
@Schema(description = "表单数据")
|
||||
private Map<String, Object> formData = new HashMap<>();
|
||||
|
||||
@Schema(description = "按钮控制")
|
||||
private ButtonModel btnInfo;
|
||||
|
||||
@Schema(description = "进度")
|
||||
private List<ProgressModel> progressList = new ArrayList<>();
|
||||
|
||||
@Schema(description = "草稿")
|
||||
private Object draftData;
|
||||
|
||||
@Schema(description = "最新的线的集合")
|
||||
private List<String> lineKeyList = new ArrayList<>();
|
||||
}
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
package com.yunzhupaas.flowable.model.template;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/5/24 9:57
|
||||
*/
|
||||
@Data
|
||||
public class FlowByFormModel {
|
||||
/**
|
||||
* 流程集合
|
||||
*/
|
||||
private List<TemplateByFormModel> list = new ArrayList<>();
|
||||
/**
|
||||
* 是否绑定流程
|
||||
*/
|
||||
private Boolean isConfig = false;
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package com.yunzhupaas.flowable.model.template;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/7/22 11:15
|
||||
*/
|
||||
@Data
|
||||
public class FlowConfigModel {
|
||||
/**
|
||||
* 发起可见类型(1-全部 2-权限)
|
||||
*/
|
||||
private Integer visibleType = 1;
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package com.yunzhupaas.flowable.model.template;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 类的描述
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/5/22 11:20
|
||||
*/
|
||||
@Data
|
||||
public class TemplateByFormModel {
|
||||
/**
|
||||
* 流程版本主键
|
||||
*/
|
||||
private String id;
|
||||
/**
|
||||
* 流程名称
|
||||
*/
|
||||
private String fullName;
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
package com.yunzhupaas.flowable.model.template;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class TemplateCrForm {
|
||||
|
||||
@Schema(description = "流程编码")
|
||||
private String enCode;
|
||||
|
||||
@Schema(description = "流程名称")
|
||||
private String fullName;
|
||||
|
||||
/**
|
||||
* 0.标准 1.简流
|
||||
*/
|
||||
@Schema(description = "流程类型")
|
||||
private Integer type = 0;
|
||||
|
||||
@Schema(description = "流程分类")
|
||||
private String category;
|
||||
|
||||
@Schema(description = "图标")
|
||||
private String icon;
|
||||
|
||||
@Schema(description = "图标背景色")
|
||||
private String iconBackground;
|
||||
|
||||
// @Schema(description = "流程参数")
|
||||
// private String configuration;
|
||||
|
||||
@Schema(description = "说明")
|
||||
private String description;
|
||||
|
||||
@Schema(description = "排序")
|
||||
private Long sortCode;
|
||||
|
||||
@Schema(description = "流程设置")
|
||||
private String flowConfig;
|
||||
|
||||
/**
|
||||
* 流程显示类型(0-全局 1-流程 2-菜单)
|
||||
*/
|
||||
private Integer showType = 0;
|
||||
/**
|
||||
* 状态(0.未上架,1.上架,2.下架-继续审批,3.下架-隐藏审批)
|
||||
*/
|
||||
private Integer status = 0;
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
package com.yunzhupaas.flowable.model.template;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import com.yunzhupaas.flowable.entity.TemplateEntity;
|
||||
import com.yunzhupaas.flowable.entity.TemplateNodeEntity;
|
||||
import com.yunzhupaas.flowable.model.templatejson.TemplateJsonExportModel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 定义导出
|
||||
*
|
||||
* @author YUNZHUPAASYUNZHUPAAS开发组
|
||||
* @version 5.0.x
|
||||
* @since 2024/4/17 10:38
|
||||
*/
|
||||
@Data
|
||||
public class TemplateExportModel implements Serializable {
|
||||
@Schema(description = "流程定义")
|
||||
private TemplateEntity template;
|
||||
|
||||
@Schema(description = "流程定义版本")
|
||||
private TemplateJsonExportModel flowVersion;
|
||||
|
||||
@Schema(description = "流程节点")
|
||||
private List<TemplateNodeEntity> nodeList;
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
package com.yunzhupaas.flowable.model.template;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class TemplateInfoVO extends TemplateUpForm {
|
||||
private Integer visibleType;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
package com.yunzhupaas.flowable.model.template;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
public class TemplatePageLisVO {
|
||||
@Schema(description = "流程编码")
|
||||
private String enCode;
|
||||
@Schema(description = "流程名称")
|
||||
private String fullName;
|
||||
@Schema(description = "主键")
|
||||
private String id;
|
||||
@Schema(description = "流程分类")
|
||||
private String category;
|
||||
@Schema(description = "流程类型")
|
||||
private Integer type;
|
||||
@Schema(description = "排序码")
|
||||
private Long sortCode;
|
||||
@Schema(description = "图标")
|
||||
private String icon;
|
||||
@Schema(description = "图标背景色")
|
||||
private String iconBackground;
|
||||
@Schema(description = "创建人")
|
||||
private String creatorUser;
|
||||
@Schema(description = "创建时间")
|
||||
private Date creatorTime;
|
||||
@Schema(description = "有效标志")
|
||||
private Integer enabledMark;
|
||||
@Schema(description = "有效标志")
|
||||
private Integer visibleType;
|
||||
@Schema(description = "版本主键")
|
||||
private String flowId;
|
||||
@Schema(description = "流程显示类型(0-全局 1-流程 2-菜单)")
|
||||
private Integer showType;
|
||||
@Schema(description = "状态(0.未上架,1.上架,2.下架-继续审批,3.下架-隐藏审批)")
|
||||
private Integer status;
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user