TaskApi.java 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. package jnpf.workflow.service;
  2. import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
  3. import jnpf.base.ActionResult;
  4. import jnpf.exception.WorkFlowException;
  5. import jnpf.flowable.entity.RecordEntity;
  6. import jnpf.flowable.entity.TaskEntity;
  7. import jnpf.flowable.model.task.FileModel;
  8. import jnpf.flowable.model.task.FlowModel;
  9. import jnpf.flowable.model.task.TaskTo;
  10. import java.util.List;
  11. /**
  12. * 类的描述
  13. *
  14. * @author JNPF@YinMai Info. Co., Ltd
  15. * @version 5.0.x
  16. * @since 2024/5/28 14:35
  17. */
  18. public interface TaskApi {
  19. /**
  20. * 获取归档所需的信息
  21. *
  22. * @param taskId 任务主键
  23. */
  24. FileModel getFileModel(String taskId) throws WorkFlowException;
  25. /**
  26. * 信息
  27. *
  28. * @param id 主键值
  29. * @param columns 指定获取的列数据
  30. */
  31. TaskEntity getInfoSubmit(String id, SFunction<TaskEntity, ?>... columns);
  32. /**
  33. * 信息
  34. *
  35. * @param ids 主键值
  36. * @param columns 指定获取的列数据
  37. */
  38. List<TaskEntity> getInfosSubmit(String[] ids, SFunction<TaskEntity, ?>... columns);
  39. /**
  40. * 删除
  41. *
  42. * @param taskEntity 任务实体
  43. */
  44. void delete(TaskEntity taskEntity) throws Exception;
  45. /**
  46. * 发起流程
  47. *
  48. * @param flowModel
  49. * @throws Exception
  50. */
  51. void saveOrSubmit(FlowModel flowModel) throws Exception;
  52. /**
  53. * 根据任务主键获取记录集合
  54. *
  55. * @param taskId 任务主键
  56. */
  57. List<RecordEntity> getRecordList(String taskId);
  58. /**
  59. * 更新归档状态
  60. *
  61. * @param taskId 任务主键
  62. */
  63. void updateIsFile(String taskId);
  64. /**
  65. * 判断是否存在未签收的经办
  66. */
  67. Boolean checkSign();
  68. /**
  69. * 判断是否存在未办理的经办
  70. */
  71. Boolean checkTodo();
  72. /**
  73. * 发起流程
  74. *
  75. * @param flowModel 参数(templateId、userIds、formDataList)
  76. */
  77. ActionResult launchFlow(FlowModel flowModel);
  78. /**
  79. * 获取流程数量
  80. */
  81. TaskTo getFlowTodoCount(TaskTo taskTo);
  82. /**
  83. * 获取逐级的岗位和组织
  84. * @return
  85. */
  86. List<String> getStepList();
  87. }