From f1208474f771a1c233d7425c8ed13fbaa0d521ac Mon Sep 17 00:00:00 2001 From: baoshiwei <baoshiwei@shlanbao.cn> Date: 星期三, 12 三月 2025 09:35:13 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/5.X' into 5.X --- ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwInstanceService.java | 159 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 159 insertions(+), 0 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwInstanceService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwInstanceService.java new file mode 100644 index 0000000..99729c2 --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwInstanceService.java @@ -0,0 +1,159 @@ +package org.dromara.workflow.service; + +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.warm.flow.orm.entity.FlowInstance; +import org.dromara.workflow.domain.bo.FlowCancelBo; +import org.dromara.workflow.domain.bo.FlowInstanceBo; +import org.dromara.workflow.domain.bo.FlowInvalidBo; +import org.dromara.workflow.domain.vo.FlowInstanceVo; + +import java.util.List; +import java.util.Map; + +/** + * 娴佺▼瀹炰緥 鏈嶅姟灞� + * + * @author may + */ +public interface IFlwInstanceService { + + /** + * 鍒嗛〉鏌ヨ姝e湪杩愯鐨勬祦绋嬪疄渚� + * + * @param flowInstanceBo 娴佺▼瀹炰緥 + * @param pageQuery 鍒嗛〉 + * @return 缁撴灉 + */ + TableDataInfo<FlowInstanceVo> selectRunningInstanceList(FlowInstanceBo flowInstanceBo, PageQuery pageQuery); + + /** + * 鍒嗛〉鏌ヨ宸茬粨鏉熺殑娴佺▼瀹炰緥 + * + * @param flowInstanceBo 娴佺▼瀹炰緥 + * @param pageQuery 鍒嗛〉 + * @return 缁撴灉 + */ + TableDataInfo<FlowInstanceVo> selectFinishInstanceList(FlowInstanceBo flowInstanceBo, PageQuery pageQuery); + + /** + * 鏍规嵁涓氬姟id鏌ヨ娴佺▼瀹炰緥璇︾粏淇℃伅 + * + * @param businessId 涓氬姟id + * @return 缁撴灉 + */ + FlowInstanceVo queryByBusinessId(Long businessId); + + /** + * 鎸夌収涓氬姟id鏌ヨ娴佺▼瀹炰緥 + * + * @param businessId 涓氬姟id + * @return 缁撴灉 + */ + FlowInstance selectInstByBusinessId(String businessId); + + /** + * 鎸夌収瀹炰緥id鏌ヨ娴佺▼瀹炰緥 + * + * @param instanceId 瀹炰緥id + * @return 缁撴灉 + */ + FlowInstance selectInstById(Long instanceId); + + /** + * 鎸夌収瀹炰緥id鏌ヨ娴佺▼瀹炰緥 + * + * @param instanceIds 瀹炰緥id + * @return 缁撴灉 + */ + List<FlowInstance> selectInstListByIdList(List<Long> instanceIds); + + /** + * 鎸夌収涓氬姟id鍒犻櫎娴佺▼瀹炰緥 + * + * @param businessIds 涓氬姟id + * @return 缁撴灉 + */ + boolean deleteByBusinessIds(List<Long> businessIds); + + /** + * 鎸夌収瀹炰緥id鍒犻櫎娴佺▼瀹炰緥 + * + * @param instanceIds 瀹炰緥id + * @return 缁撴灉 + */ + boolean deleteByInstanceIds(List<Long> instanceIds); + + /** + * 鎾ら攢娴佺▼ + * + * @param bo 鍙傛暟 + * @return 缁撴灉 + */ + boolean cancelProcessApply(FlowCancelBo bo); + + /** + * 鑾峰彇褰撳墠鐧婚檰浜哄彂璧风殑娴佺▼瀹炰緥 + * + * @param instanceBo 娴佺▼瀹炰緥 + * @param pageQuery 鍒嗛〉 + * @return 缁撴灉 + */ + TableDataInfo<FlowInstanceVo> selectCurrentInstanceList(FlowInstanceBo instanceBo, PageQuery pageQuery); + + /** + * 鑾峰彇娴佺▼鍥�,娴佺▼璁板綍 + * + * @param businessId 涓氬姟id + * @return 缁撴灉 + */ + Map<String, Object> flowImage(String businessId); + + /** + * 鎸夌収瀹炰緥id鏇存柊鐘舵�� + * + * @param instanceId 瀹炰緥id + * @param status 鐘舵�� + */ + void updateStatus(Long instanceId, String status); + + /** + * 鑾峰彇娴佺▼鍙橀噺 + * + * @param instanceId 瀹炰緥id + * @return 缁撴灉 + */ + Map<String, Object> instanceVariable(Long instanceId); + + /** + * 璁剧疆娴佺▼鍙橀噺 + * + * @param instanceId 瀹炰緥id + * @param variable 娴佺▼鍙橀噺 + */ + void setVariable(Long instanceId, Map<String, Object> variable); + + /** + * 鎸変换鍔d鏌ヨ瀹炰緥 + * + * @param taskId 浠诲姟id + * @return 缁撴灉 + */ + FlowInstance selectByTaskId(Long taskId); + + /** + * 鎸変换鍔d鏌ヨ瀹炰緥 + * + * @param taskIdList 浠诲姟id + * @return 缁撴灉 + */ + List<FlowInstance> selectByTaskIdList(List<Long> taskIdList); + + /** + * 浣滃簾娴佺▼ + * + * @param bo 娴佺▼瀹炰緥 + * @return 缁撴灉 + */ + boolean processInvalid(FlowInvalidBo bo); +} -- Gitblit v1.9.3