From f29c8786807015d78b9be8a33397f69478d92a76 Mon Sep 17 00:00:00 2001 From: liding <756868258@qq.com> Date: 星期六, 12 七月 2025 16:52:27 +0800 Subject: [PATCH] 1.设备优化 2.配煤计算器 --- main-business/src/main/java/com/ruoyi/business/service/impl/EquipmentManagementServiceImpl.java | 51 +++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 47 insertions(+), 4 deletions(-) diff --git a/main-business/src/main/java/com/ruoyi/business/service/impl/EquipmentManagementServiceImpl.java b/main-business/src/main/java/com/ruoyi/business/service/impl/EquipmentManagementServiceImpl.java index dbad9ab..863d663 100644 --- a/main-business/src/main/java/com/ruoyi/business/service/impl/EquipmentManagementServiceImpl.java +++ b/main-business/src/main/java/com/ruoyi/business/service/impl/EquipmentManagementServiceImpl.java @@ -4,13 +4,14 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.business.dto.EquipmentManagementDto; -import com.ruoyi.business.dto.ProductionMasterDto; import com.ruoyi.business.entity.EquipmentManagement; -import com.ruoyi.business.entity.Production; +import com.ruoyi.business.entity.EquipmentUsageRecord; import com.ruoyi.business.mapper.EquipmentManagementMapper; +import com.ruoyi.business.mapper.EquipmentUsageRecordMapper; import com.ruoyi.business.service.EquipmentManagementService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.business.vo.EquipmentManagementVo; +import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.bean.BeanUtils; import org.springframework.stereotype.Service; import lombok.RequiredArgsConstructor; @@ -33,10 +34,52 @@ private final EquipmentManagementMapper equipmentManagementMapper; + private final EquipmentUsageRecordMapper equipmentUsageRecordMapper; + public IPage<EquipmentManagementDto> selectProductionList(Page<EquipmentManagement> page, EquipmentManagementDto equipmentManagementDto) { - Page<EquipmentManagement> entityPage = equipmentManagementMapper.selectPage(page, null); + // 1. 鏋勫缓鏌ヨ鏉′欢锛坰earchAll 妯$硦鏌ヨ锛� + LambdaQueryWrapper<EquipmentManagement> queryWrapper = new LambdaQueryWrapper<>(); + + if (StringUtils.isNotBlank(equipmentManagementDto.getSearchAll())) { + String searchValue = equipmentManagementDto.getSearchAll(); + queryWrapper.and(wrapper -> + wrapper.like(EquipmentManagement::getEquipmentNo, searchValue) + .or() + .like(EquipmentManagement::getEquipmentName, searchValue) + .or() + .like(EquipmentManagement::getSpecification, searchValue) + ); + } + + // 2. 鎵ц鍒嗛〉鏌ヨ + Page<EquipmentManagement> entityPage = equipmentManagementMapper.selectPage(page, queryWrapper); + + // 3. 杞崲涓� DTO 鍒嗛〉 IPage<EquipmentManagementDto> dtoPage = new Page<>(); - BeanUtils.copyProperties(entityPage, dtoPage); + BeanUtils.copyProperties(entityPage, dtoPage, "records"); + + // 4. 鏌ヨ姣忎釜璁惧鐨勪娇鐢ㄦ�婚噺锛坲sageQuantity锛夊苟璁剧疆鍒� DTO + List<EquipmentManagementDto> dtoRecords = entityPage.getRecords().stream() + .map(entity -> { + EquipmentManagementDto dto = new EquipmentManagementDto(); + BeanUtils.copyProperties(entity, dto); + + // 鏌ヨ璇ヨ澶囩殑浣跨敤鎬婚噺锛坲sageQuantity锛� + LambdaQueryWrapper<EquipmentUsageRecord> usageQueryWrapper = new LambdaQueryWrapper<>(); + usageQueryWrapper.eq(EquipmentUsageRecord::getEquipmentId, entity.getId()); + + // 璁$畻鎬讳娇鐢ㄩ噺 + Integer totalUsage = equipmentUsageRecordMapper.selectList(usageQueryWrapper).stream() + .mapToInt(EquipmentUsageRecord::getUsageQuantity) + .sum(); + + // 璁剧疆浣跨敤鎬婚噺 + dto.setUsedNo(totalUsage); + return dto; + }) + .toList(); + + dtoPage.setRecords(dtoRecords); return dtoPage; } -- Gitblit v1.9.3