From 49e1bc66ebaf696ebd3fc3ed33d65c8795fd3cde Mon Sep 17 00:00:00 2001 From: liding <756868258@qq.com> Date: 星期二, 01 七月 2025 18:05:12 +0800 Subject: [PATCH] 1.巡检定时任务 2.设备管理 3.文档查询 --- main-business/src/main/java/com/ruoyi/business/service/impl/PurchaseRegistrationServiceImpl.java | 52 ++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 36 insertions(+), 16 deletions(-) diff --git a/main-business/src/main/java/com/ruoyi/business/service/impl/PurchaseRegistrationServiceImpl.java b/main-business/src/main/java/com/ruoyi/business/service/impl/PurchaseRegistrationServiceImpl.java index ed6177c..bbae14c 100644 --- a/main-business/src/main/java/com/ruoyi/business/service/impl/PurchaseRegistrationServiceImpl.java +++ b/main-business/src/main/java/com/ruoyi/business/service/impl/PurchaseRegistrationServiceImpl.java @@ -1,7 +1,6 @@ package com.ruoyi.business.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -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.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -24,7 +23,10 @@ import org.springframework.util.Assert; import java.time.LocalDate; +import java.util.Arrays; +import java.util.List; import java.util.Objects; +import java.util.stream.Collectors; /** * <p> @@ -48,16 +50,29 @@ private final SupplyMapper supplyMapper; @Override - public IPage<PurchaseRegistration> selectPurchaseRegistrationList(Page page, PurchaseRegistrationDto purchaseRegistrationDto) { + public IPage<PurchaseRegistration> selectPurchaseRegistrationList(Page<PurchaseRegistration> page, PurchaseRegistrationDto dto) { LambdaQueryWrapper<PurchaseRegistration> queryWrapper = new LambdaQueryWrapper<>(); - if (StringUtils.isNotBlank(purchaseRegistrationDto.getSearchAll())){ - queryWrapper.and(wrapper -> wrapper - .like(PurchaseRegistration::getCoal, purchaseRegistrationDto.getSearchAll()) - .or() - .like(PurchaseRegistration::getSupplierName, purchaseRegistrationDto.getSearchAll()) - ); + + String keyword = dto.getSearchAll(); + if (StringUtils.isNotBlank(keyword)) { + // 鏌ヨ鐓ょ鍚嶇О涓ā绯婂尮閰嶇殑coalId鍒楄〃 + List<Long> matchedCoalIds = coalInfoMapper.selectList( + new LambdaQueryWrapper<CoalInfo>().like(CoalInfo::getCoal, keyword) + ).stream() + .map(CoalInfo::getId) + .collect(Collectors.toList()); + + // 缁勮鏌ヨ鏉′欢锛氱叅绉岻D鍦ㄥ尮閰嶇殑鍒楄〃涓� + queryWrapper.and(w -> { + if (!matchedCoalIds.isEmpty()) { + w.in(PurchaseRegistration::getCoalId, matchedCoalIds).or(); + } + w.like(PurchaseRegistration::getSupplierName, keyword); + }); } + queryWrapper.orderByDesc(PurchaseRegistration::getCreateTime); + return purchaseRegistrationMapper.selectPage(page, queryWrapper); } @@ -74,7 +89,6 @@ if (coalInfo == null) { throw new BaseException("鐓ょ淇℃伅涓嶅瓨鍦�"); } - purchaseRegistration.setCoal(coalInfo.getCoal()); Supply supply = supplyMapper.selectById(purchaseRegistrationDto.getSupplierId()); if (supply == null) { throw new BaseException("渚涘簲鍟嗕俊鎭笉瀛樺湪"); @@ -109,21 +123,27 @@ BeanUtils.copyProperties(purchaseRegistration, pendingInventory); // 璁剧疆寰呭叆搴撹褰曠壒鏈夌殑灞炴�э紙濡傛灉鏈夛級 + pendingInventory.setId(null); + pendingInventory.setPurchaseId(purchaseRegistration.getId()); + pendingInventory.setCoalId(purchaseRegistration.getCoalId()); pendingInventory.setInventoryQuantity(purchaseRegistration.getPurchaseQuantity()); return pendingInventory; } @Override + @Transactional(rollbackFor = Exception.class) public int delByIds(Long[] ids) { - // 妫�鏌ュ弬鏁� if (ids == null || ids.length == 0) { return 0; } - // 鏋勯�犳洿鏂版潯浠� - UpdateWrapper<PurchaseRegistration> updateWrapper = new UpdateWrapper<>(); - updateWrapper.in("id", ids) - .set("deleted", 1); // 璁剧疆 deleted 涓� 1 琛ㄧず宸插垹闄� - // 鎵ц鎵归噺閫昏緫鍒犻櫎 - return purchaseRegistrationMapper.update(null, updateWrapper); + + // 1. 鍒犻櫎鍏宠仈鐨凱endingInventory璁板綍 + LambdaQueryWrapper<PendingInventory> wrapper = new LambdaQueryWrapper<>(); + wrapper.in(PendingInventory::getPurchaseId, Arrays.asList(ids)); + pendingInventoryMapper.delete(wrapper); // 鏀逛负delete鎿嶄綔 + + // 2. 鎵归噺鍒犻櫎閲囪喘娉ㄥ唽璁板綍 + return purchaseRegistrationMapper.deleteByIds(Arrays.asList(ids)); } + } -- Gitblit v1.9.3