处理样品数量及检测项目
This commit is contained in:
@@ -12,6 +12,8 @@ import com.yomahub.liteflow.annotation.LiteflowComponent;
|
||||
import com.yomahub.liteflow.core.NodeComponent;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
|
||||
import com.zt.plat.framework.common.exception.ServiceException;
|
||||
import com.zt.plat.framework.security.core.LoginUser;
|
||||
import com.zt.plat.framework.security.core.util.SecurityFrameworkUtils;
|
||||
@@ -23,6 +25,7 @@ import com.zt.plat.module.qms.business.bus.liteflow.param.SampleEntrustDetail;
|
||||
import com.zt.plat.module.qms.business.bus.liteflow.param.SampleEntrustDetailProject;
|
||||
import com.zt.plat.module.qms.business.bus.liteflow.param.SampleEntrustParam;
|
||||
import com.zt.plat.module.qms.business.bus.liteflow.slot.SampleEntrustContext;
|
||||
import com.zt.plat.module.qms.business.config.controller.vo.MaterialAssayStandardDetailRespVO;
|
||||
import com.zt.plat.module.qms.business.config.dal.dataobject.BaseSampleDO;
|
||||
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigEntrustSourceDO;
|
||||
import com.zt.plat.module.qms.business.config.dal.dataobject.MaterialAssayStandardDO;
|
||||
@@ -106,7 +109,7 @@ public class SampleEntrustContextInitCmp extends NodeComponent {
|
||||
|
||||
//物料检验标准项
|
||||
// List<MaterialAssayStandardDetailDO> materialAssayStandardDetailList = materialAssayStandardDetailMapper.selectList();
|
||||
List<MaterialAssayStandardDetailDO> materialAssayStandardDetailList = materialAssayStandardDetailMapper.selectByIds(materialAssayStandardDetailIdList);
|
||||
List<MaterialAssayStandardDetailRespVO> materialAssayStandardDetailList = materialAssayStandardDetailMapper.selectExtendByIds(materialAssayStandardDetailIdList);
|
||||
sampleEntrustContext.setMaterialAssayStandardDetailList(materialAssayStandardDetailList);
|
||||
|
||||
List<Long> materialAssayStandardIdList = materialAssayStandardDetailList.stream().map(m -> m.getMaterialAssayStandardId()).distinct().collect(Collectors.toList());
|
||||
@@ -124,6 +127,10 @@ public class SampleEntrustContextInitCmp extends NodeComponent {
|
||||
//委托登记
|
||||
BusinessSampleEntrustRegistrationDO sampleEntrustRegistration = BeanUtil.copyProperties(sampleEntrustParam, BusinessSampleEntrustRegistrationDO.class);
|
||||
|
||||
if (sampleEntrustRegistration.getSampleQuantity() == null) {
|
||||
sampleEntrustRegistration.setSampleQuantity(detailList.size());
|
||||
}
|
||||
|
||||
//委托来源id为空并且委托来源key也为空
|
||||
if (sampleEntrustParam.getConfigEntrustSourceId() == null && StringUtils.isBlank(sampleEntrustParam.getConfigEntrustSourceKey())) {
|
||||
throw new ServiceException(1_032_100_000, "委托来源id或委托来源key为空");
|
||||
@@ -162,12 +169,21 @@ public class SampleEntrustContextInitCmp extends NodeComponent {
|
||||
sampleEntrustDetail.setSort(sort);
|
||||
sort++;
|
||||
}
|
||||
if (StringUtils.isBlank(sampleEntrustDetail.getSampleName())) {
|
||||
sampleEntrustDetail.setSampleName(sampleEntrustDetail.getEntrustSampleName());
|
||||
}
|
||||
List<String> assayProjectList = new ArrayList<>();
|
||||
List<SampleEntrustDetailProject> projectList = sampleEntrustDetail.getSampleEntrustDetailProjectList();
|
||||
for (SampleEntrustDetailProject sampleEntrustDetailProject : projectList) {
|
||||
MaterialAssayStandardDetailRespVO materialAssayStandardDetail = materialAssayStandardDetailList.stream().filter(f -> sampleEntrustDetailProject.getMaterialAssayStandardDetailId().equals(f.getId())).findFirst().orElse(null);
|
||||
assayProjectList.add(materialAssayStandardDetail.getDictionaryProjectShowName());
|
||||
if (sampleEntrustDetailProject.getBusinessSampleEntrustDetailId() == null) {
|
||||
sampleEntrustDetailProject.setBusinessSampleEntrustDetailId(sampleEntrustDetail.getId());
|
||||
}
|
||||
}
|
||||
if (StringUtils.isBlank(sampleEntrustDetail.getAssayProject())) {
|
||||
sampleEntrustDetail.setAssayProject(CollUtil.join(assayProjectList, ","));
|
||||
}
|
||||
sampleEntrustProjectList.addAll(BeanUtil.copyToList(projectList, BusinessSampleEntrustProjectDO.class));
|
||||
}
|
||||
sampleEntrustContext.setSampleEntrustProjectList(sampleEntrustProjectList);
|
||||
|
||||
@@ -26,6 +26,7 @@ import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSampleEntrustFileM
|
||||
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSampleEntrustProjectMapper;
|
||||
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSampleEntrustRegistrationMapper;
|
||||
import com.zt.plat.module.qms.business.bus.liteflow.slot.SampleEntrustContext;
|
||||
import com.zt.plat.module.qms.business.config.controller.vo.MaterialAssayStandardDetailRespVO;
|
||||
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigEntrustSourceDO;
|
||||
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigReportTemplateDO;
|
||||
import com.zt.plat.module.qms.business.config.dal.dataobject.MaterialAssayStandardDetailDO;
|
||||
@@ -152,7 +153,7 @@ public class SampleEntrustCreateDataCmp extends NodeComponent {
|
||||
|
||||
List<BusinessSampleEntrustProjectDO> sampleEntrustProjectList = sampleEntrustContext.getSampleEntrustProjectList();
|
||||
for (BusinessSampleEntrustProjectDO businessSampleEntrustProject : sampleEntrustProjectList) {
|
||||
MaterialAssayStandardDetailDO materialAssayStandardDetail = sampleEntrustContext.getMaterialAssayStandardDetailById(businessSampleEntrustProject.getMaterialAssayStandardDetailId());
|
||||
MaterialAssayStandardDetailRespVO materialAssayStandardDetail = sampleEntrustContext.getMaterialAssayStandardDetailById(businessSampleEntrustProject.getMaterialAssayStandardDetailId());
|
||||
businessSampleEntrustProject.setDictionaryProjectId(materialAssayStandardDetail.getDictionaryProjectId());
|
||||
}
|
||||
|
||||
|
||||
@@ -27,6 +27,7 @@ import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSampleEntrustFileM
|
||||
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSampleEntrustProjectMapper;
|
||||
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSampleEntrustRegistrationMapper;
|
||||
import com.zt.plat.module.qms.business.bus.liteflow.slot.SampleEntrustContext;
|
||||
import com.zt.plat.module.qms.business.config.controller.vo.MaterialAssayStandardDetailRespVO;
|
||||
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigEntrustSourceDO;
|
||||
import com.zt.plat.module.qms.business.config.dal.dataobject.MaterialAssayStandardDetailDO;
|
||||
import com.zt.plat.module.qms.enums.QmsCommonConstant;
|
||||
@@ -156,7 +157,7 @@ public class SampleEntrustUpdateDataCmp extends NodeComponent {
|
||||
|
||||
List<BusinessSampleEntrustProjectDO> sampleEntrustProjectList = sampleEntrustContext.getSampleEntrustProjectList();
|
||||
for (BusinessSampleEntrustProjectDO businessSampleEntrustProject : sampleEntrustProjectList) {
|
||||
MaterialAssayStandardDetailDO materialAssayStandardDetail = sampleEntrustContext.getMaterialAssayStandardDetailById(businessSampleEntrustProject.getMaterialAssayStandardDetailId());
|
||||
MaterialAssayStandardDetailRespVO materialAssayStandardDetail = sampleEntrustContext.getMaterialAssayStandardDetailById(businessSampleEntrustProject.getMaterialAssayStandardDetailId());
|
||||
businessSampleEntrustProject.setDictionaryProjectId(materialAssayStandardDetail.getDictionaryProjectId());
|
||||
}
|
||||
|
||||
|
||||
@@ -11,6 +11,7 @@ import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSampleEntrustD
|
||||
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSampleEntrustProjectDO;
|
||||
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSampleEntrustRegistrationDO;
|
||||
import com.zt.plat.module.qms.business.bus.liteflow.param.SampleFlowInfo;
|
||||
import com.zt.plat.module.qms.business.config.controller.vo.MaterialAssayStandardDetailRespVO;
|
||||
import com.zt.plat.module.qms.business.config.dal.dataobject.BaseSampleDO;
|
||||
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigEntrustSourceDO;
|
||||
import com.zt.plat.module.qms.business.config.dal.dataobject.MaterialAssayStandardDO;
|
||||
@@ -72,10 +73,10 @@ public class SampleEntrustContext {
|
||||
private List<MaterialAssayStandardDO> materialAssayStandardList;
|
||||
|
||||
/** 物料检测标准检测项目列表 **/
|
||||
private List<MaterialAssayStandardDetailDO> materialAssayStandardDetailList;
|
||||
private List<MaterialAssayStandardDetailRespVO> materialAssayStandardDetailList;
|
||||
|
||||
public MaterialAssayStandardDetailDO getMaterialAssayStandardDetailById(Long id) {
|
||||
MaterialAssayStandardDetailDO materialAssayStandardDetail = null;
|
||||
public MaterialAssayStandardDetailRespVO getMaterialAssayStandardDetailById(Long id) {
|
||||
MaterialAssayStandardDetailRespVO materialAssayStandardDetail = null;
|
||||
if (CollUtil.isNotEmpty(this.materialAssayStandardDetailList)) {
|
||||
materialAssayStandardDetail = this.materialAssayStandardDetailList.stream().filter(f -> id.equals(f.getId())).findFirst().orElse(null);
|
||||
}
|
||||
|
||||
@@ -57,4 +57,17 @@ public interface MaterialAssayStandardDetailMapper extends BaseMapperX<MaterialA
|
||||
);
|
||||
}
|
||||
|
||||
default List<MaterialAssayStandardDetailRespVO> selectExtendByIds(List<Long> idList) {
|
||||
return selectJoinList(MaterialAssayStandardDetailRespVO.class, new MPJLambdaWrapperX<MaterialAssayStandardDetailDO>()
|
||||
.leftJoin(MaterialAssayStandardDO.class, MaterialAssayStandardDO::getId, MaterialAssayStandardDetailDO::getMaterialAssayStandardId)
|
||||
.leftJoin(DictionaryProjectDO.class, DictionaryProjectDO::getId, MaterialAssayStandardDetailDO::getDictionaryProjectId)
|
||||
.selectAll(MaterialAssayStandardDetailDO.class)
|
||||
.selectAs(MaterialAssayStandardDO::getBaseSampleId, MaterialAssayStandardDetailRespVO::getBaseSampleId)
|
||||
.selectAs(DictionaryProjectDO::getName, MaterialAssayStandardDetailRespVO::getDictionaryProjectName)
|
||||
.selectAs(DictionaryProjectDO::getSimpleName, MaterialAssayStandardDetailRespVO::getDictionaryProjectSimpleName)
|
||||
.selectAs(DictionaryProjectDO::getShowName, MaterialAssayStandardDetailRespVO::getDictionaryProjectShowName)
|
||||
.selectAs(DictionaryProjectDO::getCode, MaterialAssayStandardDetailRespVO::getDictionaryProjectCode)
|
||||
.in(MaterialAssayStandardDetailDO::getId, idList));
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user