feat: 法规符合性评估流程-生成返回全部数据
This commit is contained in:
+2
-20
@@ -1,6 +1,5 @@
|
||||
package com.jero.modules.activiti.process.standardComplianceCheck.controller;
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.api.vo.ResultCommon;
|
||||
import com.jero.common.aspect.annotation.AutoLog;
|
||||
@@ -35,6 +34,7 @@ import org.springframework.web.servlet.ModelAndView;
|
||||
import javax.annotation.Resource;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
@@ -118,7 +118,7 @@ public class ProcessStandardComplianceCheckController extends JeroController<Pro
|
||||
@AutoLog(value = "法规符合性排查流程-生成")
|
||||
@ApiOperation(value = "法规符合性排查流程-生成", notes = "法规符合性排查流程-生成")
|
||||
@PostMapping("/generate")
|
||||
public Result<String> generate(@RequestBody ProcessStandardComplianceCheck scc) throws Exception {
|
||||
public Result<List<ProcessStandardComplianceCheckDetail>> generate(@RequestBody ProcessStandardComplianceCheck scc) throws Exception {
|
||||
return Result.OK(MessageUtils.getMessage(ResultCommon.OK), sccService.generate(scc));
|
||||
}
|
||||
|
||||
@@ -176,22 +176,4 @@ public class ProcessStandardComplianceCheckController extends JeroController<Pro
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 业务分派信息-分页列表查询
|
||||
*
|
||||
* @param processStandardComplianceCheckDetail
|
||||
* @param pageNo
|
||||
* @param pageSize
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "法规符合性排查流程-分页列表查询")
|
||||
@ApiOperation(value = "法规符合性排查流程-分页列表查询", notes = "法规符合性排查流程-分页列表查询")
|
||||
@GetMapping(value = "/detailPage")
|
||||
public Result<IPage<ProcessStandardComplianceCheckDetail>> queryPageList(ProcessStandardComplianceCheckDetail processStandardComplianceCheckDetail,
|
||||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
|
||||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) {
|
||||
IPage<ProcessStandardComplianceCheckDetail> pageList = sccDetailService.queryPage(processStandardComplianceCheckDetail, pageNo, pageSize);
|
||||
return Result.OK(MessageUtils.getMessage(ResultCommon.OK), pageList);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+4
-1
@@ -3,9 +3,12 @@ package com.jero.modules.activiti.process.standardComplianceCheck.service;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.jero.modules.activiti.process.fb.vo.ProcessInfoVO;
|
||||
import com.jero.modules.activiti.process.standardComplianceCheck.entity.ProcessStandardComplianceCheck;
|
||||
import com.jero.modules.activiti.process.standardComplianceCheck.entity.ProcessStandardComplianceCheckDetail;
|
||||
import com.jero.modules.activiti.process.standardComplianceCheck.entity.vo.ProcessSccVO;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author ThinkBook
|
||||
* @description 针对表【process_standard_compliance_check】的数据库操作Service
|
||||
@@ -23,5 +26,5 @@ public interface IProcessStandardComplianceCheckService extends IService<Process
|
||||
|
||||
void submit(ProcessInfoVO<ProcessSccVO> processInfoVO);
|
||||
|
||||
String generate(ProcessStandardComplianceCheck scc) throws Exception;
|
||||
List<ProcessStandardComplianceCheckDetail> generate(ProcessStandardComplianceCheck scc) throws Exception;
|
||||
}
|
||||
|
||||
+30
-23
@@ -1,7 +1,7 @@
|
||||
package com.jero.modules.activiti.process.standardComplianceCheck.service.impl;
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
@@ -60,13 +60,13 @@ import static com.jero.modules.activiti.common.ActivitiCommon.PASS;
|
||||
import static com.jero.modules.activiti.process.standardComplianceCheck.common.ProcessStandardComplianceCheckConstants.*;
|
||||
|
||||
/**
|
||||
* @author ThinkBook
|
||||
* @description 针对表【process_standard_compliance_check】的数据库操作Service实现
|
||||
* @createDate 2024-07-04 10:21:21
|
||||
*/
|
||||
* @author ThinkBook
|
||||
* @description 针对表【process_standard_compliance_check】的数据库操作Service实现
|
||||
* @createDate 2024-07-04 10:21:21
|
||||
*/
|
||||
@Service
|
||||
public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<ProcessStandardComplianceCheckMapper, ProcessStandardComplianceCheck>
|
||||
implements IProcessStandardComplianceCheckService {
|
||||
implements IProcessStandardComplianceCheckService {
|
||||
|
||||
@Resource
|
||||
private IProcessHandleService processHandleService;
|
||||
@@ -139,22 +139,31 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
|
||||
|
||||
/**
|
||||
* 第一个节点业务数据处理
|
||||
*
|
||||
* @param processInfoVO
|
||||
*/
|
||||
private void startNodeBusProcess(ProcessInfoVO<ProcessSccVO> processInfoVO) {
|
||||
String processInstanceId = processInfoVO.getBasicProcessInfoDTO().getProcessInstanceId();
|
||||
ProcessSccVO businessInfoDTO = processInfoVO.getBusinessInfoDTO();
|
||||
String id = businessInfoDTO.getStandardInfo().getId();
|
||||
if (StrUtil.isNotBlank(id)) {
|
||||
// 先删除原来保存的数据
|
||||
removeById(id);
|
||||
LambdaQueryWrapper<ProcessStandardComplianceCheckDetail> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(ProcessStandardComplianceCheckDetail::getCheckId, id);
|
||||
sccDetailService.remove(queryWrapper);
|
||||
}
|
||||
// 主表设置流程实例Id
|
||||
LambdaUpdateWrapper<ProcessStandardComplianceCheck> updateWrapper = new LambdaUpdateWrapper<>();
|
||||
updateWrapper.set(ProcessStandardComplianceCheck::getProcessInstanceId, processInstanceId);
|
||||
updateWrapper.eq(ProcessStandardComplianceCheck::getId, id);
|
||||
this.update(updateWrapper);
|
||||
ProcessStandardComplianceCheck standardInfo = businessInfoDTO.getStandardInfo();
|
||||
standardInfo.setProcessInstanceId(processInstanceId);
|
||||
save(standardInfo);
|
||||
// 子表设置流程实例Id
|
||||
LambdaUpdateWrapper<ProcessStandardComplianceCheckDetail> childUpdateWrapper = new LambdaUpdateWrapper<>();
|
||||
childUpdateWrapper.set(ProcessStandardComplianceCheckDetail::getProcessInstanceId, processInstanceId);
|
||||
childUpdateWrapper.eq(ProcessStandardComplianceCheckDetail::getCheckId, id);
|
||||
sccDetailService.update(childUpdateWrapper);
|
||||
List<ProcessStandardComplianceCheckDetail> detailInfoList = businessInfoDTO.getDetailInfoList();
|
||||
detailInfoList.forEach(detail -> {
|
||||
detail.setCheckId(standardInfo.getId());
|
||||
detail.setProcessInstanceId(processInstanceId);
|
||||
});
|
||||
sccDetailService.saveBatch(detailInfoList);
|
||||
}
|
||||
|
||||
private Map<String, Object> setVariables(ProcessInfoVO<ProcessSccVO> businessInfoDTO) {
|
||||
@@ -245,20 +254,16 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
|
||||
}
|
||||
|
||||
@Override
|
||||
public String generate(ProcessStandardComplianceCheck scc) throws Exception {
|
||||
public List<ProcessStandardComplianceCheckDetail> generate(ProcessStandardComplianceCheck scc) throws Exception {
|
||||
// 获取两个文件
|
||||
MultipartFile modelFile = this.getFileById(scc.getModelFile());
|
||||
MultipartFile splitFile = this.getFileById(scc.getSplitFile());
|
||||
// 文件内容转换
|
||||
List<ModelExcelVO> modelExcelVOList = this.getModelExcelData(modelFile);
|
||||
// 新增流程主表数据
|
||||
this.save(scc);
|
||||
// 找到拆分数据
|
||||
List<ProcessStandardComplianceCheckDetail> detailInfoList = this.getSplitData(scc, splitFile);
|
||||
// 根据主表数据和车型文件生成子表数据并保存
|
||||
this.saveAllDetailData(modelExcelVOList, detailInfoList);
|
||||
// 返回主键
|
||||
return scc.getId();
|
||||
return this.saveAllDetailData(modelExcelVOList, detailInfoList);
|
||||
}
|
||||
|
||||
private MultipartFile getFileById(String fileId) {
|
||||
@@ -285,7 +290,7 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
|
||||
* @param modelExcelVOList
|
||||
* @param detailInfoList
|
||||
*/
|
||||
private void saveAllDetailData(List<ModelExcelVO> modelExcelVOList, List<ProcessStandardComplianceCheckDetail> detailInfoList) {
|
||||
private List<ProcessStandardComplianceCheckDetail> saveAllDetailData(List<ModelExcelVO> modelExcelVOList, List<ProcessStandardComplianceCheckDetail> detailInfoList) {
|
||||
List<ProcessStandardComplianceCheckDetail> result = new ArrayList<>();
|
||||
for (ProcessStandardComplianceCheckDetail detailInfo : detailInfoList) {
|
||||
for (ModelExcelVO modelExcelVO : modelExcelVOList) {
|
||||
@@ -300,11 +305,12 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
|
||||
result.add(detail);
|
||||
}
|
||||
}
|
||||
sccDetailService.saveBatch(result);
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取拆分数据
|
||||
*
|
||||
* @param scc
|
||||
* @param splitFile
|
||||
* @return
|
||||
@@ -353,6 +359,7 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
|
||||
|
||||
/**
|
||||
* 获取分解单Excel内数据
|
||||
*
|
||||
* @param splitFile
|
||||
* @return
|
||||
*/
|
||||
@@ -445,7 +452,7 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
|
||||
Map<String, Object> userInfoMap = new HashMap<>();
|
||||
ProcessInfoVO<ProcessDemoVO> processInfoVO = new ProcessInfoVO<>();
|
||||
BasicProcessInfoDTO basicProcessInfoDTO = new BasicProcessInfoDTO();
|
||||
String mainInstanceId =(String) delegateTask.getVariable(ActivitiCommon.MAIN_INSTANCE_ID);
|
||||
String mainInstanceId = (String) delegateTask.getVariable(ActivitiCommon.MAIN_INSTANCE_ID);
|
||||
//保存父子关联信息
|
||||
Map<String, Object> variables = new HashMap<>();
|
||||
variables.put(ActivitiCommon.MAIN_INSTANCE_ID, mainInstanceId != null ? mainInstanceId : processInstanceId);
|
||||
|
||||
Reference in New Issue
Block a user