From bb79df40aa4c1c80f294f2d1965304a3215744cb Mon Sep 17 00:00:00 2001 From: Fixiaobai <fixiaobai@163.com> Date: 星期四, 31 八月 2023 17:24:50 +0800 Subject: [PATCH] 修改委托信息 --- inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/LinkBasicInformationServiceImpl.java | 69 ++++++++++++++++++++++++++++++++-- 1 files changed, 65 insertions(+), 4 deletions(-) diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/LinkBasicInformationServiceImpl.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/LinkBasicInformationServiceImpl.java index db1d27a..895673c 100644 --- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/LinkBasicInformationServiceImpl.java +++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/LinkBasicInformationServiceImpl.java @@ -2,11 +2,16 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.limslaboratory.mapper.LinkDetectionMapper; +import com.yuanchu.limslaboratory.mapper.ProductMapper; +import com.yuanchu.limslaboratory.mapper.SpecificationsMapper; import com.yuanchu.limslaboratory.pojo.LinkBasicInformation; import com.yuanchu.limslaboratory.mapper.LinkBasicInformationMapper; import com.yuanchu.limslaboratory.pojo.LinkDetection; +import com.yuanchu.limslaboratory.pojo.Specifications; +import com.yuanchu.limslaboratory.service.InspectionService; import com.yuanchu.limslaboratory.service.LinkBasicInformationService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.yuanchu.limslaboratory.service.LinkDetectionService; @@ -18,6 +23,8 @@ import javax.annotation.Resource; import java.util.*; +import java.util.concurrent.atomic.AtomicBoolean; +import java.util.stream.Collectors; /** * <p> @@ -39,17 +46,40 @@ @Autowired private LinkDetectionService linkDetectionService; + @Autowired + private SpecificationsMapper specificationsMapperOn; + + @Resource + private InspectionService inspectionService; + + @Resource + private ProductMapper productMapper; + @Override @Transactional(rollbackFor = Exception.class) public String addLinkBasicInformation(LinkBasicInformation linkBasicInformation) { QueryWrapper<LinkBasicInformation> queryWrapper = new QueryWrapper<>(); queryWrapper.lambda().select(LinkBasicInformation::getId).eq(LinkBasicInformation::getUid, linkBasicInformation.getUid()); LinkBasicInformation linkBasicInformation1 = linkBasicInformationMapper.selectOne(queryWrapper); - Optional.ofNullable(linkBasicInformation1.getId()).ifPresent(l->{ - //鎵ц鍒犻櫎 - linkDetectionMapper.deleteByLinkbasic(linkBasicInformation1.getId()); - linkBasicInformationMapper.deleteByID(linkBasicInformation1.getId()); + Optional<Integer> optionalId = Optional.ofNullable(linkBasicInformation1) + .map(LinkBasicInformation::getId); + AtomicBoolean b=new AtomicBoolean(true); + optionalId.ifPresent(l->{ + QueryWrapper<LinkDetection>queryWrapperLd = new QueryWrapper<>(); + queryWrapperLd.lambda().select(LinkDetection::getInspectionStatus).eq(LinkDetection::getLinkBasicId,linkBasicInformation1.getId()); + List<LinkDetection> linkDetections = linkDetectionMapper.selectList(queryWrapperLd).stream().filter(ld->ld.getInspectionStatus()==2).collect(Collectors.toList()); + if(linkDetections.size()<1){ + //鎵ц鍒犻櫎 + linkDetectionMapper.deleteByLinkbasic(linkBasicInformation1.getId()); + linkBasicInformationMapper.deleteByID(linkBasicInformation1.getId()); + b.set(false); + }else { + b.set(true); + } }); + if(b.get()){ + return "鎻愪氦澶辫触锛屽惈鏈夊凡鎶ユ鏍峰搧"; + } //濮旀墭缂栧彿 String code = MyUtil.getTimeSixNumberCode("SL", "SL"); linkBasicInformation.setEntrustCoding(code); @@ -113,5 +143,36 @@ linkDetectionService.updateById(linkDetection); } + @Override + public Specifications getSpecificationsName(String id) { + QueryWrapper<Specifications>queryWrapper=new QueryWrapper<>(); + queryWrapper.lambda().select(Specifications::getName) + .eq(Specifications::getId,id) + .eq(Specifications::getState,1); + return specificationsMapperOn.selectOne(queryWrapper); + } + + @Override + public List<Map<String,Object>> lookProByVer(String name, String mcode, String specifications,Integer version, Integer id) { + LinkDetection linkDetection = linkDetectionMapper.selectById(id); + List<String> experiments = Arrays.stream(linkDetection.getExperiment().split(",")).collect(Collectors.toList()); + //鏍规嵁鍨嬪彿id鍜岄」鐩俊鎭煡璇㈤」鐩俊鎭� + List<Map<String, Object>> products = new ArrayList<>(); + for (String exper : experiments) { + List<Map<String, Object>> list = productMapper.selFath(Integer.parseInt(linkDetection.getSpecificationsModels()), exper, version); + if (ObjectUtils.isEmpty(list)) { + Map<String, Object> project = productMapper.selNam(Integer.parseInt(linkDetection.getSpecificationsModels()), exper, version); + products.add(project); + } + products.addAll(list); + } + return products; + } + + @Override + public Object chooseVer( LinkDetection linkDetection) { + return productMapper.chooseVersion(Integer.parseInt(linkDetection.getSpecificationsModels())); + } + } -- Gitblit v1.9.3