wangfei
2025-04-21 09402133807b1e774e658a13ad365b2e6efca25b
hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowBigStorageCageServiceImpl.java
@@ -7,6 +7,7 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.mes.common.config.Const;
import com.mes.common.config.ConstSysConfig;
import com.mes.hollow.entity.HollowBigStorageCage;
import com.mes.hollow.entity.HollowBigStorageCageDetails;
import com.mes.hollow.entity.dto.FlowCardVirtualSlotDTO;
@@ -16,7 +17,7 @@
import com.mes.hollow.mapper.HollowGlassRelationInfoMapper;
import com.mes.hollow.service.HollowBigStorageCageDetailsService;
import com.mes.hollow.service.HollowBigStorageCageService;
import org.springframework.beans.factory.annotation.Value;
import com.mes.sysconfig.service.SysConfigService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@@ -33,13 +34,15 @@
@Service
public class HollowBigStorageCageServiceImpl extends ServiceImpl<HollowBigStorageCageMapper, HollowBigStorageCage> implements HollowBigStorageCageService {
    @Value("${mes.slotWidth}")
    private Integer slotWidth;
//    @Value("${mes.slotWidth}")
//    private Integer slotWidth;
    @Resource
    private HollowBigStorageCageDetailsService hollowBigStorageCageDetailsService;
    @Resource
    private HollowGlassRelationInfoMapper hollowGlassRelationInfoMapper;
    @Resource
    private SysConfigService sysConfigService;
    @Override
    public List<HollowBigStorageAndDetailsDTO> queryHollowBigStorageCageDetail(HollowBigStorageDetailsQueryVO query) {
@@ -68,6 +71,7 @@
    @Override
    public List<Map<String, Object>> selectBigStorageCageUsage() {
        Integer slotWidth = sysConfigService.queryConfigValue(ConstSysConfig.HOLLOW_SLOT_WIDTH);
        QueryWrapper<HollowBigStorageCage> wrapper = new QueryWrapper<>();
        wrapper.select("device_id,ROUND(1 - SUM(CASE WHEN remain_width = " + slotWidth + " THEN 1 ELSE 0 END) / COUNT(device_id), 2)*100 AS percentage,SUM(CASE WHEN remain_width = " + slotWidth + " THEN 1 ELSE 0 END) AS count")
                .groupBy("device_id");
@@ -80,6 +84,7 @@
        hollowBigStorageCageDetailsService.remove(new LambdaQueryWrapper<HollowBigStorageCageDetails>()
                .eq(HollowBigStorageCageDetails::getState, Const.GLASS_STATE_NEW));
//        2将空格子的尺寸置为初始尺寸
        Integer slotWidth = sysConfigService.queryConfigValue(ConstSysConfig.HOLLOW_SLOT_WIDTH);
        this.update(new LambdaUpdateWrapper<HollowBigStorageCage>()
                .set(HollowBigStorageCage::getRemainWidth, slotWidth)
                .notInSql(HollowBigStorageCage::getSlot, "select distinct slot from hollow_big_storage_cage_details where state in( 100 , 102 , 103 ,104)"));