|
|
@@ -3,18 +3,23 @@ package com.dskj.znzn.importData.web.service.impl;
|
|
|
import java.util.*;
|
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import com.dskj.znzn.importData.common.base.PageR;
|
|
|
import com.dskj.znzn.importData.common.exception.BusinessException;
|
|
|
import com.dskj.znzn.importData.web.entity.MappingField;
|
|
|
import com.dskj.znzn.importData.web.entity.ProcessExecutor;
|
|
|
import com.dskj.znzn.importData.web.entity.ProcessGroup;
|
|
|
import com.dskj.znzn.importData.web.indata.*;
|
|
|
import com.dskj.znzn.importData.web.mapper.ProcessGroupMapper;
|
|
|
+import com.dskj.znzn.importData.web.outdata.ProcessGroupOutData;
|
|
|
import com.dskj.znzn.importData.web.service.IMappingFieldService;
|
|
|
import com.dskj.znzn.importData.web.service.IProcessExecutorService;
|
|
|
import com.dskj.znzn.importData.web.service.IProcessGroupService;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
@@ -35,6 +40,8 @@ public class ProcessGroupServiceImpl extends ServiceImpl<ProcessGroupMapper, Pro
|
|
|
|
|
|
private final IMappingFieldService mappingFieldService;
|
|
|
|
|
|
+ private final ProcessGroupMapper processGroupMapper;
|
|
|
+
|
|
|
|
|
|
@Override
|
|
|
public List<ProcessGroup> getByTemplateId(Integer templateId) {
|
|
|
@@ -52,9 +59,9 @@ public class ProcessGroupServiceImpl extends ServiceImpl<ProcessGroupMapper, Pro
|
|
|
ProcessGroup group = new ProcessGroup();
|
|
|
group.setTemplateId(inData.getTemplateId());
|
|
|
group.setName(inData.getName());
|
|
|
-
|
|
|
+ group.setJoinType(inData.getJoinType());
|
|
|
if (null != inData.getJoinTypeList() && !inData.getJoinTypeList().isEmpty()) {
|
|
|
- group.setJoinType(String.join(",", inData.getJoinTypeList()));
|
|
|
+ group.setJoinTypeStr(String.join(",", inData.getJoinTypeList()));
|
|
|
}
|
|
|
|
|
|
save(group);
|
|
|
@@ -77,17 +84,20 @@ public class ProcessGroupServiceImpl extends ServiceImpl<ProcessGroupMapper, Pro
|
|
|
if (null == group) {
|
|
|
throw new BusinessException("执行器组不存在");
|
|
|
}
|
|
|
- int count = inData.getProcessExecutorInDataList().size();
|
|
|
- int joinTypeCount = null == inData.getJoinTypeList() ? 0 : inData.getJoinTypeList().size();
|
|
|
+ if (group.getJoinType() == 2) {
|
|
|
+ int count = inData.getProcessExecutorInDataList().size();
|
|
|
+ int joinTypeCount = null == inData.getJoinTypeList() ? 0 : inData.getJoinTypeList().size();
|
|
|
|
|
|
- if (count - 1 != joinTypeCount) {
|
|
|
- throw new BusinessException("执行器数量和连接方式数量不一致");
|
|
|
+ if (count - 1 != joinTypeCount) {
|
|
|
+ throw new BusinessException("执行器数量和连接方式数量不一致");
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
ProcessGroup update = new ProcessGroup();
|
|
|
update.setId(group.getId());
|
|
|
+ update.setJoinType(inData.getJoinType());
|
|
|
if (inData.getJoinTypeList() != null) {
|
|
|
- update.setJoinType(String.join(",", inData.getJoinTypeList()));
|
|
|
+ update.setJoinTypeStr(String.join(",", inData.getJoinTypeList()));
|
|
|
}
|
|
|
update.setName(inData.getName());
|
|
|
updateById(update);
|
|
|
@@ -110,7 +120,7 @@ public class ProcessGroupServiceImpl extends ServiceImpl<ProcessGroupMapper, Pro
|
|
|
ProcessExecutor process = new ProcessExecutor();
|
|
|
process.setGroupId(group.getId());
|
|
|
process.setName(processExecutorInData.getName());
|
|
|
- process.setHasHeader(processExecutorInData.getHasHeader());
|
|
|
+ process.setJoinType(processExecutorInData.getJoinType() == null ? group.getJoinType() : processExecutorInData.getJoinType());
|
|
|
process.setKnownFields(String.join(",", process.getKnownFields()));
|
|
|
process.setStatus(1);
|
|
|
processExecutorService.save(process);
|
|
|
@@ -150,7 +160,8 @@ public class ProcessGroupServiceImpl extends ServiceImpl<ProcessGroupMapper, Pro
|
|
|
AddProcessGroupInData inData = new AddProcessGroupInData();
|
|
|
inData.setName(group.getName() + System.currentTimeMillis());
|
|
|
inData.setTemplateId(group.getTemplateId());
|
|
|
- inData.setJoinTypeList(Arrays.asList(group.getJoinType().split(",")));
|
|
|
+ inData.setJoinType(group.getJoinType());
|
|
|
+ inData.setJoinTypeList(Arrays.asList(group.getJoinTypeStr().split(",")));
|
|
|
|
|
|
List<ProcessExecutorInData> processList = new ArrayList<>();
|
|
|
List<ProcessExecutor> processExecutorList = processExecutorService.getByProcessGroupId(group.getId());
|
|
|
@@ -158,7 +169,8 @@ public class ProcessGroupServiceImpl extends ServiceImpl<ProcessGroupMapper, Pro
|
|
|
for (ProcessExecutor processExecutor : processExecutorList) {
|
|
|
ProcessExecutorInData processExecutorInData = new ProcessExecutorInData();
|
|
|
processExecutorInData.setName(processExecutor.getName());
|
|
|
- processExecutorInData.setHasHeader(processExecutor.getHasHeader());
|
|
|
+// processExecutorInData.setHasHeader(processExecutor.getHasHeader());
|
|
|
+ processExecutorInData.setJoinType(processExecutor.getJoinType());
|
|
|
processExecutorInData.setKnownFieldsList(Arrays.asList(processExecutor.getKnownFields().split(",")));
|
|
|
|
|
|
List<MappingFieldInData> mappingFieldInDataList = new ArrayList<>();
|
|
|
@@ -181,4 +193,12 @@ public class ProcessGroupServiceImpl extends ServiceImpl<ProcessGroupMapper, Pro
|
|
|
inData.setProcessExecutorInDataList(processList);
|
|
|
saveProceeGroup(inData);
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public PageR<ProcessGroupOutData> listByQuery(ListGroupByQueryInData inData) {
|
|
|
+ Page<ProcessGroup> page = Page.of(inData.getPageNo(), inData.getPageSize());
|
|
|
+
|
|
|
+ IPage<ProcessGroupOutData> pageInfo = processGroupMapper.listByQuery(page,inData);
|
|
|
+ return PageR.page(pageInfo);
|
|
|
+ }
|
|
|
}
|