FlowModel.java 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222
  1. package jnpf.flowable.model.task;
  2. import com.fasterxml.jackson.annotation.JsonInclude;
  3. import io.swagger.v3.oas.annotations.media.Schema;
  4. import jnpf.base.UserInfo;
  5. import jnpf.flowable.entity.*;
  6. import jnpf.flowable.enums.EventEnum;
  7. import jnpf.flowable.enums.OpTypeEnum;
  8. import jnpf.flowable.enums.TaskStatusEnum;
  9. import jnpf.flowable.model.operator.AddSignModel;
  10. import jnpf.flowable.model.templatejson.TemplateJsonInfoVO;
  11. import jnpf.flowable.model.templatenode.FlowErrorModel;
  12. import jnpf.flowable.model.templatenode.TaskNodeModel;
  13. import jnpf.flowable.model.templatenode.nodejson.NodeModel;
  14. import jnpf.flowable.model.util.FlowNature;
  15. import lombok.Data;
  16. import java.util.ArrayList;
  17. import java.util.HashMap;
  18. import java.util.List;
  19. import java.util.Map;
  20. /**
  21. * @author JNPF开发平台组
  22. * @version V3.1.0
  23. * @copyright 引迈信息技术有限公司
  24. * @date 2021/3/15 9:17
  25. */
  26. @Data
  27. @JsonInclude
  28. public class FlowModel extends FlowHandleModel {
  29. /**
  30. * 判断新增
  31. **/
  32. @Schema(description = "判断新增")
  33. private String id;
  34. /**
  35. * 版本ID
  36. **/
  37. @Schema(description = "版本ID")
  38. private String flowId;
  39. /**
  40. * 部署id
  41. **/
  42. @Schema(description = "部署id")
  43. private String deploymentId;
  44. private TemplateJsonEntity jsonEntity;
  45. private TaskEntity taskEntity = new TaskEntity();
  46. private List<TemplateNodeEntity> nodeEntityList = new ArrayList<>();
  47. private Map<String, NodeModel> nodes = new HashMap<>();
  48. private String flowableTaskId;
  49. private TemplateNodeEntity nodeEntity = new TemplateNodeEntity();
  50. /**
  51. * 加签参数
  52. */
  53. private AddSignModel addSignParameter = new AddSignModel();
  54. /**
  55. * 审批处理标识,0.拒绝 1.同意
  56. */
  57. private Integer handleStatus = FlowNature.AuditCompletion;
  58. /**
  59. * 任务详情类型
  60. * -1-我发起的新建/编辑
  61. * 0-我发起的详情
  62. * 1-待签事宜
  63. * 2-待办事宜
  64. * 3-在办事宜
  65. * 4-已办事宜
  66. * 5-抄送事宜
  67. * 6-流程监控
  68. */
  69. private String opType = OpTypeEnum.LaunchCreate.getType();
  70. private TemplateJsonInfoVO jsonInfoVO = new TemplateJsonInfoVO();
  71. private OperatorEntity operatorEntity = new OperatorEntity();
  72. private RecordEntity recordEntity = new RecordEntity();
  73. private List<TaskEntity> taskList = new ArrayList<>();
  74. private TemplateEntity templateEntity = new TemplateEntity();
  75. /**
  76. * 判断撤回的标识 1.发起撤回 2.审批撤回
  77. */
  78. private Integer flag = FlowNature.InitiateFlag;
  79. /**
  80. * 事件状态
  81. */
  82. private Integer eventStatus = EventEnum.None.getStatus();
  83. /**
  84. * 判断撤回时,为true会抛出异常
  85. */
  86. private Boolean isException = false;
  87. /**
  88. * 判断是否校验发起人权限
  89. */
  90. private Boolean hasPermission = false;
  91. /**
  92. * 下一级节点编码
  93. */
  94. private List<String> nextCodes = new ArrayList<>();
  95. /**
  96. * 挂起,0.全部 1.仅主流程
  97. */
  98. private Integer pause = 0;
  99. /**
  100. * 流程结束是否更新为结束节点
  101. */
  102. private Boolean finishFlag = true;
  103. /**
  104. * 子流程节点编码
  105. */
  106. private String subCode;
  107. /**
  108. * 子流程参数
  109. */
  110. private SubParameterModel subParameter;
  111. /**
  112. * 流程详情节点
  113. */
  114. private List<TaskNodeModel> nodeList = new ArrayList<>();
  115. /**
  116. * 是否流程,0-菜单 1-发起
  117. */
  118. private Integer isFlow = 0;
  119. /**
  120. * 签名主键
  121. */
  122. private String signId;
  123. /**
  124. * 下次继续使用此签名
  125. */
  126. private Boolean useSignNext = false;
  127. /**
  128. * 触发动作,1同意 2拒绝 3退回 4办理
  129. */
  130. private Integer action;
  131. /**
  132. * 拒绝直接结束的触发标识
  133. */
  134. private Boolean rejectTrigger = false;
  135. /**
  136. * 退回id,任务流程为退回触发时,获取最后一个执行节点的id用于退回
  137. */
  138. private String backId;
  139. /**
  140. * 紧急程度
  141. */
  142. @Schema(description = "紧急程度")
  143. private Integer flowUrgent = 1;
  144. /**
  145. * 0.保存 1.提交
  146. **/
  147. @Schema(description = "类型")
  148. private Integer status = TaskStatusEnum.TO_BE_SUBMIT.getCode();
  149. /**
  150. * 子流程
  151. **/
  152. @Schema(description = "子流程")
  153. private String parentId = FlowNature.ParentId;
  154. /**
  155. * 创建人
  156. **/
  157. @Schema(description = "创建人")
  158. private String userId;
  159. /**
  160. * 被委托人
  161. */
  162. @Schema(description = "被委托人")
  163. private String delegateUser;
  164. /**
  165. * 当前经办id
  166. **/
  167. @Schema(description = "当前经办id")
  168. private String operatorId;
  169. /**
  170. * 任务主键
  171. */
  172. @Schema(description = "任务主键")
  173. private String taskId;
  174. /**
  175. * 子流程,是否异步
  176. **/
  177. private Integer isAsync = FlowNature.ChildSync;
  178. /**
  179. * 用户信息
  180. */
  181. private UserInfo userInfo;
  182. /**
  183. * 抄送消息标识
  184. */
  185. private Boolean copyMsgFlag = true;
  186. /**
  187. * 自动转审,走指派方法的标识
  188. */
  189. private Boolean autoTransferFlag = false;
  190. /**
  191. * 是否自动审批
  192. */
  193. private Boolean autoAudit = false;
  194. /**
  195. * 子流程是否暂存标识
  196. */
  197. private Boolean subFlow = false;
  198. private List<FlowErrorModel> errorList = new ArrayList<>();
  199. /**
  200. * 流程模板id
  201. */
  202. private String templateId;
  203. /**
  204. * 发起人
  205. */
  206. private List<String> userIds = new ArrayList<>();
  207. /**
  208. * 表单数据集合
  209. */
  210. private List<Map<String, Object>> formDataList = new ArrayList<>();
  211. }