NodeModel.java 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888
  1. package jnpf.flowable.model.templatenode.nodejson;
  2. import io.swagger.v3.oas.annotations.media.Schema;
  3. import jnpf.database.model.superQuery.SuperQueryJsonModel;
  4. import jnpf.emnus.SearchMethodEnum;
  5. import jnpf.flowable.enums.*;
  6. import jnpf.flowable.model.templatejson.FlowParamModel;
  7. import jnpf.flowable.model.util.FlowConstant;
  8. import jnpf.flowable.model.util.FlowNature;
  9. import jnpf.model.visualJson.FieLdsModel;
  10. import lombok.Data;
  11. import java.util.ArrayList;
  12. import java.util.HashMap;
  13. import java.util.List;
  14. import java.util.Map;
  15. @Data
  16. public class NodeModel {
  17. /**
  18. * 节点类型
  19. */
  20. @Schema(description = "节点类型")
  21. private String type;
  22. /**
  23. * 节点id
  24. */
  25. @Schema(description = "节点id")
  26. private String nodeId;
  27. /**
  28. * 节点名称
  29. */
  30. @Schema(description = "节点名称")
  31. private String nodeName;
  32. /*------------- 全局 -------------*/
  33. /**
  34. * 可见的连线集合,用于条件判断
  35. */
  36. private List<String> connectList = new ArrayList<>();
  37. /**
  38. * 全局参数
  39. */
  40. @Schema(description = "全局参数")
  41. private List<FlowParamModel> globalParameterList = new ArrayList<>();
  42. /**
  43. * 标题类型 0:默认 1:自定义
  44. */
  45. @Schema(description = "标题类型")
  46. private Integer titleType = FlowNature.TitleType;
  47. /**
  48. * 默认名称
  49. */
  50. @Schema(description = "默认名称")
  51. private String defaultContent = "{" + FlowConstant.USER_NAME + "}的{" + FlowConstant.FLOW_NAME + "}";
  52. /**
  53. * 自定义名称
  54. */
  55. @Schema(description = "自定义名称")
  56. private String titleContent;
  57. /**
  58. * 启用签名
  59. */
  60. @Schema(description = "启用签名")
  61. private Boolean hasSign = false;
  62. /**
  63. * 允许撤销
  64. */
  65. @Schema(description = "允许撤销")
  66. private Boolean hasRevoke = false;
  67. /**
  68. * 允许评论
  69. */
  70. @Schema(description = "允许评论")
  71. private Boolean hasComment = true;
  72. /**
  73. * 显示评论已被删除提示
  74. */
  75. @Schema(description = "显示评论已被删除提示")
  76. private Boolean hasCommentDeletedTips = true;
  77. /**
  78. * 审批任务是否签收
  79. */
  80. @Schema(description = "审批任务是否签收")
  81. private Boolean hasSignFor = false;
  82. /**
  83. * 允许审批节点独立配置表单
  84. */
  85. @Schema(description = "允许审批节点独立配置表单")
  86. private Boolean hasAloneConfigureForms = false;
  87. /**
  88. * 拒绝后允许流程继续流转审批
  89. */
  90. @Schema(description = "拒绝后允许流程继续流转审批")
  91. private Boolean hasContinueAfterReject = false;
  92. /**
  93. * 允许发起人对当前逾期节点进行催办
  94. */
  95. @Schema(description = "逾期节点催办")
  96. private Boolean hasInitiatorPressOverdueNode = true;
  97. /**
  98. * 校验发起杈限
  99. */
  100. @Schema(description = "校验发起杈限")
  101. private Boolean hasPermission = false;
  102. /**
  103. * 自动提交规则
  104. */
  105. @Schema(description = "自动提交规则")
  106. private AutoSubmitConfig autoSubmitConfig = new AutoSubmitConfig();
  107. /**
  108. * 流程撤回规则 1: 不允许撤回 2: 发起节点允许撤回 3:所有节点允许撤回
  109. */
  110. @Schema(description = "流程撤回规则")
  111. private Integer recallRule = FlowNature.NotAllowed;
  112. /**
  113. * 异常处理规则 1:超级管理员 2:指定人员 3:上一节点审批人指定 4:默认审批通过 5:无法提交
  114. */
  115. @Schema(description = "异常处理规则")
  116. private Integer errorRule = ErrorRuleEnum.administrator.getCode();
  117. /**
  118. * 异常处理指定人员
  119. */
  120. @Schema(description = "异常处理指定人员")
  121. private List<String> errorRuleUser = new ArrayList<>();
  122. /**
  123. * 流程归档配置
  124. */
  125. @Schema(description = "流程归档配置")
  126. private FileConfig fileConfig = new FileConfig();
  127. /*------------- 开始 -------------*/
  128. /**
  129. * 流程表单id
  130. */
  131. @Schema(description = "流程表单id")
  132. private String formId;
  133. /**
  134. * 流程表单名称
  135. */
  136. @Schema(description = "流程表单名称")
  137. private String formName;
  138. /**
  139. * 流程表单权限
  140. */
  141. @Schema(description = "流程表单权限")
  142. private List<Map<String, Object>> formOperates = new ArrayList<>();
  143. /**
  144. * 发起权限 1.公开 2.权限设置
  145. */
  146. @Schema(description = "发起权限 1.公开 2.权限设置")
  147. private Integer launchPermission = FlowNature.LaunchPermission;
  148. /**
  149. * 打印配置
  150. */
  151. @Schema(description = "打印配置")
  152. private PrintConfig printConfig = new PrintConfig();
  153. /**
  154. * 限时设置配置
  155. */
  156. @Schema(description = "限时设置配置")
  157. private TimeConfig timeLimitConfig = new TimeConfig();
  158. /**
  159. * 提醒配置
  160. */
  161. @Schema(description = "提醒配置")
  162. private TimeConfig noticeConfig = new TimeConfig();
  163. /**
  164. * 超时设置
  165. */
  166. @Schema(description = "超时设置")
  167. private TimeConfig overTimeConfig = new TimeConfig();
  168. /**
  169. * 流程待办通知
  170. */
  171. @Schema(description = "流程待办通知")
  172. public MsgConfig waitMsgConfig = new MsgConfig();
  173. /**
  174. * 流程结束通知
  175. */
  176. @Schema(description = "流程结束通知")
  177. public MsgConfig endMsgConfig = new MsgConfig();
  178. /**
  179. * 节点同意通知
  180. */
  181. @Schema(description = "节点同意通知")
  182. public MsgConfig approveMsgConfig = new MsgConfig();
  183. /**
  184. * 节点拒绝通知
  185. */
  186. @Schema(description = "节点拒绝通知")
  187. public MsgConfig rejectMsgConfig = new MsgConfig();
  188. /**
  189. * 节点退回通知
  190. */
  191. @Schema(description = "节点退回通知")
  192. public MsgConfig backMsgConfig = new MsgConfig();
  193. /**
  194. * 节点抄送通知
  195. */
  196. @Schema(description = "节点抄送通知")
  197. public MsgConfig copyMsgConfig = new MsgConfig();
  198. /**
  199. * 节点超时通知
  200. */
  201. @Schema(description = "节点超时通知")
  202. public MsgConfig overTimeMsgConfig = new MsgConfig();
  203. /**
  204. * 节点提醒通知
  205. */
  206. @Schema(description = "节点提醒通知")
  207. public MsgConfig noticeMsgConfig = new MsgConfig();
  208. /**
  209. * 节点提醒通知
  210. */
  211. @Schema(description = "评论提醒通知")
  212. public MsgConfig commentMsgConfig = new MsgConfig();
  213. /*------------- 审批 -------------*/
  214. /**
  215. * 数据传递
  216. */
  217. @Schema(description = "数据传递")
  218. private List<Assign> assignList = new ArrayList<>();
  219. /**
  220. * 指定审批人
  221. */
  222. @Schema(description = "指定审批人")
  223. private Integer assigneeType = OperatorEnum.Nominator.getCode();
  224. /**
  225. * 是否候选人
  226. */
  227. @Schema(description = "是否候选人")
  228. private Boolean isCandidates = false;
  229. /**
  230. * 直属主管审批人类型,1.发起人 2.上节点审批人
  231. */
  232. private Integer approverType = FlowNature.Initiator;
  233. /**
  234. * 发起者主管 1:直属 2:第二级主管 .... 10:第10级主管
  235. */
  236. @Schema(description = "发起者主管")
  237. private Integer managerLevel = 1;
  238. /**
  239. * 表单字段审核方式的类型 1:用户 2:部门 3:岗位 4:角色 5:分组
  240. */
  241. @Schema(description = "表单字段审核方式的类型")
  242. private Integer formFieldType = 1;
  243. /**
  244. * 表单字段
  245. */
  246. @Schema(description = "表单字段")
  247. private String formField;
  248. /**
  249. * 审批节点id
  250. */
  251. @Schema(description = "审批节点id")
  252. private String approverNodeId;
  253. /**
  254. * 审批人集合
  255. */
  256. @Schema(description = "审批人集合")
  257. private List<String> approvers = new ArrayList<>();
  258. /**
  259. * 审批人依次审批顺序
  260. */
  261. @Schema(description = "审批人依次审批顺序")
  262. private List<String> approversSortList = new ArrayList<>();
  263. /**
  264. * 逐级审批
  265. */
  266. @Schema(description = "逐级审批")
  267. private ApproversConfig approversConfig = new ApproversConfig();
  268. /**
  269. * 审批人范围 1:无审批人范围 2:同一部门 3:同一岗位 4:发起人上级 5:发起人下属 6:同一公司
  270. */
  271. @Schema(description = "审批人范围")
  272. private Integer extraRule = ExtraRuleEnum.none.getCode();
  273. /**
  274. * 会签规则 0:或签 1:会签 2:依次审批
  275. */
  276. @Schema(description = "会签规则")
  277. private Integer counterSign = FlowNature.FixedApprover;
  278. /**
  279. * 会签流转配置
  280. */
  281. @Schema(description = "会签流转配置")
  282. private CounterSignConfig counterSignConfig = new CounterSignConfig();
  283. /**
  284. * 抄送人集合
  285. */
  286. @Schema(description = "抄送人集合")
  287. private List<String> circulateUser = new ArrayList<>();
  288. /**
  289. * 抄送人范围
  290. */
  291. @Schema(description = "抄送人范围")
  292. private Integer extraCopyRule = ExtraRuleEnum.none.getCode();
  293. /**
  294. * 允许自选抄送人
  295. */
  296. @Schema(description = "允许自选抄送人")
  297. private Boolean isCustomCopy = false;
  298. /**
  299. * 抄送给流程发起人
  300. */
  301. @Schema(description = "抄送给流程发起人")
  302. private Boolean isInitiatorCopy = false;
  303. /**
  304. * 抄送给表单变量
  305. */
  306. @Schema(description = "抄送给表单变量")
  307. private Boolean isFormFieldCopy = false;
  308. /**
  309. * 表单字段类型 1:用户 2:部门 3:岗位 4:角色 5:分组
  310. */
  311. @Schema(description = "表单字段类型")
  312. private Integer copyFormFieldType = 1;
  313. /**
  314. * 表单字段
  315. */
  316. @Schema(description = "表单字段")
  317. private String copyFormField;
  318. /**
  319. *
  320. */
  321. @Schema(description = "")
  322. private Boolean hasFile = false;
  323. /**
  324. * 节点参数
  325. */
  326. @Schema(description = "节点参数")
  327. private List<GroupsModel> parameterList = new ArrayList<>();
  328. /**
  329. * 辅助信息
  330. */
  331. @Schema(description = "辅助信息")
  332. private List<AuxiliaryInfo> auxiliaryInfo = new ArrayList<>();
  333. /**
  334. * 自动同意规则,默认不启用
  335. */
  336. @Schema(description = "自动同意规则,默认不启用")
  337. private Boolean hasAutoApprover = false;
  338. /**
  339. * 自动同意规则
  340. */
  341. @Schema(description = "自动同意规则")
  342. private AutoAuditRule autoAuditRule;
  343. /**
  344. * 自动拒绝规则
  345. */
  346. @Schema(description = "自动拒绝规则")
  347. private AutoAuditRule autoRejectRule;
  348. /**
  349. * 通过按钮
  350. */
  351. @Schema(description = "通过按钮")
  352. private Boolean hasAuditBtn = true;
  353. /**
  354. * 通过按钮名称
  355. */
  356. @Schema(description = "通过按钮名称")
  357. private String auditBtnText = "同意";
  358. /**
  359. * 拒绝按钮
  360. */
  361. @Schema(description = "拒绝按钮")
  362. private Boolean hasRejectBtn = true;
  363. /**
  364. * 拒绝按钮名称
  365. */
  366. @Schema(description = "拒绝按钮名称")
  367. private String rejectBtnText = "拒绝";
  368. /**
  369. * 退回按钮
  370. */
  371. @Schema(description = "退回按钮")
  372. private Boolean hasBackBtn = false;
  373. /**
  374. * 退回按钮名称
  375. */
  376. @Schema(description = "退回按钮名称")
  377. private String backBtnText = "退回";
  378. /**
  379. * 加签按钮
  380. */
  381. @Schema(description = "加签按钮")
  382. private Boolean hasFreeApproverBtn = false;
  383. /**
  384. * 加签按钮名称
  385. */
  386. @Schema(description = "加签按钮名称")
  387. private String freeApproverBtnText = "加签";
  388. /**
  389. * 减签按钮
  390. */
  391. @Schema(description = "减签按钮")
  392. private Boolean hasReduceApproverBtn = false;
  393. /**
  394. * 减签按钮名称
  395. */
  396. @Schema(description = "减签按钮名称")
  397. private String reduceApproverBtnText = "减签";
  398. /**
  399. * 转审按钮
  400. */
  401. @Schema(description = "转审按钮")
  402. private Boolean hasTransferBtn = false;
  403. /**
  404. * 转审按钮名称
  405. */
  406. @Schema(description = "转审按钮名称")
  407. private String transferBtnText = "转审";
  408. /**
  409. * 协办按钮
  410. */
  411. @Schema(description = "协办按钮")
  412. private Boolean hasAssistBtn = false;
  413. /**
  414. * 协办按钮名称
  415. */
  416. @Schema(description = "协办按钮名称")
  417. private String assistBtnText = "协办";
  418. /**
  419. * 暂存按钮
  420. */
  421. @Schema(description = "暂存按钮")
  422. private Boolean hasSaveAuditBtn = false;
  423. /**
  424. * 暂存按钮名称
  425. */
  426. @Schema(description = "暂存按钮名称")
  427. private String saveAuditBtnText = "暂存";
  428. /**
  429. * 分流规则 inclusion: 根据条件多分支流转(包容网关) exclusive:根据条件单分支流转(排它网关) parallel:所有分支都流转(并行网关)
  430. */
  431. @Schema(description = "分流规则")
  432. private String divideRule = DivideRuleEnum.INCLUSION.getType();
  433. /**
  434. * 接口服务
  435. */
  436. @Schema(description = "接口服务")
  437. private InterfaceConfig interfaceConfig = new InterfaceConfig();
  438. /**
  439. * 内容
  440. */
  441. @Schema(description = "内容")
  442. private String content;
  443. /**
  444. * 子流程发起权限
  445. */
  446. @Schema(description = "子流程发起权限")
  447. private Integer subFlowLaunchPermission = 1;
  448. /**
  449. * 退回设置,被退回的节点重新提交时
  450. */
  451. private Integer backType = FlowNature.RestartType;
  452. /**
  453. * 设置退回到的节点
  454. */
  455. private String backNodeCode = FlowNature.Start;
  456. /*------------- 子流程 -------------*/
  457. /**
  458. * 子流程同步 0:同步 1:异步
  459. */
  460. @Schema(description = "子流程同步")
  461. private Integer isAsync = FlowNature.ChildSync;
  462. /**
  463. * 自动提交 0:否 1:是
  464. */
  465. @Schema(description = "自动提交")
  466. private Integer autoSubmit = 0;
  467. /**
  468. * 节点提醒通知
  469. */
  470. @Schema(description = "节点提醒通知")
  471. public MsgConfig launchMsgConfig = new MsgConfig();
  472. /**
  473. * 流程版本主键
  474. */
  475. @Schema(description = "流程版本主键")
  476. private String flowId;
  477. /**
  478. * 创建规则 0:同时创建 1:依次创建
  479. */
  480. @Schema(description = "创建规则 0:同时创建 1:依次创建")
  481. private Integer createRule = FlowNature.ChildSync;
  482. /*------------- 线 -------------*/
  483. /**
  484. * 默认分支
  485. */
  486. @Schema(description = "默认分支")
  487. private Boolean isDefault = false;
  488. /**
  489. * 连接线条件
  490. */
  491. @Schema(description = "连接线条件")
  492. private List<ProperCond> conditions = new ArrayList<>();
  493. /**
  494. * 逻辑
  495. */
  496. @Schema(description = "逻辑")
  497. private String matchLogic = SearchMethodEnum.And.getSymbol();
  498. /*--------------------------*/
  499. /**
  500. * 退回事件
  501. **/
  502. @Schema(description = "退回事件")
  503. private FuncConfig backFuncConfig = new FuncConfig();
  504. /**
  505. * 拒绝事件
  506. **/
  507. @Schema(description = "拒绝事件")
  508. private FuncConfig rejectFuncConfig = new FuncConfig();
  509. /**
  510. * 同意事件
  511. **/
  512. @Schema(description = "同意事件")
  513. private FuncConfig approveFuncConfig = new FuncConfig();
  514. /**
  515. * 开始事件
  516. **/
  517. @Schema(description = "开始事件")
  518. private FuncConfig initFuncConfig = new FuncConfig();
  519. /**
  520. * 结束事件
  521. **/
  522. @Schema(description = "结束事件")
  523. private FuncConfig endFuncConfig = new FuncConfig();
  524. /**
  525. * 超时事件
  526. **/
  527. @Schema(description = "超时事件")
  528. private FuncConfig overtimeFuncConfig = new FuncConfig();
  529. /**
  530. * 提醒事件
  531. */
  532. @Schema(description = "提醒事件")
  533. private FuncConfig noticeFuncConfig = new FuncConfig();
  534. /**
  535. * 节点撤回事件
  536. **/
  537. @Schema(description = "节点撤回事件")
  538. private FuncConfig recallFuncConfig = new FuncConfig();
  539. /**
  540. * 发起撤回事件
  541. **/
  542. @Schema(description = "发起撤回事件")
  543. private FuncConfig flowRecallFuncConfig = new FuncConfig();
  544. /*------------- 触发 -------------*/
  545. /**
  546. * 触发事件 1-表单事件 2-审批事件 3-空白事件
  547. */
  548. @Schema(description = "触发事件")
  549. private Integer triggerEvent = 1;
  550. /**
  551. * 触发表单事件 1-新增 2-修改 3-删除
  552. */
  553. @Schema(description = "触发表单事件")
  554. private Integer triggerFormEvent = 1;
  555. /**
  556. * 1-同意 2-拒绝 3-退回 4-确认办理
  557. */
  558. @Schema(description = "")
  559. private List<Integer> actionList = new ArrayList<>();
  560. /**
  561. * 表单事件-修改数据-修改字段
  562. */
  563. @Schema(description = "")
  564. private List<String> updateFieldList = new ArrayList<>();
  565. /**
  566. * 触发条件
  567. */
  568. @Schema(description = "触发条件")
  569. private List<SuperQueryJsonModel> ruleList = new ArrayList<>();
  570. /**
  571. * 条件规则匹配逻辑
  572. */
  573. @Schema(description = "条件规则匹配逻辑")
  574. private String ruleMatchLogic = SearchMethodEnum.And.getSymbol();
  575. /**
  576. * 通知人类型
  577. */
  578. @Schema(description = "通知人类型")
  579. private List<String> msgUserType = new ArrayList<>();
  580. /**
  581. * 执行失败通知
  582. */
  583. @Schema(description = "执行失败通知")
  584. private MsgConfig failMsgConfig = new MsgConfig();
  585. /**
  586. * 开始执行通知
  587. */
  588. @Schema(description = "开始执行通知")
  589. private MsgConfig startMsgConfig = new MsgConfig();
  590. /**
  591. * cron表达式
  592. */
  593. @Schema(description = "cron表达式")
  594. private String cron;
  595. /**
  596. * 触发结束时间类型
  597. */
  598. @Schema(description = "触发结束时间类型")
  599. private Integer endTimeType;
  600. /**
  601. * 触发次数
  602. */
  603. @Schema(description = "触发次数")
  604. private Integer endLimit;
  605. /**
  606. * webhookUrl
  607. */
  608. @Schema(description = "webhookUrl")
  609. private String webhookUrl;
  610. /**
  611. * webhook获取接口字段Url
  612. */
  613. @Schema(description = "webhook获取接口字段Url")
  614. private String webhookGetFieldsUrl;
  615. /**
  616. * webhook获取接口字段识别码
  617. */
  618. @Schema(description = "webhook获取接口字段识别码")
  619. private String webhookRandomStr;
  620. /**
  621. * 通知触发消息id
  622. */
  623. @Schema(description = "通知触发消息id")
  624. private String noticeId;
  625. /**
  626. * 分组id
  627. */
  628. @Schema(description = "分组id")
  629. private String groupId;
  630. /*------------- 获取数据 -------------*/
  631. /**
  632. * 菜单id
  633. */
  634. private String id;
  635. /**
  636. * 表单类型 1-从表单中获取 2-从流程中获取 3-从数据接口中获取 4-从子表
  637. */
  638. @Schema(description = "表单类型")
  639. private Integer formType = 1;
  640. /**
  641. * 接口参数
  642. */
  643. @Schema(description = "接口参数")
  644. private List<IntegrateTplModel> interfaceTemplateJson = new ArrayList<>();
  645. /**
  646. * 表单字段
  647. */
  648. @Schema(description = "表单字段")
  649. private List<FieLdsModel> formFieldList = new ArrayList<>();
  650. /**
  651. * 排序
  652. */
  653. @Schema(description = "排序")
  654. private List<SortModel> sortList = new ArrayList<>();
  655. /*------------- 新增数据 -------------*/
  656. /**
  657. * 字段设置
  658. */
  659. @Schema(description = "字段设置")
  660. private List<TemplateJsonModel> transferList = new ArrayList<>();
  661. /**
  662. * 数据源
  663. */
  664. @Schema(description = "数据源")
  665. private String dataSourceForm;
  666. /*------------- 更新数据 -------------*/
  667. /**
  668. * 没有可修改的数据时,向对应表单中新增一条数据
  669. */
  670. @Schema(description = "是否新增数据")
  671. private Boolean unFoundRule = false;
  672. /*------------- 删除数据 -------------*/
  673. /**
  674. * 删除类型
  675. */
  676. @Schema(description = "删除类型")
  677. private Integer deleteType;
  678. /**
  679. * 表类型 0-主表 1-子表
  680. */
  681. @Schema(description = "表类型")
  682. private Integer tableType;
  683. /**
  684. * 子表
  685. */
  686. @Schema(description = "子表")
  687. private String subTable;
  688. /**
  689. * 删除条件 1-存在 2-不存在
  690. */
  691. @Schema(description = "删除条件")
  692. private Integer deleteCondition;
  693. /*------------- 数据接口节点 -------------*/
  694. /**
  695. * 数据接口参数
  696. */
  697. @Schema(description = "数据接口参数")
  698. private List<IntegrateTplModel> templateJson = new ArrayList<>();
  699. /*------------- 外部节点 -------------*/
  700. /**
  701. * 外部接口参数
  702. */
  703. @Schema(description = "外部接口参数")
  704. private Map<String, List<TemplateJsonModel>> outsideOptions = new HashMap<>();
  705. /*------------- 消息通知节点 -------------*/
  706. /**
  707. * 通知人来源类型
  708. */
  709. @Schema(description = "通知人来源类型")
  710. private Integer msgUserIdsSourceType = FieldEnum.Field.getCode();
  711. /**
  712. * 通知人
  713. */
  714. @Schema(description = "通知人")
  715. private List<String> msgUserIds = new ArrayList<>();
  716. /**
  717. * 消息id
  718. */
  719. @Schema(description = "消息id")
  720. private String msgId;
  721. /**
  722. * 消息名称
  723. */
  724. @Schema(description = "消息名称")
  725. private String msgName;
  726. /**
  727. * 消息接口参数
  728. */
  729. @Schema(description = "消息接口参数")
  730. private List<IntegrateTplModel> msgTemplateJson = new ArrayList<>();
  731. /*------------- 发起审批节点 -------------*/
  732. /**
  733. * 发起人
  734. */
  735. @Schema(description = "发起人")
  736. private List<String> initiator = new ArrayList<>();
  737. /*------------- 创建日程 -------------*/
  738. /**
  739. * 日程标题
  740. */
  741. @Schema(description = "日程标题")
  742. private String title;
  743. /**
  744. * 日程内容
  745. */
  746. @Schema(description = "日程内容")
  747. private String contents;
  748. /**
  749. * 日程附件
  750. */
  751. @Schema(description = "日程附件")
  752. private String files;
  753. /**
  754. * 日程全天
  755. */
  756. @Schema(description = "日程全天")
  757. private Integer allDay = 0;
  758. /**
  759. * 日程开始日期
  760. */
  761. @Schema(description = "日程开始日期")
  762. private String startDay;
  763. /**
  764. * 日程开始时间
  765. */
  766. @Schema(description = "日程开始时间")
  767. private String startTime;
  768. /**
  769. * 日程时长
  770. */
  771. @Schema(description = "日程时长")
  772. private Integer duration = 0;
  773. /**
  774. * 日程结束日期
  775. */
  776. @Schema(description = "日程结束日期")
  777. private String endDay;
  778. /**
  779. * 日程结束时间
  780. */
  781. @Schema(description = "日程结束时间")
  782. private String endTime;
  783. /**
  784. * 日程创建人
  785. */
  786. @Schema(description = "日程创建人")
  787. private String creatorUserId;
  788. /**
  789. * 日程参与人
  790. */
  791. @Schema(description = "日程参与人")
  792. private List<String> toUserIds = new ArrayList<>();
  793. /**
  794. * 日程标签颜色
  795. */
  796. @Schema(description = "日程标签颜色")
  797. private String color;
  798. /**
  799. * 日程提醒时间
  800. */
  801. @Schema(description = "日程提醒时间")
  802. private Integer reminderTime = -1;
  803. /**
  804. * 日程提醒方式
  805. */
  806. @Schema(description = "日程提醒方式")
  807. private Integer reminderType = 1;
  808. /**
  809. * 日程发送配置
  810. */
  811. @Schema(description = "日程发送配置")
  812. private String send;
  813. /**
  814. * 日程发送配置名称
  815. */
  816. @Schema(description = "日程发送配置名称")
  817. private String sendName;
  818. /**
  819. * 日程分类
  820. */
  821. @Schema(description = "日程分类")
  822. private String category;
  823. /**
  824. * 日程重复提醒1.不重复 2.每天重复 3.每周重复 4.每月重复 5.每年重复
  825. */
  826. @Schema(description = "日程重复提醒")
  827. private Integer repetition = 1;
  828. /**
  829. * 日程结束重复
  830. */
  831. @Schema(description = "日程结束重复")
  832. private Long repeatTime;
  833. /**
  834. * 日程开始时间类型
  835. */
  836. @Schema(description = "开始时间类型")
  837. private Integer startDaySourceType = FieldEnum.Field.getCode();
  838. /**
  839. * 日程结束时间类型
  840. */
  841. @Schema(description = "结束时间类型")
  842. private Integer endDaySourceType = FieldEnum.Field.getCode();
  843. /**
  844. * 日程标题类型
  845. */
  846. @Schema(description = "日程标题类型")
  847. private Integer titleSourceType = FieldEnum.Field.getCode();
  848. /**
  849. * 日程内容类型
  850. */
  851. @Schema(description = "日程内容类型")
  852. private Integer contentsSourceType = FieldEnum.Field.getCode();
  853. /**
  854. * 日程创建人类型
  855. */
  856. @Schema(description = "日程创建人类型")
  857. private Integer creatorUserIdSourceType = FieldEnum.Field.getCode();
  858. /**
  859. * 日程参与人类型
  860. */
  861. @Schema(description = "日程参与人类型")
  862. private Integer toUserIdsSourceType = FieldEnum.Field.getCode();
  863. }