Merge remote-tracking branch 'origin/test' into test
This commit is contained in:
@@ -1,33 +1,24 @@
|
||||
package com.zt.plat.module.qms.business.bus.controller.admin;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.yomahub.liteflow.core.FlowExecutor;
|
||||
import com.yomahub.liteflow.flow.LiteflowResponse;
|
||||
import com.zt.plat.framework.business.interceptor.BusinessControllerMarker;
|
||||
import com.zt.plat.framework.common.pojo.CommonResult;
|
||||
import com.zt.plat.framework.common.util.object.BeanUtils;
|
||||
import com.zt.plat.framework.tenant.core.context.TenantContextHolder;
|
||||
import com.zt.plat.module.qms.business.bus.liteflow.param.SampleFlowInfo;
|
||||
import com.zt.plat.module.qms.business.bus.liteflow.param.SampleFlowParam;
|
||||
import com.zt.plat.module.qms.business.bus.liteflow.slot.SampleFlowContext;
|
||||
import com.zt.plat.module.qms.business.bus.service.SampleFlowService;
|
||||
import com.zt.plat.module.qms.core.sampleflow.SampleFlowDefinition;
|
||||
import com.zt.plat.module.qms.core.sampleflow.SampleFlowNode;
|
||||
import com.zt.plat.module.qms.enums.QmsCommonConstant;
|
||||
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import jakarta.annotation.Resource;
|
||||
|
||||
import static com.zt.plat.framework.common.pojo.CommonResult.success;
|
||||
import static com.zt.plat.framework.common.pojo.CommonResult.error;
|
||||
|
||||
@Tag(name = "管理后台 - 样品流转")
|
||||
@RestController
|
||||
@@ -45,138 +36,22 @@ public class SampleFlowController implements BusinessControllerMarker {
|
||||
public CommonResult<?> sampleFlow(@Validated @RequestBody SampleFlowParam sampleFlowParam) {
|
||||
LiteflowResponse response = sampleFlowService.sampleFlow(sampleFlowParam);
|
||||
return success(response.getContextBean(SampleFlowContext.class));
|
||||
}
|
||||
|
||||
@GetMapping("/test")
|
||||
public CommonResult<?> test() {
|
||||
|
||||
SampleFlowDefinition sampleFlowDefinition = new SampleFlowDefinition();
|
||||
sampleFlowDefinition.setFlowKey("flw_sub_sample_process");
|
||||
sampleFlowDefinition.setFlowName("子样样品流转流程");
|
||||
List<SampleFlowNode> flowNodeList = new ArrayList<>();
|
||||
|
||||
SampleFlowNode zxr = new SampleFlowNode();
|
||||
zxr.setNodeName("中心收样");
|
||||
zxr.setNodeKey("flw_center_receive");
|
||||
zxr.setSort(3100);
|
||||
|
||||
SampleFlowNode zxs = new SampleFlowNode();
|
||||
zxs.setNodeName("中心送样");
|
||||
zxs.setNodeKey("flw_center_send");
|
||||
zxs.setSort(3200);
|
||||
|
||||
SampleFlowNode bzr = new SampleFlowNode();
|
||||
bzr.setNodeName("班组收样");
|
||||
bzr.setNodeKey("flw_team_receive");
|
||||
bzr.setSort(3300);
|
||||
|
||||
SampleFlowNode ypbm = new SampleFlowNode();
|
||||
ypbm.setNodeName("样品编密");
|
||||
ypbm.setNodeKey("flw_sample_encrypt");
|
||||
ypbm.setSort(3400);
|
||||
|
||||
// SampleFlowNode fxr = new SampleFlowNode();
|
||||
// fxr.setNodeName("分析收样");
|
||||
// fxr.setNodeKey("flw_analysis_receive");
|
||||
// fxr.setSort(3500);
|
||||
//
|
||||
SampleFlowNode fx = new SampleFlowNode();
|
||||
fx.setNodeName("样品分析");
|
||||
fx.setNodeKey("flw_analysis");
|
||||
fx.setSort(3550);
|
||||
//
|
||||
// SampleFlowNode fxs = new SampleFlowNode();
|
||||
// fxs.setNodeName("分析送样");
|
||||
// fxs.setNodeKey("flw_analysis_send");
|
||||
// fxs.setSort(3600);
|
||||
|
||||
SampleFlowNode bzs = new SampleFlowNode();
|
||||
bzs.setNodeName("班组送样");
|
||||
bzs.setNodeKey("flw_team_send");
|
||||
bzs.setSort(3700);
|
||||
|
||||
SampleFlowNode ypgk = new SampleFlowNode();
|
||||
ypgk.setNodeName("样品归库");
|
||||
ypgk.setNodeKey("flw_sample_storage");
|
||||
ypgk.setSort(3800);
|
||||
ypgk.setNextFlowNodeList(null);
|
||||
flowNodeList.add(ypgk);
|
||||
|
||||
|
||||
zxr.setNextFlowNodeList(new ArrayList<SampleFlowNode>() {
|
||||
{
|
||||
add(BeanUtils.toBean(zxs,SampleFlowNode.class).setIsDefault(true));
|
||||
}
|
||||
});
|
||||
flowNodeList.add(zxr);
|
||||
|
||||
|
||||
zxs.setNextFlowNodeList(new ArrayList<>() {{
|
||||
add(BeanUtils.toBean(bzr,SampleFlowNode.class).setIsDefault(true));
|
||||
}});
|
||||
flowNodeList.add(zxs);
|
||||
|
||||
bzr.setNextFlowNodeList(new ArrayList<>() {{
|
||||
add(BeanUtils.toBean(ypbm,SampleFlowNode.class).setCondition("subSampleEncrypt"));//样品需要编密并且没编密过
|
||||
add(BeanUtils.toBean(fx,SampleFlowNode.class).setCondition("subSampleNotEncrypt"));//样品无需编密或样品已编密过
|
||||
}});
|
||||
flowNodeList.add(bzr);
|
||||
|
||||
|
||||
ypbm.setNextFlowNodeList(new ArrayList<>() {{
|
||||
add(BeanUtils.toBean(fx,SampleFlowNode.class).setIsDefault(true));
|
||||
}});
|
||||
flowNodeList.add(ypbm);
|
||||
|
||||
|
||||
// fxr.setNextFlowNodeList(new ArrayList<>() {{
|
||||
// add(BeanUtils.toBean(fxs,SampleFlowNode.class).setIsDefault(true));
|
||||
// }});
|
||||
// flowNodeList.add(fxr);
|
||||
//
|
||||
//
|
||||
// fxs.setNextFlowNodeList(new ArrayList<>() {{
|
||||
// add(BeanUtils.toBean(bzs,SampleFlowNode.class).setIsDefault(true).setCondition("当前部门任务已全部分析完"));
|
||||
// }});
|
||||
// flowNodeList.add(fxs);
|
||||
|
||||
fx.setNextFlowNodeList(new ArrayList<>() {{
|
||||
add(BeanUtils.toBean(bzs,SampleFlowNode.class).setIsDefault(true).setCondition("当前部门任务已全部分析完"));
|
||||
}});
|
||||
flowNodeList.add(fx);
|
||||
|
||||
bzs.setNextFlowNodeList(new ArrayList<>() {{
|
||||
// add(BeanUtils.toBean(fx,SampleFlowNode.class).setCondition("样品当前分析班组结果超差,需要发起复检"));
|
||||
add(BeanUtils.toBean(bzr,SampleFlowNode.class).setCondition("subSampleSelfReportedOthersPending"));//当前部门数据已全部判断上报
|
||||
add(BeanUtils.toBean(ypgk,SampleFlowNode.class).setCondition("subSampleAlldeptAnalyzed"));//当前样品所有分析任务已全部上报完
|
||||
}});
|
||||
flowNodeList.add(bzs);
|
||||
|
||||
sampleFlowDefinition.setFlowNodeList(flowNodeList);
|
||||
|
||||
String jsonSampleFlowDefinition = JSON.toJSONString(sampleFlowDefinition);
|
||||
|
||||
System.out.println(jsonSampleFlowDefinition);
|
||||
|
||||
Long tenantId = TenantContextHolder.getRequiredTenantId();
|
||||
|
||||
List<SampleFlowInfo> sampleFlowInfoList = new ArrayList<>();
|
||||
sampleFlowInfoList.add(new SampleFlowInfo().setId(1967550576457330690L).setIsWeighing(0));
|
||||
|
||||
SampleFlowParam sampleFlowParam = new SampleFlowParam();
|
||||
sampleFlowParam.setSampleSourceType(2);
|
||||
sampleFlowParam.setCurrentSampleFlowKey("P3000");
|
||||
sampleFlowParam.setSampleFlowInfoList(sampleFlowInfoList);
|
||||
|
||||
|
||||
|
||||
LiteflowResponse response = flowExecutor.execute2Resp("sampleFlowChain" + tenantId, sampleFlowParam, SampleFlowContext.class);
|
||||
if (response.isSuccess()) {
|
||||
return success(response.getContextBean(SampleFlowContext.class));
|
||||
} else {
|
||||
return error(1_032_100_000, response.getMessage());
|
||||
}
|
||||
//return success(FlowBus.getNodeMap());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 中心收样并送样
|
||||
* @param sampleFlowParam
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/centerReceiveAndSend")
|
||||
public CommonResult<?> centerReceiveAndSend(@Validated @RequestBody SampleFlowParam sampleFlowParam) {
|
||||
//中心收样
|
||||
sampleFlowParam.setCurrentSampleFlowKey(QmsCommonConstant.FLOW_NODE_CENTER_RECEIVE);
|
||||
LiteflowResponse response = sampleFlowService.sampleFlow(sampleFlowParam);
|
||||
//中心送样
|
||||
sampleFlowParam.setCurrentSampleFlowKey(QmsCommonConstant.FLOW_NODE_CENTER_SEND);
|
||||
sampleFlowParam.setSendSampleOper(null);
|
||||
response = sampleFlowService.sampleFlow(sampleFlowParam);
|
||||
return success(response.getContextBean(SampleFlowContext.class));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,155 @@
|
||||
package com.zt.plat.module.qms.business.bus.controller.admin;
|
||||
|
||||
import static com.zt.plat.framework.common.pojo.CommonResult.success;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.zt.plat.framework.common.pojo.CommonResult;
|
||||
import com.zt.plat.framework.common.util.object.BeanUtils;
|
||||
import com.zt.plat.module.qms.core.sampleflow.SampleFlowDefinition;
|
||||
import com.zt.plat.module.qms.core.sampleflow.SampleFlowNode;
|
||||
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/qms/bus/test")
|
||||
public class TestController {
|
||||
|
||||
|
||||
@GetMapping("/testSampleFlow")
|
||||
public CommonResult<?> testSampleFlow() {
|
||||
|
||||
SampleFlowDefinition sampleFlowDefinition = new SampleFlowDefinition();
|
||||
sampleFlowDefinition.setFlowKey("flw_sub_sample_process");
|
||||
sampleFlowDefinition.setFlowName("子样样品流转流程");
|
||||
List<SampleFlowNode> flowNodeList = new ArrayList<>();
|
||||
|
||||
SampleFlowNode zxr = new SampleFlowNode();
|
||||
zxr.setNodeName("中心收样");
|
||||
zxr.setNodeKey("flw_center_receive");
|
||||
zxr.setSort(3100);
|
||||
|
||||
SampleFlowNode zxs = new SampleFlowNode();
|
||||
zxs.setNodeName("中心送样");
|
||||
zxs.setNodeKey("flw_center_send");
|
||||
zxs.setSort(3200);
|
||||
|
||||
SampleFlowNode bzr = new SampleFlowNode();
|
||||
bzr.setNodeName("班组收样");
|
||||
bzr.setNodeKey("flw_team_receive");
|
||||
bzr.setSort(3300);
|
||||
|
||||
SampleFlowNode ypbm = new SampleFlowNode();
|
||||
ypbm.setNodeName("样品编密");
|
||||
ypbm.setNodeKey("flw_sample_encrypt");
|
||||
ypbm.setSort(3400);
|
||||
|
||||
// SampleFlowNode fxr = new SampleFlowNode();
|
||||
// fxr.setNodeName("分析收样");
|
||||
// fxr.setNodeKey("flw_analysis_receive");
|
||||
// fxr.setSort(3500);
|
||||
//
|
||||
SampleFlowNode fx = new SampleFlowNode();
|
||||
fx.setNodeName("样品分析");
|
||||
fx.setNodeKey("flw_analysis");
|
||||
fx.setSort(3550);
|
||||
//
|
||||
// SampleFlowNode fxs = new SampleFlowNode();
|
||||
// fxs.setNodeName("分析送样");
|
||||
// fxs.setNodeKey("flw_analysis_send");
|
||||
// fxs.setSort(3600);
|
||||
|
||||
SampleFlowNode bzs = new SampleFlowNode();
|
||||
bzs.setNodeName("班组送样");
|
||||
bzs.setNodeKey("flw_team_send");
|
||||
bzs.setSort(3700);
|
||||
|
||||
SampleFlowNode ypgk = new SampleFlowNode();
|
||||
ypgk.setNodeName("样品归库");
|
||||
ypgk.setNodeKey("flw_sample_storage");
|
||||
ypgk.setSort(3800);
|
||||
ypgk.setNextFlowNodeList(null);
|
||||
flowNodeList.add(ypgk);
|
||||
|
||||
|
||||
zxr.setNextFlowNodeList(new ArrayList<SampleFlowNode>() {
|
||||
private static final long serialVersionUID = 6146393613606839512L;
|
||||
|
||||
{
|
||||
add(BeanUtils.toBean(zxs,SampleFlowNode.class).setIsDefault(true));
|
||||
}
|
||||
});
|
||||
flowNodeList.add(zxr);
|
||||
|
||||
|
||||
zxs.setNextFlowNodeList(new ArrayList<>() {
|
||||
private static final long serialVersionUID = 5357543125760924047L;
|
||||
|
||||
{
|
||||
add(BeanUtils.toBean(bzr,SampleFlowNode.class).setIsDefault(true));
|
||||
}});
|
||||
flowNodeList.add(zxs);
|
||||
|
||||
bzr.setNextFlowNodeList(new ArrayList<>() {
|
||||
private static final long serialVersionUID = 6376704859477839016L;
|
||||
|
||||
{
|
||||
add(BeanUtils.toBean(ypbm,SampleFlowNode.class).setCondition("subSampleEncrypt"));//样品需要编密并且没编密过
|
||||
add(BeanUtils.toBean(fx,SampleFlowNode.class).setCondition("subSampleNotEncrypt"));//样品无需编密或样品已编密过
|
||||
}});
|
||||
flowNodeList.add(bzr);
|
||||
|
||||
|
||||
ypbm.setNextFlowNodeList(new ArrayList<>() {
|
||||
private static final long serialVersionUID = 1014984817516902869L;
|
||||
|
||||
{
|
||||
add(BeanUtils.toBean(fx,SampleFlowNode.class).setIsDefault(true));
|
||||
}});
|
||||
flowNodeList.add(ypbm);
|
||||
|
||||
|
||||
// fxr.setNextFlowNodeList(new ArrayList<>() {{
|
||||
// add(BeanUtils.toBean(fxs,SampleFlowNode.class).setIsDefault(true));
|
||||
// }});
|
||||
// flowNodeList.add(fxr);
|
||||
//
|
||||
//
|
||||
// fxs.setNextFlowNodeList(new ArrayList<>() {{
|
||||
// add(BeanUtils.toBean(bzs,SampleFlowNode.class).setIsDefault(true).setCondition("当前部门任务已全部分析完"));
|
||||
// }});
|
||||
// flowNodeList.add(fxs);
|
||||
|
||||
fx.setNextFlowNodeList(new ArrayList<>() {
|
||||
private static final long serialVersionUID = -610440034210287957L;
|
||||
|
||||
{
|
||||
add(BeanUtils.toBean(bzs,SampleFlowNode.class).setIsDefault(true).setCondition("当前部门任务已全部分析完"));
|
||||
}});
|
||||
flowNodeList.add(fx);
|
||||
|
||||
bzs.setNextFlowNodeList(new ArrayList<>() {
|
||||
private static final long serialVersionUID = -5057434004685743838L;
|
||||
|
||||
{
|
||||
// add(BeanUtils.toBean(fx,SampleFlowNode.class).setCondition("样品当前分析班组结果超差,需要发起复检"));
|
||||
add(BeanUtils.toBean(bzr,SampleFlowNode.class).setCondition("subSampleSelfReportedOthersPending"));//当前部门数据已全部判断上报
|
||||
add(BeanUtils.toBean(ypgk,SampleFlowNode.class).setCondition("subSampleAlldeptAnalyzed"));//当前样品所有分析任务已全部上报完
|
||||
}});
|
||||
flowNodeList.add(bzs);
|
||||
|
||||
sampleFlowDefinition.setFlowNodeList(flowNodeList);
|
||||
|
||||
String jsonSampleFlowDefinition = JSON.toJSONString(sampleFlowDefinition);
|
||||
|
||||
System.out.println(jsonSampleFlowDefinition);
|
||||
|
||||
return success(jsonSampleFlowDefinition);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -638,7 +638,7 @@ public class SampleAnalysisServiceImpl implements SampleAnalysisService {
|
||||
List<Long> businessSubParentSampleIdList = Arrays.asList(businessAssayTaskDataDO.getBusinessSubParentSampleId());
|
||||
List<BusinessSubParentSampleAssessmentProjectExtendRespVO> businessSubParentSampleAssessmentProjectList = businessSubParentSampleAssessmentProjectMapper.selectByBusinessSubParentSampleIdsAndConfigAssayMethodId(businessSubParentSampleIdList, configMethodId);
|
||||
BusinessSubParentSampleAssessmentProjectExtendRespVO businessSubParentSampleAssessmentProject = businessSubParentSampleAssessmentProjectList.stream().filter(f -> f.getSimpleName().equals(sourceProject)).findFirst().orElse(null);
|
||||
if (businessSubParentSampleAssessmentProject == null || StringUtils.isBlank(businessSubParentSampleAssessmentProject.getAssessmentValue())) {
|
||||
if (businessSubParentSampleAssessmentProject != null && StringUtils.isNotBlank(businessSubParentSampleAssessmentProject.getAssessmentValue())) {
|
||||
businessAssayParameterDataDO.setValue(businessSubParentSampleAssessmentProject.getAssessmentValue());
|
||||
}
|
||||
} else if (QmsCommonConstant.ENTRUST_COMMISSION_INSPECTION_SAMPLE.equals(baseSampleDO.getDictionaryBusinessKey())) {//如果是委检样
|
||||
@@ -670,7 +670,7 @@ public class SampleAnalysisServiceImpl implements SampleAnalysisService {
|
||||
List<Long> businessSubParentSampleIdList = Arrays.asList(businessAssayTaskDataDO.getBusinessSubParentSampleId());
|
||||
List<BusinessSubParentSampleAssessmentProjectExtendRespVO> businessSubParentSampleAssessmentProjectList = businessSubParentSampleAssessmentProjectMapper.selectByBusinessSubParentSampleIdsAndConfigAssayMethodId(businessSubParentSampleIdList, configMethodId);
|
||||
BusinessSubParentSampleAssessmentProjectExtendRespVO businessSubParentSampleAssessmentProject = businessSubParentSampleAssessmentProjectList.stream().filter(f -> f.getSimpleName().equals(sourceProject)).findFirst().orElse(null);
|
||||
if (businessSubParentSampleAssessmentProject == null || StringUtils.isBlank(businessSubParentSampleAssessmentProject.getAssessmentValue())) {
|
||||
if (businessSubParentSampleAssessmentProject != null && StringUtils.isNotBlank(businessSubParentSampleAssessmentProject.getAssessmentValue())) {
|
||||
businessAssayParameterDataDO.setValue(businessSubParentSampleAssessmentProject.getAssessmentValue());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -546,36 +546,6 @@ public class SampleResultReportingServiceImpl implements SampleResultReportingSe
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
//处理子样分析任务数据
|
||||
List<BusinessAssayTaskDataDO> businessAssayTaskDataDOList = businessAssayTaskDataMapper.selectByBusinessSubParentSampleIdsAndConfigAssayMethodId(reqVO.getBusinessSubParentSampleIds(), reqVO.getConfigAssayMethodId());
|
||||
List<Long> businessSubSampleIdList = businessAssayTaskDataDOList.stream().map(m -> m.getBusinessSubSampleId()).distinct().collect(Collectors.toList());
|
||||
List<BusinessSubSampleDO> businessSubSampleDOList = businessSubSampleMapper.selectByIds(businessSubSampleIdList);
|
||||
List<BusinessSubSampleAnalysisGroupDO> businessSubSampleAnalysisGroupDOList = businessSubSampleAnalysisGroupMapper.selectByBusinessSubParentSampleIds(reqVO.getBusinessSubParentSampleIds());
|
||||
//根据子样id进行分组
|
||||
Map<Long, List<BusinessAssayTaskDataDO>> businessAssayTaskDataDOMap = businessAssayTaskDataDOList.stream().collect(Collectors.groupingBy(BusinessAssayTaskDataDO::getBusinessSubSampleId));
|
||||
for (Map.Entry<Long, List<BusinessAssayTaskDataDO>> businessAssayTaskDataDOEntry : businessAssayTaskDataDOMap.entrySet()) {
|
||||
Long businessSubSampleId = businessAssayTaskDataDOEntry.getKey();
|
||||
//子样下的分析任务
|
||||
List<BusinessAssayTaskDataDO> valList = businessAssayTaskDataDOEntry.getValue();
|
||||
//查询子样
|
||||
BusinessSubSampleDO businessSubSampleDO = businessSubSampleDOList.stream().filter(f -> businessSubSampleId.equals(f.getId())).findFirst().orElse(null);
|
||||
//查询子样下的分析班组
|
||||
List<BusinessSubSampleAnalysisGroupDO> subSampleAnalysisGroupList = businessSubSampleAnalysisGroupDOList.stream().filter(f -> f.getBusinessSubSampleId().equals(businessSubSampleId)).collect(Collectors.toList());
|
||||
for (BusinessSubSampleAnalysisGroupDO subSampleAnalysisGroupDO : subSampleAnalysisGroupList) {
|
||||
long count = valList.stream().filter(f -> f.getIsReported().equals(QmsCommonConstant.NO) && f.getAssayDepartmentId().equals(subSampleAnalysisGroupDO.getAssayDepartmentId())).count();
|
||||
if (count > 0) {//如果还存在未上报的数据,则继续
|
||||
continue;
|
||||
}
|
||||
subSampleAnalysisGroupDO.setSampleStatus("已完成");//当前班组分析已完成
|
||||
updateBusinessSubSampleAnalysisGroupDOList.add(subSampleAnalysisGroupDO);
|
||||
|
||||
updateBusinessSubSampleDOList.add(businessSubSampleDO);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
**/
|
||||
//分析方法信息
|
||||
ConfigAssayMethodDO configAssayMethodDO = configAssayMethodMapper.selectById(reqVO.getConfigAssayMethodId());
|
||||
//查询当前分析部门下的分样判定信息
|
||||
@@ -618,9 +588,6 @@ public class SampleResultReportingServiceImpl implements SampleResultReportingSe
|
||||
updatebBusinessSampleEntrustRegistrationDOList.add(businessSampleEntrustRegistrationDO);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
if (saveBusinessAssayReportDataDOList.size() > 0) {
|
||||
businessAssayReportDataMapper.insertBatch(saveBusinessAssayReportDataDOList);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user