From f84448a10d99a0fa82e71088051e3517637edaa7 Mon Sep 17 00:00:00 2001 From: Junjie <540245094@qq.com> Date: 星期二, 09 四月 2024 15:11:52 +0800 Subject: [PATCH] # --- zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/LocMastServiceImpl.java | 61 ++++++++++++++++++++++++++++++ 1 files changed, 61 insertions(+), 0 deletions(-) diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/LocMastServiceImpl.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/LocMastServiceImpl.java index 4c91634..d1608ec 100644 --- a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/LocMastServiceImpl.java +++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/LocMastServiceImpl.java @@ -1,12 +1,73 @@ package com.zy.asrs.common.wms.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.zy.asrs.common.domain.dto.LocRangeDto; +import com.zy.asrs.common.utils.Utils; import com.zy.asrs.common.wms.mapper.LocMastMapper; import com.zy.asrs.common.wms.entity.LocMast; import com.zy.asrs.common.wms.service.LocMastService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.zy.asrs.framework.common.Cools; import org.springframework.stereotype.Service; + +import java.util.List; @Service("locMastService") public class LocMastServiceImpl extends ServiceImpl<LocMastMapper, LocMast> implements LocMastService { + @Override + public List<String> queryGroupEmptyStock(String sourceLocNo, Long hostId) { + if (Cools.isEmpty(sourceLocNo)) { + return null; + } + LocMast sourceStock = this.getOne(new LambdaQueryWrapper<LocMast>() + .eq(LocMast::getLocNo, sourceLocNo) + .eq(LocMast::getHostId, hostId)); + if (Cools.isEmpty(sourceStock)) { + return null; + } + return this.baseMapper.queryGroupEmptyStock(hostId); + } + + @Override + public List<LocMast> queryFreeLocMast2(Short locType1, Integer rowBeg, Integer rowEnd, Integer bayBeg, Integer bayEnd, Integer levBeg, Integer levEnd, Long hostId) { + return this.baseMapper.queryFreeLocMast2(locType1, rowBeg, rowEnd, bayBeg, bayEnd, levBeg, levEnd, hostId); + } + + @Override + public Boolean checkEmptyCount(LocMast locMast, int quaOfBlank, Long hostId) { + if (locMast == null) { + return false; + } + int count = this.baseMapper.selectCount(new LambdaQueryWrapper<LocMast>() + .eq(LocMast::getLocSts, 'O') +// .eq(LocMast::getLocType3, locMast.getLocType3()) + .eq(LocMast::getLev1, locMast.getLev1()) + .eq(LocMast::getHostId, hostId)); + return count > quaOfBlank; + } + + @Override + public LocMast findNearloc(String locNo, Long hostId, LocRangeDto locRangeDto) { + LocMast locMast = null; + List<String> groupOuterLoc = Utils.getGroupOuterLoc(locNo, hostId); + if (!Cools.isEmpty(groupOuterLoc)) { + LambdaQueryWrapper<LocMast> wrapper = new LambdaQueryWrapper<LocMast>() + .eq(LocMast::getLocSts, 'O') + .in(LocMast::getLocNo, groupOuterLoc) + .eq(LocMast::getHostId, hostId) + .orderByAsc(LocMast::getRow1); + //搴撲綅鎼滅储鑼冨洿 + if (locRangeDto != null) { + wrapper.ge(LocMast::getRow1, locRangeDto.getStartRow()); + wrapper.le(LocMast::getRow1, locRangeDto.getTargetRow()); + wrapper.ge(LocMast::getBay1, locRangeDto.getStartBay()); + wrapper.le(LocMast::getBay1, locRangeDto.getTargetBay()); + wrapper.ge(LocMast::getLev1, locRangeDto.getStartLev()); + wrapper.le(LocMast::getLev1, locRangeDto.getTargetLev()); + } + locMast = this.getOne(wrapper, false); + } + return locMast; + } } -- Gitblit v1.9.1