From 4ab2cb495ccece311bbd8d0ecb992c7de0bc8500 Mon Sep 17 00:00:00 2001 From: yangys <y_ys79@sina.com> Date: 星期二, 22 七月 2025 11:43:10 +0800 Subject: [PATCH] 审批表打印 --- blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/FlowBusinessService.java | 51 ++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 50 insertions(+), 1 deletions(-) diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/FlowBusinessService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/FlowBusinessService.java index 93fec5a..99126f6 100644 --- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/FlowBusinessService.java +++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/FlowBusinessService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import lombok.AllArgsConstructor; import org.flowable.engine.HistoryService; +import org.flowable.engine.RuntimeService; import org.flowable.engine.TaskService; import org.flowable.engine.history.HistoricProcessInstance; import org.flowable.engine.task.Comment; @@ -18,6 +19,8 @@ import org.springblade.mdm.flow.entity.MdmFlowProcess; import org.springblade.mdm.flow.util.MdmFlowCache; import org.springblade.mdm.flow.vo.FlowVO; +import org.springblade.mdm.program.entity.ProcessProgRef; +import org.springblade.mdm.program.service.ProcessProgRefService; import org.springblade.system.feign.IUserClient; import org.springblade.system.pojo.entity.User; import org.springframework.stereotype.Service; @@ -38,10 +41,12 @@ @Service @AllArgsConstructor public class FlowBusinessService { - + private final RuntimeService runtimeService; private final TaskService taskService; private final HistoryService historyService; private final IUserClient userClient; + private final ProcessProgRefService processProgRefService; + private final ApproveRecordService approveRecordService; /** * 鏌ヨ鎴戠殑娴佺▼(涓汉寰呭姙鍒楄〃) @@ -419,4 +424,48 @@ page.setRecords(flowList); return page; } + + /** + * 娴佺▼鏌ヨ 鍔熻兘 鐨勫垎椤� + * @param page + * @param createTimeBegin + * @param createTimeEnd + * @param keyword + * @return + */ + public IPage<FlowVO> selectSearchPage(IPage<FlowVO> page, LocalDate createTimeBegin, LocalDate createTimeEnd, String keyword) { + + List<FlowVO> flowList = new LinkedList<>(); + Date now = new Date(); + TaskQuery taskQuery = taskService.createTaskQuery().active().includeProcessVariables(); + if(Func.isNotEmpty(createTimeBegin)) { + taskQuery.taskCreatedAfter(DateUtil.toDate(createTimeBegin)); + } + if(Func.isNotEmpty(createTimeEnd)) { + taskQuery.taskCreatedBefore(DateUtil.toDate(createTimeEnd.plusDays(1))); + } + + addKeywordCondition(taskQuery, keyword); + + taskQuery.orderByTaskCreateTime().desc(); + + // 鏋勫缓鍒楄〃鏁版嵁 + FlowVO bladeFlow = new FlowVO(); + buildFlowTaskList(bladeFlow, flowList, taskQuery);//FlowEngineConstant.STATUS_TODO + + // 璁$畻鎬绘暟 + long count = taskQuery.count(); + // 璁剧疆椤垫暟 + page.setSize(count); + // 璁剧疆鎬绘暟 + page.setTotal(count); + // 璁剧疆鏁版嵁 + page.setRecords(flowList); + return page; + } + + public void deleteProcessInstance(String processInstancesId) { + runtimeService.deleteProcessInstance(processInstancesId, "娴佺▼鏌ヨ-鍒犻櫎"); + //TODO 鍒犻櫎鍑哄叧鑱斿瓧娈� + } } -- Gitblit v1.9.3