diff --git a/src/main/java/neatlogic/module/process/api/processtask/ProcessTaskRelationSaveApi.java b/src/main/java/neatlogic/module/process/api/processtask/ProcessTaskRelationSaveApi.java index 90d467d1531804bf6909a28c54a14139af3e8d0a..39796f02a2fcb0ad27dcc1db2a895d397accde1c 100644 --- a/src/main/java/neatlogic/module/process/api/processtask/ProcessTaskRelationSaveApi.java +++ b/src/main/java/neatlogic/module/process/api/processtask/ProcessTaskRelationSaveApi.java @@ -1,35 +1,28 @@ package neatlogic.module.process.api.processtask; +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.process.auth.PROCESS_BASE; -import neatlogic.framework.process.constvalue.ProcessTaskAuditDetailType; -import neatlogic.framework.process.constvalue.ProcessTaskAuditType; import neatlogic.framework.process.constvalue.ProcessTaskOperationType; import neatlogic.framework.process.crossover.IProcessTaskRelationSaveApiCrossoverService; -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.framework.process.dto.ProcessTaskRelationVo; -import neatlogic.framework.process.dto.ProcessTaskStepVo; import neatlogic.framework.process.exception.channeltype.ChannelTypeRelationNotFoundException; import neatlogic.framework.process.operationauth.core.ProcessAuthManager; -import neatlogic.module.process.service.IProcessStepHandlerUtil; import neatlogic.framework.restful.annotation.Description; import neatlogic.framework.restful.annotation.Input; import neatlogic.framework.restful.annotation.OperationType; import neatlogic.framework.restful.annotation.Param; import neatlogic.framework.restful.constvalue.OperationTypeEnum; import neatlogic.framework.restful.core.privateapi.PrivateApiComponentBase; +import neatlogic.module.process.dao.mapper.catalog.ChannelTypeMapper; +import neatlogic.module.process.dao.mapper.processtask.ProcessTaskMapper; import neatlogic.module.process.service.ProcessTaskService; -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; import org.apache.commons.collections4.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.Arrays; import java.util.List; @Service @@ -41,18 +34,12 @@ public class ProcessTaskRelationSaveApi extends PrivateApiComponentBase implemen @Autowired private ProcessTaskMapper processTaskMapper; - @Autowired - private ChannelMapper channelMapper; - @Autowired private ChannelTypeMapper channelTypeMapper; @Autowired private ProcessTaskService processTaskService; - @Autowired - private IProcessStepHandlerUtil processStepHandlerUtil; - @Override public String getToken() { return "processtask/relation/save"; @@ -92,28 +79,7 @@ public class ProcessTaskRelationSaveApi extends PrivateApiComponentBase implemen List processTaskIdList = processTaskMapper.checkProcessTaskIdListIsExists(relationProcessTaskIdList); if (CollectionUtils.isNotEmpty(processTaskIdList)) { String source = jsonObj.getString("source"); - for (Long target : processTaskIdList) { - ProcessTaskRelationVo processTaskRelationVo = new ProcessTaskRelationVo(); - processTaskRelationVo.setSource(processTaskId); - processTaskRelationVo.setChannelTypeRelationId(channelTypeRelationId); - processTaskRelationVo.setTarget(target); - - processTaskMapper.replaceProcessTaskRelation(processTaskRelationVo); - ProcessTaskStepVo processTaskStepVo = new ProcessTaskStepVo(); - processTaskStepVo.setProcessTaskId(target); - processTaskStepVo.getParamObj().put(ProcessTaskAuditDetailType.CHANNELTYPERELATION.getParamName(), - channelTypeRelationId); - processTaskStepVo.getParamObj().put(ProcessTaskAuditDetailType.PROCESSTASKLIST.getParamName(), - JSON.toJSONString(Arrays.asList(processTaskId))); - processTaskStepVo.getParamObj().put("source", source); - processStepHandlerUtil.audit(processTaskStepVo, ProcessTaskAuditType.RELATION); - } - jsonObj.put(ProcessTaskAuditDetailType.PROCESSTASKLIST.getParamName(), - JSON.toJSONString(processTaskIdList)); - ProcessTaskStepVo processTaskStepVo = new ProcessTaskStepVo(); - processTaskStepVo.setProcessTaskId(processTaskId); - processTaskStepVo.getParamObj().putAll(jsonObj); - processStepHandlerUtil.audit(processTaskStepVo, ProcessTaskAuditType.RELATION); + processTaskService.saveProcessTaskRelation(processTaskId, channelTypeRelationId, processTaskIdList, source); } } return null; diff --git a/src/main/java/neatlogic/module/process/service/ProcessTaskService.java b/src/main/java/neatlogic/module/process/service/ProcessTaskService.java index 951f3474488209ed7b4512c9730ab8f9fd9ee47e..fb7bbcb6aa6b4d72cf0877913a51176f7ae3a640 100644 --- a/src/main/java/neatlogic/module/process/service/ProcessTaskService.java +++ b/src/main/java/neatlogic/module/process/service/ProcessTaskService.java @@ -535,4 +535,11 @@ public interface ProcessTaskService { * @return 如果是无效步骤返回true,否则返回false */ boolean checkStepIsInvalid(Long processTaskStepId); + + void saveProcessTaskRelation( + Long processTaskId, + Long channelTypeRelationId, + List relationProcessTaskIdList, + String source + ); } diff --git a/src/main/java/neatlogic/module/process/service/ProcessTaskServiceImpl.java b/src/main/java/neatlogic/module/process/service/ProcessTaskServiceImpl.java index b0fb82be381726c6b76f0e2afc1c2ba987280a2c..3469bea41541f92dde576983faae3767dad0ec12 100644 --- a/src/main/java/neatlogic/module/process/service/ProcessTaskServiceImpl.java +++ b/src/main/java/neatlogic/module/process/service/ProcessTaskServiceImpl.java @@ -3324,4 +3324,32 @@ public class ProcessTaskServiceImpl implements ProcessTaskService, IProcessTaskC } return true; } + + @Override + public void saveProcessTaskRelation(Long processTaskId, Long channelTypeRelationId, List relationProcessTaskIdList, String source) { + for (Long target : relationProcessTaskIdList) { + ProcessTaskRelationVo processTaskRelationVo = new ProcessTaskRelationVo(); + processTaskRelationVo.setSource(processTaskId); + processTaskRelationVo.setChannelTypeRelationId(channelTypeRelationId); + processTaskRelationVo.setTarget(target); + + processTaskMapper.replaceProcessTaskRelation(processTaskRelationVo); + ProcessTaskStepVo processTaskStepVo = new ProcessTaskStepVo(); + processTaskStepVo.setProcessTaskId(target); + processTaskStepVo.getParamObj().put(ProcessTaskAuditDetailType.CHANNELTYPERELATION.getParamName(), + channelTypeRelationId); + processTaskStepVo.getParamObj().put(ProcessTaskAuditDetailType.PROCESSTASKLIST.getParamName(), + JSON.toJSONString(Collections.singletonList(processTaskId))); + processTaskStepVo.getParamObj().put("source", source); + processStepHandlerUtil.audit(processTaskStepVo, ProcessTaskAuditType.RELATION); + } + ProcessTaskStepVo processTaskStepVo = new ProcessTaskStepVo(); + processTaskStepVo.getParamObj().put(ProcessTaskAuditDetailType.CHANNELTYPERELATION.getParamName(), + channelTypeRelationId); + processTaskStepVo.getParamObj().put(ProcessTaskAuditDetailType.PROCESSTASKLIST.getParamName(), + JSON.toJSONString(relationProcessTaskIdList)); + processTaskStepVo.setProcessTaskId(processTaskId); + processTaskStepVo.getParamObj().put("source", source); + processStepHandlerUtil.audit(processTaskStepVo, ProcessTaskAuditType.RELATION); + } }