From 1e2b04fabbbc4b1ae37d7951068d7ab235f5b5f9 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期三, 17 九月 2025 15:29:38 +0800
Subject: [PATCH] 现场编制功能适配
---
blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/FlowBusinessService.java | 48 ++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 40 insertions(+), 8 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 f6e0bf3..eebb8de 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
@@ -18,12 +18,16 @@
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.*;
+import org.springblade.mdm.basesetting.machine.entity.Machine;
+import org.springblade.mdm.basesetting.machine.service.MachineService;
+import org.springblade.mdm.commons.service.ParamService;
import org.springblade.mdm.flow.constants.FlowContants;
import org.springblade.mdm.flow.constants.FlowVariableContants;
import org.springblade.mdm.flow.entity.FlowProgramFile;
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.flow.vo.TodoQueryVO;
import org.springblade.system.feign.IUserClient;
import org.springblade.system.pojo.entity.User;
import org.springframework.stereotype.Service;
@@ -45,6 +49,8 @@
private final HistoryService historyService;
private final IUserClient userClient;
private final FlowProgramFileService flowProgramFileService;
+ private final ParamService paramService;
+ private final MachineService machineService;
/**
* 鏌ヨ鎴戠殑娴佺▼(涓汉寰呭姙鍒楄〃)
* @param page 鍒嗛〉淇℃伅
@@ -53,21 +59,47 @@
* @param keyword 鏌ヨ鍏抽敭瀛�
* @return
*/
- public IPage<FlowVO> selectTodoPage(IPage<FlowVO> page, LocalDateTime createTimeBegin, LocalDateTime createTimeEnd, String keyword) {
+ public IPage<FlowVO> selectTodoPage(IPage<FlowVO> page, TodoQueryVO queryVO) {//LocalDateTime createTimeBegin, LocalDateTime createTimeEnd, String keyword
//String taskUser = TaskUtil.getTaskUser();
String userId = "" + AuthUtil.getUserId();
List<FlowVO> flowList = new LinkedList<>();
TaskQuery todoQuery = taskService.createTaskQuery().taskAssignee(userId).active().includeProcessVariables();
- if (Func.isNotEmpty(createTimeBegin)) {
- todoQuery.taskCreatedAfter(DateUtil.toDate(createTimeBegin));
+
+ if(queryVO.getMachineSpec() != null){
+ if(queryVO.getMachineSpec().length==1) {//2涓负鍏ㄩ��
+ //鏌ヨ杞﹀簥浠g爜闆嗗悎
+ String turnVal = paramService.turninngValue();
+ List<Machine> machines = machineService.lambdaQuery().eq(Machine::getMachineSpec, turnVal).eq(Machine::getStatus, Machine.STATUS_ENABLE).list();
+ List<String> turnMachineCodes = machines.stream().map(Machine::getCode).toList();
+
+ List<String> specs = Arrays.asList(queryVO.getMachineSpec());
+ if (specs.contains("1")) {
+ //杞﹀簥
+ todoQuery.or();
+ for (String mCode : turnMachineCodes) {
+ todoQuery.processVariableValueEquals(FlowVariableContants.MACHINE_CODE, mCode);
+ }
+ todoQuery.endOr();
+ } else {
+ //鍔犲伐涓績
+ todoQuery.or();
+ for (String mCode : turnMachineCodes) {
+ todoQuery.processVariableValueNotEquals(FlowVariableContants.MACHINE_CODE, mCode);
+ }
+ todoQuery.endOr();
+ }
+ }
}
- if (Func.isNotEmpty(createTimeEnd)) {
- todoQuery.taskCreatedBefore(DateUtil.toDate(createTimeEnd));
- //todoQuery.taskInProgressStartTimeBefore(DateUtil.toDate(createTimeEnd));
+
+ if (Func.isNotEmpty(queryVO.getCreateTimeBegin())) {
+ todoQuery.taskCreatedAfter(DateUtil.toDate(queryVO.getCreateTimeBegin()));
}
- if (Func.isNotEmpty(keyword)) {
- addKeywordCondition(todoQuery, keyword);
+ if (Func.isNotEmpty(queryVO.getCreateTimeEnd())) {
+ todoQuery.taskCreatedBefore(DateUtil.toDate(queryVO.getCreateTimeEnd()));
+ }
+ if (Func.isNotEmpty(queryVO.getKeyword())) {
+ addKeywordCondition(todoQuery, queryVO.getKeyword());
}
todoQuery.orderByTaskCreateTime().desc();
--
Gitblit v1.9.3