From 8abe275e36823f1065300af45e1f7a9a68f549a7 Mon Sep 17 00:00:00 2001 From: Fixiaobai <fixiaobai@163.com> Date: 星期三, 06 九月 2023 16:14:40 +0800 Subject: [PATCH] 修改bug --- inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java | 48 ++++++++++++++++++++++++++++++++++++------------ 1 files changed, 36 insertions(+), 12 deletions(-) diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java index 580f029..6494553 100644 --- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java +++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java @@ -9,18 +9,21 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.yuanchu.limslaboratory.exception.ApplicationException; import com.yuanchu.limslaboratory.mapper.*; import com.yuanchu.limslaboratory.pojo.*; import com.yuanchu.limslaboratory.pojo.vo.InsProductVo; import com.yuanchu.limslaboratory.pojo.vo.InspectDetailVo; import com.yuanchu.limslaboratory.pojo.vo.InspectionVo; import com.yuanchu.limslaboratory.service.*; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; 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; /** @@ -30,6 +33,7 @@ * @since 2023-08-03 13:03:36 */ @Service +@Slf4j public class InspectionServiceImpl extends ServiceImpl<InspectionMapper, Inspection> implements InspectionService { @Resource @@ -83,14 +87,13 @@ //鏂板妫�楠屽崟-->閫夋嫨妫�楠岄」鐩増鏈� @Override public List<Integer> chooseVer(String name, String mcode, String specifications) { - Integer specificationId = getSpecificationId(name, mcode, specifications); - return productMapper.chooseVersion(specificationId); + return productMapper.chooseVersion(Integer.parseInt(specifications)); } //鏂板妫�楠屽崟-->閫夋嫨妫�楠岄」鐩増鏈�-->鏌ョ湅璇ョ増鏈笅鎴戜滑瑕佸仛鐨勯」鐩姹� @Override public List<Map<String, Object>> lookProByVer(String name, String mcode, String specifications, Integer version, String experiment) { - Integer specificationId = getSpecificationId(name, mcode, specifications); + Integer specificationId = Integer.parseInt(specifications); /*濡傛灉璇曢獙椤圭洰涓虹┖鍒欐槸鎴愬搧妫�楠屾垨鑰呭師鏉愭枡妫�楠屽垯鏄睍绀鸿鐗堟湰鐨勬墍鏈夐」鐩楠岃姹傚弬鏁�*/ if (ObjectUtils.isEmpty(experiment)) { return productMapper.pageProductInformation(specificationId, version); @@ -119,7 +122,8 @@ */ @Override @Transactional(rollbackFor = Exception.class) - public Integer addInspect(Integer id, InspectionVo inspectionVo) { + public Integer addInspect(Integer id, InspectionVo inspectionVo) throws ApplicationException { + log.info(inspectionVo.toString()); /*鏂板妫�楠岀敵璇疯〃*/ Inspection inspection = Inspection.builder() .startTime(inspectionVo.getStartTime()) @@ -152,14 +156,21 @@ .num(inspectionVo.getNum()) .unit(inspectionVo.getUnit()) .supplier(inspectionVo.getSupplier()) + .specificationsId(inspectionVo.getSpecificationId()) .specifications(inspectionVo.getSpecifications()) .formTime(inspectionVo.getFormTime()) .inspectionId(inspection.getId()) + .notes(inspectionVo.getNotes()) .build(); inspectionMaterialMapper.insert(inspectionMaterial); /*鏂板妫�楠岄」鐩〃*/ //鏍规嵁鏍峰搧鍚嶇О缂栧彿浠ュ強鍨嬪彿瑙勬牸鑾峰彇鍨嬪彿id - Integer specificationId = getSpecificationId(inspectionVo.getName(), inspectionVo.getMcode(), inspectionVo.getSpecifications()); + Integer specificationId = Integer.parseInt(inspectionVo.getSpecificationId()); + //if(ObjectUtils.isNotEmpty(inspectionVo.getSpecificationId())){ + // specificationId =Integer.parseInt(inspectionVo.getSpecificationId()); + //}else{ + // specificationId=getSpecificationId(inspectionVo.getName(), inspectionVo.getMcode(), inspectionVo.getSpecifications()); + //} //濡傛灉璇曢獙椤圭洰瀛楁涓嶄负绌哄垯鎸夎瀛楁鐨勯」鐩繘琛屽尮閰� if (ObjectUtils.isNotEmpty(inspectionVo.getExperiment())) { //鑾峰彇璇曢獙椤圭洰淇℃伅(缁撴瀯,瀵肩嚎澶栧緞) @@ -197,7 +208,20 @@ return inspection.getId(); } //濡傛灉璇曢獙椤圭洰涓虹┖鍒欐寜鐓у瀷鍙穒d鍦ㄦ爣鍑嗗簱閲岄潰鍏ㄩ儴鍖归厤 - List<Product> productList = productMapper.selectList(Wrappers.<Product>query().eq("specifications_id", specificationId)); + List<Product> productList = + productMapper.selectList(Wrappers.<Product>query() + .eq("specifications_id", specificationId) + .eq("version",inspectionVo.getVersion())); + productList.stream().forEach(p->{ + String internal = Optional.ofNullable(p) + .map(Product::getInternal) + .orElse("绌�"); + String required = Optional.ofNullable(p) + .map(Product::getRequired).orElse("绌�"); + if(Objects.equals("绌�",internal)||Objects.equals(required,"绌�")) { + throw new ApplicationException("椤圭洰鐗堟湰涓嶅彲鐢�"); + } + }); //灏嗘煡璇㈢殑椤圭洰淇℃伅鏋勫缓鎴愭楠岄」鐩� ArrayList<InspectionProduct> list = new ArrayList<>(); for (Product product : productList) { @@ -236,7 +260,8 @@ BeanUtils.copyProperties(inspectionMaterial, inspectDetailVo); /*鏌ヨ妫�楠屽崟閲岄潰鐨勬楠岄」鐩�,骞跺皝瑁呭埌RawInspectVo瀵硅薄涓�*/ LambdaQueryWrapper<InspectionProduct> queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(InspectionProduct::getInspectionMaterialId, inspectionMaterial.getId()); + queryWrapper + .eq(InspectionProduct::getInspectionMaterialId, inspectionMaterial.getId()); List<InspectionProduct> inspectionProducts = inspectionProductMapper.selectList(queryWrapper); //杩欓噷鏌ュ埌鐨勮澶噄d鍜屾楠屽憳id瑕佹煡璇㈠悕绉� List<InsProductVo> insProductVos = inspectionProducts.stream().map(insProduct -> { @@ -245,16 +270,15 @@ BeanUtils.copyProperties(insProduct, insProductVo); //鑾峰彇璁惧鍚�(鍓嶆彁鏄鏋滃瓨鍦�) if (insProduct.getInstrumentId() != null) { - String equipmentName = instrumentService.getById(insProduct.getInstrumentId()).getEquipmentName(); - insProductVo.setInstrumentName(equipmentName); + insProductVo.setInstrumentId(insProduct.getInstrumentId()); } //鑾峰彇鐢ㄦ埛鍚�(鍓嶆彁鏄鏋滃瓨鍦�) - if (insProduct.getUserId() != null) { - String userName = userMapper.selectById(insProduct.getUserId()).getName(); - insProductVo.setUserName(userName); + if (insProduct.getUserProId() != null) { + insProductVo.setUserId(insProduct.getUserProId()); } //椤圭洰鍏宠仈鐗╂枡id insProductVo.setInspectionMaterialId(inspectionMaterial.getId()); + insProductVo.setId(insProduct.getId()); return insProductVo; }).collect(Collectors.toList()); inspectDetailVo.setInsProducts(insProductVos); -- Gitblit v1.9.3