荧光线、分析时间等修改
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
package com.zt.plat.module.qms.business.bus.controller.vo;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class BusinessAssayTaskParameterDataExtendRespVO extends BusinessAssayTaskParameterDataRespVO {
|
||||
|
||||
@Schema(description = "检测方法ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "29823")
|
||||
@ExcelProperty("检测方法ID")
|
||||
private Long configAssayMethodId;
|
||||
|
||||
@Schema(description = "参数名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三")
|
||||
@ExcelProperty("参数名称")
|
||||
private String parameterName;
|
||||
|
||||
@Schema(description = "参数简称", example = "张三")
|
||||
@ExcelProperty("参数简称")
|
||||
private String shortName;
|
||||
|
||||
@Schema(description = "参数序号", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("参数序号")
|
||||
private Integer no;
|
||||
|
||||
@Schema(description = "键值")
|
||||
@ExcelProperty("键值")
|
||||
private String key;
|
||||
}
|
||||
@@ -32,6 +32,14 @@ public class BusinessXRFDataPageReqVO extends PageParam {
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
private LocalDateTime[] sampleTime;
|
||||
|
||||
@Schema(description = "样品开始时间")
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
private LocalDateTime[] sampleStartTime;
|
||||
|
||||
@Schema(description = "样品结束时间")
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
private LocalDateTime[] sampleEndTime;
|
||||
|
||||
@Schema(description = "分析人")
|
||||
private String assayOperator;
|
||||
|
||||
|
||||
@@ -35,6 +35,14 @@ public class BusinessXRFDataReqVO {
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
private LocalDateTime[] sampleTime;
|
||||
|
||||
@Schema(description = "样品开始时间")
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
private LocalDateTime[] sampleStartTime;
|
||||
|
||||
@Schema(description = "样品结束时间")
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
private LocalDateTime[] sampleEndTime;
|
||||
|
||||
@Schema(description = "分析人")
|
||||
private String assayOperator;
|
||||
|
||||
|
||||
@@ -40,6 +40,14 @@ public class BusinessXRFDataRespVO {
|
||||
@ExcelProperty("样品时间")
|
||||
private LocalDateTime sampleTime;
|
||||
|
||||
@Schema(description = "样品开始时间")
|
||||
@ExcelProperty("样品开始时间")
|
||||
private LocalDateTime sampleStartTime;
|
||||
|
||||
@Schema(description = "样品结束时间")
|
||||
@ExcelProperty("样品结束时间")
|
||||
private LocalDateTime sampleEndTime;
|
||||
|
||||
@Schema(description = "分析人")
|
||||
@ExcelProperty("分析人")
|
||||
private String assayOperator;
|
||||
|
||||
@@ -34,6 +34,12 @@ public class BusinessXRFDataSaveReqVO {
|
||||
@Schema(description = "样品时间")
|
||||
private LocalDateTime sampleTime;
|
||||
|
||||
@Schema(description = "样品开始时间")
|
||||
private LocalDateTime sampleStartTime;
|
||||
|
||||
@Schema(description = "样品结束时间")
|
||||
private LocalDateTime sampleEndTime;
|
||||
|
||||
@Schema(description = "分析人")
|
||||
private String assayOperator;
|
||||
|
||||
|
||||
@@ -2,10 +2,7 @@ package com.zt.plat.module.qms.business.bus.dal.dataobject;
|
||||
|
||||
import lombok.*;
|
||||
import java.util.*;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.LocalDateTime;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import com.zt.plat.framework.mybatis.core.dataobject.BusinessBaseDO;
|
||||
/**
|
||||
@@ -64,6 +61,16 @@ public class BusinessXRFDataDO extends BusinessBaseDO {
|
||||
@TableField("SMP_TM")
|
||||
private LocalDateTime sampleTime;
|
||||
/**
|
||||
* 样品开始时间
|
||||
*/
|
||||
@TableField("SMP_STRT_TM")
|
||||
private LocalDateTime sampleStartTime;
|
||||
/**
|
||||
* 样品结束时间
|
||||
*/
|
||||
@TableField("SMP_END_TM")
|
||||
private LocalDateTime sampleEndTime;
|
||||
/**
|
||||
* 分析人
|
||||
*/
|
||||
@TableField("ASY_OPTR")
|
||||
|
||||
@@ -290,6 +290,7 @@ public interface BusinessAssayTaskDataMapper extends BaseMapperX<BusinessAssayTa
|
||||
.selectAs(BusinessSubSampleDO::getSampleName, BusinessAssayTaskDataExtendRespVO::getSampleName)
|
||||
.selectAs(BusinessSubSampleDO::getSampleCode, BusinessAssayTaskDataExtendRespVO::getSampleCode)
|
||||
.selectAs(BusinessSubSampleDO::getSampleAssayCode, BusinessAssayTaskDataExtendRespVO::getSampleAssayCode)
|
||||
.selectAs(BusinessSubSampleDO::getConfigSubSampleId, BusinessAssayTaskDataExtendRespVO::getConfigSubSampleId)
|
||||
.in(BusinessSubSampleDO::getSampleAssayCode, sampleAssayCodes)
|
||||
.eq(ConfigAssayMethodDO::getDictionaryBusinessKey, configAssayMethodDictionaryBusinessKey)
|
||||
.eq(BusinessAssayTaskDataDO::getIsReported, QmsCommonConstant.NO));
|
||||
|
||||
@@ -61,4 +61,18 @@ public interface BusinessAssayTaskParameterDataMapper extends BaseMapperX<Busine
|
||||
.orderByAsc(ConfigAssayMethodParameterDO::getSortNo));
|
||||
}
|
||||
|
||||
default List<BusinessAssayTaskParameterDataExtendRespVO> selectExtendByBusinessAssayTaskDataIds(List<Long> businessAssayTaskDataIdList) {
|
||||
return selectJoinList(BusinessAssayTaskParameterDataExtendRespVO.class, new MPJLambdaWrapperX<BusinessAssayTaskParameterDataDO>()
|
||||
.leftJoin(ConfigAssayMethodParameterDO.class, ConfigAssayMethodParameterDO::getId, BusinessAssayTaskParameterDataDO::getConfigAssayMethodParameterId)
|
||||
.selectAll(BusinessAssayTaskParameterDataDO.class)
|
||||
.selectAs(ConfigAssayMethodParameterDO::getConfigAssayMethodId, BusinessAssayTaskParameterDataExtendRespVO::getConfigAssayMethodId)
|
||||
.selectAs(ConfigAssayMethodParameterDO::getParameterName, BusinessAssayTaskParameterDataExtendRespVO::getParameterName)
|
||||
.selectAs(ConfigAssayMethodParameterDO::getShortName, BusinessAssayTaskParameterDataExtendRespVO::getShortName)
|
||||
.selectAs(ConfigAssayMethodParameterDO::getKey, BusinessAssayTaskParameterDataExtendRespVO::getKey)
|
||||
.selectAs(ConfigAssayMethodParameterDO::getNo, BusinessAssayTaskParameterDataExtendRespVO::getNo)
|
||||
.in(BusinessAssayTaskParameterDataDO::getBusinessAssayTaskDataId, businessAssayTaskDataIdList)
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -666,11 +666,11 @@ public class SampleAnalysisServiceImpl implements SampleAnalysisService {
|
||||
String targetParameter = target.getParameter();
|
||||
|
||||
BusinessAssayParameterDataDO businessAssayParameterDataDO = businessAssayParameterDataMapper.selectByBusinessAssayTaskDataIdAndProjectSimpleNameAndParameterKey(businessAssayTaskDataDO.getId(), targetProject, targetParameter);
|
||||
if (businessAssayParameterDataDO == null) {
|
||||
throw new ServiceException(1_032_100_000, "子样检测方法映射配置错误");
|
||||
}
|
||||
// if (businessAssayParameterDataDO == null) {
|
||||
// throw new ServiceException(1_032_100_000, "子样检测方法映射配置错误");
|
||||
// }
|
||||
|
||||
if (StringUtils.isBlank(businessAssayParameterDataDO.getValue())) {
|
||||
if (businessAssayParameterDataDO != null && StringUtils.isBlank(businessAssayParameterDataDO.getValue())) {
|
||||
//1 查询委托明细
|
||||
BusinessSampleEntrustDetailDO businessSampleEntrustDetailDO = businessSampleEntrustDetailMapper.selectByBusinessBaseSampleId(businessAssayTaskDataDO.getBusinessBaseSampleId());
|
||||
//2 查询样品大类
|
||||
@@ -1295,6 +1295,9 @@ public class SampleAnalysisServiceImpl implements SampleAnalysisService {
|
||||
if (StringUtils.isNotBlank(configInfomation)) {
|
||||
ConfigSubSampleMethodConfInfo configSubSampleMethodConfInfo = JSON.parseObject(configInfomation, ConfigSubSampleMethodConfInfo.class);
|
||||
List<ConfigSubSampleMethodConfItem> setParamList = configSubSampleMethodConfInfo.getSetParam();
|
||||
if (CollUtil.isEmpty(setParamList)) {
|
||||
continue;//跳出循环
|
||||
}
|
||||
|
||||
String methodKey = setParamList.stream().map(m -> m.getTarget().getMethodKey()).distinct().findFirst().orElse(null);
|
||||
List<BusinessAssayTaskDataDO> targetBusinessAssayTaskDataList = businessAssayTaskDataMapper.selectByBusinessSubSampleIdAndMethodKey(businessAssayTaskData.getBusinessSubSampleId(), methodKey);
|
||||
|
||||
@@ -54,6 +54,26 @@ public class XRFDeviceSampleReqVO implements Serializable {
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@Schema(description = "样品时间")
|
||||
private LocalDateTime sampleTime;
|
||||
|
||||
/**
|
||||
* 样品开始时间
|
||||
*/
|
||||
@JsonSerialize(using = LocalDateTimeSerializer.class) // 序列化(响应)
|
||||
@JsonDeserialize(using = LocalDateTimeDeserializer.class) // 反序列化(请求)
|
||||
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@Schema(description = "样品开始时间")
|
||||
private LocalDateTime sampleStartTime;
|
||||
|
||||
/**
|
||||
* 样品结束时间
|
||||
*/
|
||||
@JsonSerialize(using = LocalDateTimeSerializer.class) // 序列化(响应)
|
||||
@JsonDeserialize(using = LocalDateTimeDeserializer.class) // 反序列化(请求)
|
||||
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@Schema(description = "样品结束时间")
|
||||
private LocalDateTime sampleEndTime;
|
||||
|
||||
/**
|
||||
* 分析人
|
||||
|
||||
@@ -4,6 +4,7 @@ import java.math.BigDecimal;
|
||||
import java.math.RoundingMode;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Comparator;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@@ -17,29 +18,40 @@ import com.alibaba.fastjson2.JSON;
|
||||
import com.alibaba.fastjson2.JSONObject;
|
||||
import com.zt.plat.framework.common.util.object.BeanUtils;
|
||||
import com.zt.plat.module.qms.business.bus.controller.vo.*;
|
||||
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessAssayParameterDataDO;
|
||||
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessAssayProjectDataDO;
|
||||
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessAssayTaskDataDO;
|
||||
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessAssayTaskParameterDataDO;
|
||||
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessQCManagementDataDO;
|
||||
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessQCManagementProjectDataDO;
|
||||
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessXRFDataDO;
|
||||
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessAssayParameterDataMapper;
|
||||
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessAssayProjectDataMapper;
|
||||
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessAssayTaskDataMapper;
|
||||
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessAssayTaskParameterDataMapper;
|
||||
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessQCCoefficientDataMapper;
|
||||
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessQCCoefficientParameterDataMapper;
|
||||
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessQCManagementDataMapper;
|
||||
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessQCManagementProjectDataMapper;
|
||||
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessXRFDataMapper;
|
||||
import com.zt.plat.module.qms.business.config.controller.vo.ConfigSubSampleMethodConfInfo;
|
||||
import com.zt.plat.module.qms.business.config.controller.vo.ConfigSubSampleMethodConfItem;
|
||||
import com.zt.plat.module.qms.business.config.controller.vo.ConfigSubSampleMethodConfPoint;
|
||||
import com.zt.plat.module.qms.business.config.controller.vo.ConfigSubSampleMethodExtendRespVO;
|
||||
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigAssayMethodProjectDO;
|
||||
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigXRFConversionRateDO;
|
||||
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigXRFLineDO;
|
||||
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigXRFProjectDO;
|
||||
import com.zt.plat.module.qms.business.config.dal.mapper.ConfigAssayMethodProjectMapper;
|
||||
import com.zt.plat.module.qms.business.config.dal.mapper.ConfigSubSampleMethodMapper;
|
||||
import com.zt.plat.module.qms.business.config.dal.mapper.ConfigXRFConversionRateMapper;
|
||||
import com.zt.plat.module.qms.business.config.dal.mapper.ConfigXRFLineMapper;
|
||||
import com.zt.plat.module.qms.business.config.dal.mapper.ConfigXRFProjectMapper;
|
||||
import com.zt.plat.module.qms.enums.QmsCommonConstant;
|
||||
import com.zt.plat.module.qms.thirdpartyapi.controller.vo.*;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import jakarta.annotation.Resource;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
@@ -59,15 +71,24 @@ public class XRFDataServiceImpl implements XRFDataService {
|
||||
@Resource
|
||||
private ConfigAssayMethodProjectMapper configAssayMethodProjectMapper;
|
||||
|
||||
@Resource
|
||||
private ConfigSubSampleMethodMapper configSubSampleMethodMapper;
|
||||
|
||||
@Resource
|
||||
private BusinessXRFDataMapper businessXRFDataMapper;
|
||||
|
||||
@Resource
|
||||
private BusinessAssayTaskDataMapper businessAssayTaskDataMapper;
|
||||
|
||||
@Resource
|
||||
private BusinessAssayTaskParameterDataMapper businessAssayTaskParameterDataMapper;
|
||||
|
||||
@Resource
|
||||
private BusinessAssayProjectDataMapper businessAssayProjectDataMapper;
|
||||
|
||||
@Resource
|
||||
private BusinessAssayParameterDataMapper businessAssayParameterDataMapper;
|
||||
|
||||
@Resource
|
||||
private BusinessQCManagementDataMapper businessQCManagementDataMapper;
|
||||
|
||||
@@ -120,6 +141,11 @@ public class XRFDataServiceImpl implements XRFDataService {
|
||||
|
||||
//根据样品编号及分析方法类型,获取检测任务数据
|
||||
List<BusinessAssayTaskDataExtendRespVO> businessAssayTaskDataList = businessAssayTaskDataMapper.selectBySampleAssayCodesAndConfigAssayMethodDictionaryBusinessKey(sampleCodeList, "xshxyggpf");
|
||||
|
||||
List<Long> businessAssayTaskDataIdList = businessAssayTaskDataList.stream().map(m -> m.getId()).collect(Collectors.toList());
|
||||
//获取检测参数
|
||||
List<BusinessAssayTaskParameterDataExtendRespVO> businessAssayTaskParameterDataExtendList = businessAssayTaskParameterDataMapper.selectExtendByBusinessAssayTaskDataIds(businessAssayTaskDataIdList);
|
||||
|
||||
|
||||
//管理样和标准样
|
||||
List<BusinessQCManagementDataDO> businessQCManagementDataList = businessQCManagementDataMapper.selectBySampleAssayCodesAndConfigAssayMethodDictionaryBusinessKey(sampleCodeList, "xshxyggpf");
|
||||
@@ -128,7 +154,11 @@ public class XRFDataServiceImpl implements XRFDataService {
|
||||
// List<BusinessQCCoefficientDataDO> businessQCCoefficientDataList = businessQCCoefficientDataMapper.selectBySampleAssayCodesAndConfigAssayMethodDictionaryBusinessKey(sampleCodeList, "xshxyggpf");
|
||||
|
||||
List<BusinessAssayTaskDataDO> businessAssayTaskDataDOList = new ArrayList<>();
|
||||
List<BusinessAssayTaskParameterDataDO> businessAssayTaskParameterDataList = new ArrayList<>();
|
||||
List<BusinessAssayProjectDataDO> busElementValueList = new ArrayList<>();
|
||||
|
||||
List<BusinessAssayParameterDataDO> updateBusinessAssayParameterDataList = new ArrayList<>();
|
||||
|
||||
List<BusinessQCManagementProjectDataDO> busQcManageElementValueList = new ArrayList<>();
|
||||
// List<BusinessQCCoefficientParameterDataDO> busQccParameterValueList = new ArrayList<>();
|
||||
List<BusinessXRFDataDO> busYgDataList = new ArrayList<>();
|
||||
@@ -149,6 +179,8 @@ public class XRFDataServiceImpl implements XRFDataService {
|
||||
busYgData.setXRFSampleId(ygDeviceSample.getSampleId());
|
||||
busYgData.setSampleCode(ygDeviceSample.getSampleCode());
|
||||
busYgData.setSampleTime(ygDeviceSample.getSampleTime());
|
||||
busYgData.setSampleStartTime(ygDeviceSample.getSampleStartTime());
|
||||
busYgData.setSampleEndTime(ygDeviceSample.getSampleEndTime());
|
||||
busYgData.setAssayOperator(ygDeviceSample.getAssayOper());
|
||||
busYgData.setIsCheckCreate(ygDeviceSample.getIsCheck() ? 1 : 0);
|
||||
|
||||
@@ -164,7 +196,26 @@ public class XRFDataServiceImpl implements XRFDataService {
|
||||
List<BusinessAssayProjectDataExtendRespVO> tempBusElementValueList = new ArrayList<>();
|
||||
List<BusinessAssayTaskDataExtendRespVO> currBusinessAssayTaskDataList = businessAssayTaskDataList.stream().filter(f -> ygDeviceSample.getSampleCode().equals(f.getSampleAssayCode())).collect(Collectors.toList());
|
||||
if (currBusinessAssayTaskDataList != null && currBusinessAssayTaskDataList.size() > 0) {
|
||||
for (BusinessAssayTaskDataExtendRespVO businessAssayTaskData : currBusinessAssayTaskDataList) {
|
||||
for (BusinessAssayTaskDataExtendRespVO businessAssayTaskData : currBusinessAssayTaskDataList) {
|
||||
//处理任务参数
|
||||
List<BusinessAssayTaskParameterDataExtendRespVO> currBusinessAssayTaskParameterDataExtendList = businessAssayTaskParameterDataExtendList.stream().filter(f -> f.getBusinessAssayTaskDataId().equals(businessAssayTaskData.getId())).collect(Collectors.toList());
|
||||
for (BusinessAssayTaskParameterDataExtendRespVO currBusinessAssayTaskParameterDataExtend : currBusinessAssayTaskParameterDataExtendList) {
|
||||
switch (currBusinessAssayTaskParameterDataExtend.getKey()) {
|
||||
case "lineName":
|
||||
currBusinessAssayTaskParameterDataExtend.setValue(busYgData.getLineName());
|
||||
businessAssayTaskParameterDataList.add(BeanUtils.toBean(currBusinessAssayTaskParameterDataExtend, BusinessAssayTaskParameterDataDO.class));
|
||||
break;
|
||||
case "sampleStartTime":
|
||||
currBusinessAssayTaskParameterDataExtend.setValue(DateUtil.formatLocalDateTime(busYgData.getSampleStartTime()));
|
||||
businessAssayTaskParameterDataList.add(BeanUtils.toBean(currBusinessAssayTaskParameterDataExtend, BusinessAssayTaskParameterDataDO.class));
|
||||
break;
|
||||
case "sampleEndTime":
|
||||
currBusinessAssayTaskParameterDataExtend.setValue(DateUtil.formatLocalDateTime(busYgData.getSampleEndTime()));
|
||||
businessAssayTaskParameterDataList.add(BeanUtils.toBean(currBusinessAssayTaskParameterDataExtend, BusinessAssayTaskParameterDataDO.class));
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
List<BusinessAssayProjectDataExtendRespVO> busElementValues = businessAssayProjectDataMapper.selectByBusinessAssayTaskDataId(businessAssayTaskData.getId());
|
||||
tempBusElementValueList.addAll(busElementValues);
|
||||
}
|
||||
@@ -295,6 +346,43 @@ public class XRFDataServiceImpl implements XRFDataService {
|
||||
|
||||
if (currBusinessAssayTaskDataList != null && currBusinessAssayTaskDataList.size() > 0) {
|
||||
for (BusinessAssayTaskDataExtendRespVO businessAssayTaskData : currBusinessAssayTaskDataList) {
|
||||
ConfigSubSampleMethodExtendRespVO configSubSampleMethod = configSubSampleMethodMapper.selectByConfigSubSampleIdAndConfigAssayMethodId(businessAssayTaskData.getConfigSubSampleId(), businessAssayTaskData.getConfigAssayMethodId());
|
||||
|
||||
String configInfomation = configSubSampleMethod.getConfigInfomation();
|
||||
if (StringUtils.isNotBlank(configInfomation)) {
|
||||
ConfigSubSampleMethodConfInfo configSubSampleMethodConfInfo = JSON.parseObject(configInfomation, ConfigSubSampleMethodConfInfo.class);
|
||||
List<ConfigSubSampleMethodConfItem> setParamList = configSubSampleMethodConfInfo.getSetParam();
|
||||
if (CollUtil.isEmpty(setParamList)) {
|
||||
continue;//跳出循环
|
||||
}
|
||||
|
||||
String methodKey = setParamList.stream().map(m -> m.getTarget().getMethodKey()).distinct().findFirst().orElse(null);
|
||||
List<BusinessAssayTaskDataDO> targetBusinessAssayTaskDataList = businessAssayTaskDataMapper.selectByBusinessSubSampleIdAndMethodKey(businessAssayTaskData.getBusinessSubSampleId(), methodKey);
|
||||
List<Long> targetBusinessAssayTaskDataIdList = targetBusinessAssayTaskDataList.stream().map(m -> m.getId()).collect(Collectors.toList());
|
||||
List<BusinessAssayProjectDataExtendRespVO> targetBusinessAssayProjectDataExtendList = businessAssayProjectDataMapper.selectByBusinessAssayTaskDataIds(targetBusinessAssayTaskDataIdList);
|
||||
|
||||
for (ConfigSubSampleMethodConfItem configSubSampleMethodConfItem : setParamList) {
|
||||
ConfigSubSampleMethodConfPoint source = configSubSampleMethodConfItem.getSource();
|
||||
String project = source.getProject();
|
||||
BusinessAssayProjectDataExtendRespVO currentBusinessAssayProjectData = tempBusElementValueList.stream().filter(f -> f.getBusinessAssayTaskDataId().equals(businessAssayTaskData.getId()) && f.getSimpleName().equals(project)).findFirst().orElse(null);
|
||||
ConfigSubSampleMethodConfPoint target = configSubSampleMethodConfItem.getTarget();
|
||||
for (BusinessAssayTaskDataDO targetBusinessAssayTaskData : targetBusinessAssayTaskDataList) {
|
||||
List<String> targetProjectList = Arrays.asList(target.getProject().split(","));
|
||||
String targetParameter = target.getParameter();
|
||||
for (String targetProject : targetProjectList) {
|
||||
BusinessAssayProjectDataExtendRespVO targetBusinessAssayProjectData = targetBusinessAssayProjectDataExtendList.stream().filter(f -> f.getBusinessAssayTaskDataId().equals(targetBusinessAssayTaskData.getId()) && f.getSimpleName().equals(targetProject)).findFirst().orElse(null);
|
||||
BusinessAssayParameterDataDO businessAssayParameterDataDO = businessAssayParameterDataMapper.selectByBusinessAssayTaskDataIdAndProjectSimpleNameAndParameterKey(targetBusinessAssayProjectData.getId(), targetProject, targetParameter);
|
||||
if (businessAssayParameterDataDO != null) {
|
||||
businessAssayParameterDataDO.setValue(currentBusinessAssayProjectData.getValue());
|
||||
updateBusinessAssayParameterDataList.add(businessAssayParameterDataDO);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
busYgData.setIsMatched(QmsCommonConstant.YES);
|
||||
busYgData.setBusinessBaseSampleId(businessAssayTaskData.getBusinessBaseSampleId());
|
||||
busYgData.setBusinessSubParentSampleId(businessAssayTaskData.getBusinessSubParentSampleId());
|
||||
@@ -326,11 +414,22 @@ public class XRFDataServiceImpl implements XRFDataService {
|
||||
|
||||
//保存荧光数据
|
||||
businessXRFDataMapper.insertBatch(busYgDataList);
|
||||
|
||||
|
||||
//更新任务参数
|
||||
if (businessAssayTaskParameterDataList.size() > 0) {
|
||||
businessAssayTaskParameterDataMapper.updateBatch(businessAssayTaskParameterDataList);
|
||||
}
|
||||
|
||||
//更新分析结果
|
||||
if (busElementValueList.size() > 0) {
|
||||
businessAssayProjectDataMapper.updateBatch(busElementValueList);
|
||||
}
|
||||
|
||||
//更新检测项目参数
|
||||
if (updateBusinessAssayParameterDataList.size() > 0) {
|
||||
businessAssayParameterDataMapper.updateBatch(updateBusinessAssayParameterDataList);
|
||||
}
|
||||
|
||||
//荧光管理样和标准样
|
||||
if (busQcManageElementValueList.size() > 0) {
|
||||
businessQCManagementProjectDataMapper.updateBatch(busQcManageElementValueList);
|
||||
|
||||
Reference in New Issue
Block a user