From e4a23ad443623eeb20e2cd60002c2e241d3668fe Mon Sep 17 00:00:00 2001 From: "1437892690@qq.com" <1437892690@qq.com> Date: Thu, 27 Mar 2025 17:32:41 +0800 Subject: [PATCH] =?UTF-8?q?[=E4=BF=AE=E5=A4=8D]=20=E5=B7=A5=E5=8D=95?= =?UTF-8?q?=E5=A4=84=E7=90=86-=E5=85=B3=E8=81=94=E5=B7=A5=E5=8D=95?= =?UTF-8?q?=E5=B7=B2=E5=88=A0=E9=99=A4=EF=BC=8C=E4=BD=86=E6=98=AF=E5=85=B3?= =?UTF-8?q?=E8=81=94=E5=B7=A5=E5=8D=95=E5=88=97=E8=A1=A8=E7=9A=84=E5=85=B3?= =?UTF-8?q?=E8=81=94=E5=85=B3=E7=B3=BB=E6=B2=A1=E6=9C=89=E6=B8=85=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 关联 #[1385622009249792]工单处理-关联工单已删除,但是关联工单列表的关联关系没有清除 http://192.168.0.96:8090/demo/rdm.html#/bug-detail/939050947543040/939050947543057/1385622009249792 --- .../ProcessTaskRelationListApi.java | 72 +++++++------------ .../mapper/processtask/ProcessTaskMapper.xml | 1 + 2 files changed, 27 insertions(+), 46 deletions(-) diff --git a/src/main/java/neatlogic/module/process/api/processtask/ProcessTaskRelationListApi.java b/src/main/java/neatlogic/module/process/api/processtask/ProcessTaskRelationListApi.java index 42b362799..0ffd15576 100644 --- a/src/main/java/neatlogic/module/process/api/processtask/ProcessTaskRelationListApi.java +++ b/src/main/java/neatlogic/module/process/api/processtask/ProcessTaskRelationListApi.java @@ -1,46 +1,31 @@ package neatlogic.module.process.api.processtask; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Set; - -import neatlogic.framework.auth.core.AuthAction; -import neatlogic.framework.exception.type.PermissionDeniedException; -import neatlogic.framework.process.auth.PROCESS_BASE; -import neatlogic.module.process.dao.mapper.catalog.ChannelTypeMapper; -import neatlogic.framework.process.exception.operationauth.ProcessTaskPermissionDeniedException; -import org.apache.commons.collections4.CollectionUtils; -import org.apache.commons.lang3.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; - +import neatlogic.framework.auth.core.AuthAction; import neatlogic.framework.common.constvalue.ApiParamType; import neatlogic.framework.common.dto.BasePageVo; import neatlogic.framework.common.util.PageUtil; +import neatlogic.framework.exception.type.PermissionDeniedException; +import neatlogic.framework.process.auth.PROCESS_BASE; import neatlogic.framework.process.constvalue.ProcessTaskOperationType; -import neatlogic.module.process.dao.mapper.catalog.ChannelMapper; -import neatlogic.module.process.dao.mapper.processtask.ProcessTaskMapper; -import neatlogic.framework.process.dto.ChannelTypeRelationVo; -import neatlogic.framework.process.dto.ChannelTypeVo; -import neatlogic.framework.process.dto.ChannelVo; -import neatlogic.framework.process.dto.ProcessTaskRelationVo; -import neatlogic.framework.process.dto.ProcessTaskStatusVo; -import neatlogic.framework.process.dto.ProcessTaskVo; +import neatlogic.framework.process.dto.*; +import neatlogic.framework.process.exception.operationauth.ProcessTaskPermissionDeniedException; import neatlogic.framework.process.operationauth.core.ProcessAuthManager; +import neatlogic.framework.restful.annotation.*; import neatlogic.framework.restful.constvalue.OperationTypeEnum; -import neatlogic.framework.restful.annotation.Description; -import neatlogic.framework.restful.annotation.Input; -import neatlogic.framework.restful.annotation.OperationType; -import neatlogic.framework.restful.annotation.Output; -import neatlogic.framework.restful.annotation.Param; import neatlogic.framework.restful.core.privateapi.PrivateApiComponentBase; +import neatlogic.module.process.dao.mapper.catalog.ChannelMapper; +import neatlogic.module.process.dao.mapper.catalog.ChannelTypeMapper; +import neatlogic.module.process.dao.mapper.processtask.ProcessTaskMapper; import neatlogic.module.process.service.ProcessTaskService; +import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.*; +import java.util.stream.Collectors; @Service @AuthAction(action = PROCESS_BASE.class) @@ -104,7 +89,7 @@ public class ProcessTaskRelationListApi extends PrivateApiComponentBase { // } // } JSONObject resultObj = new JSONObject(); - resultObj.put("processTaskRelationList", new ArrayList<>()); + List resultList = new ArrayList<>(); int pageCount = 0; if (processTaskRelationVo.getNeedPage()) { int rowNum = @@ -116,21 +101,11 @@ public class ProcessTaskRelationListApi extends PrivateApiComponentBase { resultObj.put("rowNum", rowNum); } if (!processTaskRelationVo.getNeedPage() || processTaskRelationVo.getCurrentPage() <= pageCount) { - Set processTaskIdSet = new HashSet<>(); - List processTaskRelationList = - processTaskMapper.getProcessTaskRelationList(processTaskRelationVo); - for (ProcessTaskRelationVo processTaskRelation : processTaskRelationList) { - processTaskIdSet.add(processTaskRelation.getProcessTaskId()); - ChannelTypeRelationVo channelTypeRelationVo = - channelTypeMapper.getChannelTypeRelationById(processTaskRelation.getChannelTypeRelationId()); - if (channelTypeRelationVo != null) { - processTaskRelation.setChannelTypeRelationName(channelTypeRelationVo.getName()); - } - } + List processTaskRelationList = processTaskMapper.getProcessTaskRelationList(processTaskRelationVo); + Set processTaskIdSet = processTaskRelationList.stream().filter(Objects::nonNull).map(ProcessTaskRelationVo::getProcessTaskId).collect(Collectors.toSet()); Map processTaskMap = new HashMap<>(); if (CollectionUtils.isNotEmpty(processTaskIdSet)) { - List processTaskList = - processTaskMapper.getProcessTaskListByIdList(new ArrayList<>(processTaskIdSet)); + List processTaskList = processTaskMapper.getProcessTaskListByIdList(new ArrayList<>(processTaskIdSet)); for (ProcessTaskVo processTask : processTaskList) { ChannelVo channelVo = channelMapper.getChannelByUuid(processTask.getChannelUuid()); if (channelVo != null && StringUtils.isNotBlank(channelVo.getChannelTypeUuid())) { @@ -151,10 +126,15 @@ public class ProcessTaskRelationListApi extends PrivateApiComponentBase { processTaskRelation.setTitle(processTask.getTitle()); processTaskRelation.setStatusVo(new ProcessTaskStatusVo(processTask.getStatus())); processTaskRelation.setChannelTypeVo(processTask.getChannelType().clone()); + ChannelTypeRelationVo channelTypeRelationVo = channelTypeMapper.getChannelTypeRelationById(processTaskRelation.getChannelTypeRelationId()); + if (channelTypeRelationVo != null) { + processTaskRelation.setChannelTypeRelationName(channelTypeRelationVo.getName()); + } + resultList.add(processTaskRelation); } } - resultObj.put("processTaskRelationList", processTaskRelationList); } + resultObj.put("processTaskRelationList", resultList); return resultObj; } diff --git a/src/main/java/neatlogic/module/process/dao/mapper/processtask/ProcessTaskMapper.xml b/src/main/java/neatlogic/module/process/dao/mapper/processtask/ProcessTaskMapper.xml index eb8f5a481..66652017c 100644 --- a/src/main/java/neatlogic/module/process/dao/mapper/processtask/ProcessTaskMapper.xml +++ b/src/main/java/neatlogic/module/process/dao/mapper/processtask/ProcessTaskMapper.xml @@ -1282,6 +1282,7 @@ #{id} + AND `is_deleted` = 0