From fbde0b947b4641081b558302ea77d88c902c4cd1 Mon Sep 17 00:00:00 2001 From: liding <756868258@qq.com> Date: 星期三, 30 四月 2025 10:03:24 +0800 Subject: [PATCH] 可靠性计划优化检验项 --- inspect-server/src/main/java/com/ruoyi/inspect/service/impl/ReliabilityPlanProductServiceImpl.java | 53 +++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 45 insertions(+), 8 deletions(-) diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/ReliabilityPlanProductServiceImpl.java b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/ReliabilityPlanProductServiceImpl.java index cb7d510..5d4abd1 100644 --- a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/ReliabilityPlanProductServiceImpl.java +++ b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/ReliabilityPlanProductServiceImpl.java @@ -1,18 +1,22 @@ package com.ruoyi.inspect.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.common.utils.QueryWrappers; -import com.ruoyi.common.utils.StringUtils; import com.ruoyi.inspect.dto.ReliabilityPlanProductDto; +import com.ruoyi.inspect.mapper.ReliabilityPlanProductItemMapper; import com.ruoyi.inspect.pojo.ReliabilityPlanProduct; import com.ruoyi.inspect.mapper.ReliabilityPlanProductMapper; +import com.ruoyi.inspect.pojo.ReliabilityPlanProductItem; import com.ruoyi.inspect.service.ReliabilityPlanProductService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; import org.springframework.stereotype.Service; -import java.util.Objects; +import java.util.*; /** * <p> @@ -27,6 +31,7 @@ public class ReliabilityPlanProductServiceImpl extends ServiceImpl<ReliabilityPlanProductMapper, ReliabilityPlanProduct> implements ReliabilityPlanProductService { private ReliabilityPlanProductMapper reliabilityPlanProductMapper; + private ReliabilityPlanProductItemMapper reliabilityPlanProductItemMapper; @Override public IPage<ReliabilityPlanProduct> selectProduct(Page page, ReliabilityPlanProductDto reliabilityPlanProductDto) { @@ -35,16 +40,48 @@ @Override public int addOrUpdateProduct(ReliabilityPlanProductDto reliabilityPlanProductDto) { + int i; if (Objects.isNull(reliabilityPlanProductDto.getId())) { - reliabilityPlanProductDto.setState(null); - return reliabilityPlanProductMapper.insert(reliabilityPlanProductDto); + reliabilityPlanProductDto.setState(0); + i = reliabilityPlanProductMapper.insert(reliabilityPlanProductDto); } else { - //1宸插鏍� - if (!StringUtils.isNotBlank(reliabilityPlanProductDto.getState())) { - reliabilityPlanProductDto.setState(null); + // 瀹℃牳鐘舵�� 0.寰呮彁浜�1.寰呭鏍�2.閫氳繃3.涓嶉�氳繃 + int state = reliabilityPlanProductDto.getState(); + if (state != 0 && state != 1 && state != 2) { + reliabilityPlanProductDto.setState(3); } - return reliabilityPlanProductMapper.updateById(reliabilityPlanProductDto); + i = reliabilityPlanProductMapper.updateById(reliabilityPlanProductDto); } + if (i > 0) { + Long id = reliabilityPlanProductDto.getId(); // 浠庢暟鎹簱涓煡璇㈡柊鐨勬暟鎹� + List<Map<String, Object>> maps = reliabilityPlanProductItemMapper.itemList(id); + List<ReliabilityPlanProductItem> newItemList = new ArrayList<>(); + for (Map<String, Object> map : maps) { + ReliabilityPlanProductItem item = new ReliabilityPlanProductItem(); + item.setInspectionItem((String) map.get("inspectionItem")); + item.setStandard((String) map.get("standard")); + item.setFrequency((String) map.get("frequency")); + item.setPlanId(id); + item.setType(reliabilityPlanProductDto.getItemType()); + newItemList.add(item); + } + // 鏌ヨ鏁版嵁搴撲腑宸插瓨鍦ㄧ殑鏁版嵁 + List<ReliabilityPlanProductItem> existingItemList = reliabilityPlanProductItemMapper.selectList( + new LambdaQueryWrapper<ReliabilityPlanProductItem>() + .eq(ReliabilityPlanProductItem::getPlanId, id) + .eq(ReliabilityPlanProductItem::getType, reliabilityPlanProductDto.getItemType()) + ); + + if (!existingItemList.isEmpty()) { + // 濡傛灉鏈夋暟鎹紝鎵ц鍒犻櫎鎿嶄綔 + reliabilityPlanProductItemMapper.delete(new LambdaUpdateWrapper<ReliabilityPlanProductItem>() + .eq(ReliabilityPlanProductItem::getPlanId, id) + .eq(ReliabilityPlanProductItem::getType, reliabilityPlanProductDto.getItemType()) + ); + } + reliabilityPlanProductItemMapper.insertBatchSomeColumn(newItemList); + } + return i; } @Override -- Gitblit v1.9.3