perf: scc流程性能优化
This commit is contained in:
+5
-7
@@ -29,7 +29,6 @@ import org.jeecgframework.poi.excel.def.NormalExcelConstants;
|
||||
import org.jeecgframework.poi.excel.entity.ExportParams;
|
||||
import org.jeecgframework.poi.excel.entity.enmus.ExcelType;
|
||||
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
@@ -42,7 +41,6 @@ import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
|
||||
/**
|
||||
* 流程-测试流程(process_demo)表控制层
|
||||
@@ -65,15 +63,15 @@ public class ProcessStandardComplianceCheckController extends JeroController<Pro
|
||||
@AutoLog(value = "法规符合性排查流程-发起流程")
|
||||
@ApiOperation(value = "法规符合性排查流程-发起流程", notes = "法规符合性排查流程-发起流程")
|
||||
@PostMapping(value = "/start")
|
||||
public Result<T> startProcess(@Validated @RequestBody ProcessInfoVO<ProcessSccVO> processInfoVO) {
|
||||
CompletableFuture.runAsync(() -> sccService.startProcess(processInfoVO));
|
||||
public Result<T> startProcess(@RequestBody ProcessInfoVO<ProcessSccVO> processInfoVO) {
|
||||
sccService.startProcess(processInfoVO);
|
||||
return Result.OK();
|
||||
}
|
||||
|
||||
@AutoLog(value = "法规符合性排查流程-同意")
|
||||
@ApiOperation(value = "法规符合性排查流程-同意", notes = "法规符合性排查流程-同意")
|
||||
@PostMapping("/agree")
|
||||
public Result<T> agree(@Validated @RequestBody ProcessInfoVO<ProcessSccVO> processInfoVO) {
|
||||
public Result<T> agree(@RequestBody ProcessInfoVO<ProcessSccVO> processInfoVO) {
|
||||
sccService.approveTask(processInfoVO, true);
|
||||
return Result.OK();
|
||||
}
|
||||
@@ -81,7 +79,7 @@ public class ProcessStandardComplianceCheckController extends JeroController<Pro
|
||||
@AutoLog(value = "法规符合性排查流程-驳回")
|
||||
@ApiOperation(value = "法规符合性排查流程-驳回", notes = "法规符合性排查流程-驳回")
|
||||
@PostMapping("/reject")
|
||||
public Result<T> reject(@Validated @RequestBody ProcessInfoVO<ProcessSccVO> processInfoVO) {
|
||||
public Result<T> reject(@RequestBody ProcessInfoVO<ProcessSccVO> processInfoVO) {
|
||||
sccService.approveTask(processInfoVO, false);
|
||||
return Result.OK();
|
||||
}
|
||||
@@ -89,7 +87,7 @@ public class ProcessStandardComplianceCheckController extends JeroController<Pro
|
||||
@AutoLog(value = "法规符合性排查流程-提交")
|
||||
@ApiOperation(value = "法规符合性排查流程-提交", notes = "法规符合性排查流程-提交")
|
||||
@PostMapping("/submit")
|
||||
public Result<T> submit(@Validated @RequestBody ProcessInfoVO<ProcessSccVO> processInfoVO) {
|
||||
public Result<T> submit(@RequestBody ProcessInfoVO<ProcessSccVO> processInfoVO) {
|
||||
sccService.submit(processInfoVO);
|
||||
return Result.OK();
|
||||
}
|
||||
|
||||
+3
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.jero.modules.activiti.process.standardComplianceCheck.entity.ProcessStandardComplianceCheckDetail;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Queue;
|
||||
|
||||
/**
|
||||
@@ -15,6 +16,8 @@ import java.util.Queue;
|
||||
public interface ProcessStandardComplianceCheckDetailMapper extends BaseMapper<ProcessStandardComplianceCheckDetail> {
|
||||
|
||||
void batchInsert(@Param("queue") Queue<ProcessStandardComplianceCheckDetail> needAddDetailInfoQueue);
|
||||
|
||||
void batchInsertList(@Param("list") List<ProcessStandardComplianceCheckDetail> needAddDetailInfoList);
|
||||
}
|
||||
|
||||
|
||||
|
||||
+68
@@ -100,4 +100,72 @@
|
||||
</foreach>
|
||||
</insert>
|
||||
|
||||
<insert id="batchInsertList" parameterType="java.util.Collection">
|
||||
INSERT INTO process_standard_compliance_check_detail (
|
||||
id,
|
||||
create_by,
|
||||
create_time,
|
||||
update_by,
|
||||
update_time,
|
||||
org_code,
|
||||
process_instance_id,
|
||||
term_number,
|
||||
term_title,
|
||||
term_content,
|
||||
model,
|
||||
model_status,
|
||||
assessor,
|
||||
result,
|
||||
description,
|
||||
material,
|
||||
valuation_time,
|
||||
correction_solution,
|
||||
unsatisfied_require,
|
||||
correction_period,
|
||||
correction_cost,
|
||||
commonality,
|
||||
commonality_cost,
|
||||
remark,
|
||||
auth_dept,
|
||||
main_check_user,
|
||||
design_engineer,
|
||||
check_id,
|
||||
batch_id
|
||||
)
|
||||
VALUES
|
||||
<foreach collection="list" item="item" separator=",">
|
||||
(
|
||||
#{item.id},
|
||||
#{item.createBy},
|
||||
#{item.createTime},
|
||||
#{item.updateBy},
|
||||
#{item.updateTime},
|
||||
#{item.orgCode},
|
||||
#{item.processInstanceId},
|
||||
#{item.termNumber},
|
||||
#{item.termTitle},
|
||||
#{item.termContent},
|
||||
#{item.model},
|
||||
#{item.modelStatus},
|
||||
#{item.assessor},
|
||||
#{item.result},
|
||||
#{item.description},
|
||||
#{item.material},
|
||||
#{item.valuationTime},
|
||||
#{item.correctionSolution},
|
||||
#{item.unsatisfiedRequire},
|
||||
#{item.correctionPeriod},
|
||||
#{item.correctionCost},
|
||||
#{item.commonality},
|
||||
#{item.commonalityCost},
|
||||
#{item.remark},
|
||||
#{item.authDept},
|
||||
#{item.mainCheckUser},
|
||||
#{item.designEngineer},
|
||||
#{item.checkId},
|
||||
#{item.batchId}
|
||||
)
|
||||
</foreach>
|
||||
</insert>
|
||||
|
||||
</mapper>
|
||||
|
||||
+4
-2
@@ -220,7 +220,9 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
|
||||
// 给流程中设置主表流程变量Id
|
||||
runtimeService.setVariable(processInstanceId, CHECK_ID, standardInfo.getId());
|
||||
runtimeService.setVariable(processInstanceId, MAIN_INSTANCE_ID, processInstanceId);
|
||||
this.startNodeDetailBusProcess(processInstanceId, standardInfo.getId(), businessInfoDTO.getDetailInfoList());
|
||||
CompletableFuture.runAsync(() ->
|
||||
this.startNodeDetailBusProcess(
|
||||
processInstanceId, standardInfo.getId(), businessInfoDTO.getDetailInfoList()));
|
||||
}
|
||||
|
||||
private void startNodeDetailBusProcess(String processInstanceId, String checkId, List<ProcessStandardComplianceCheckDetail> detailInfoList) {
|
||||
@@ -249,7 +251,7 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
|
||||
detail.setCheckId(checkId);
|
||||
detail.setProcessInstanceId(processInstanceId);
|
||||
});
|
||||
sccDetailService.saveBatch(detailInfoList, detailInfoList.size());
|
||||
sccDetailMapper.batchInsertList(detailInfoList);
|
||||
}
|
||||
|
||||
private Map<String, Object> setVariables(ProcessInfoVO<ProcessSccVO> businessInfoDTO) {
|
||||
|
||||
Reference in New Issue
Block a user