From a92b6f6175b1401071e5fb3bd9fab8a2a3b72011 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期五, 01 九月 2023 14:34:28 +0800
Subject: [PATCH] version
---
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/LinkBasicInformationServiceImpl.java | 94 +++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 94 insertions(+), 0 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 e9c83d9..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
@@ -1,9 +1,17 @@
package com.yuanchu.limslaboratory.service.impl;
+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;
@@ -11,9 +19,12 @@
import com.yuanchu.limslaboratory.utils.RedisUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.*;
+import java.util.concurrent.atomic.AtomicBoolean;
+import java.util.stream.Collectors;
/**
* <p>
@@ -29,15 +40,53 @@
@Resource
private LinkBasicInformationMapper linkBasicInformationMapper;
+ @Resource
+ private LinkDetectionMapper linkDetectionMapper;
+
@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<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);
+ //鏂板鍩烘湰淇℃伅琛�
int insert = linkBasicInformationMapper.insert(linkBasicInformation);
if (insert == 1) {
+ //鏂板濮旀墭鏍峰搧琛�
linkDetectionService.insertListData(linkBasicInformation.getId(), linkBasicInformation.getLinkDetectionList());
return code;
}
@@ -80,5 +129,50 @@
return uuid.equals(RedisUtil.get("viewId"));
}
+ @Override
+ public LinkBasicInformation getContractsSampleInfo(String viewId) {
+ return linkBasicInformationMapper.getLinkBasicInformation(viewId);
+ }
+
+ //鏍规嵁濮旀墭鏍峰搧鍒犻櫎
+ @Override
+ public void delLink(Integer id) {
+ LinkDetection linkDetection = new LinkDetection();
+ linkDetection.setId(id);
+ linkDetection.setState(0);
+ 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