From 183d00d631493ba8689934c4b3961c705f409c83 Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期日, 01 十月 2023 09:55:01 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/ManLocDetlServiceImpl.java | 44 ++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 40 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/ManLocDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/ManLocDetlServiceImpl.java index c9af0a1..01ada7a 100644 --- a/src/main/java/com/zy/asrs/service/impl/ManLocDetlServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/ManLocDetlServiceImpl.java @@ -1,8 +1,10 @@ package com.zy.asrs.service.impl; import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.mapper.Wrapper; import com.baomidou.mybatisplus.plugins.Page; import com.baomidou.mybatisplus.service.impl.ServiceImpl; +import com.core.common.Cools; import com.core.exception.CoolException; import com.zy.asrs.entity.ManLocDetl; import com.zy.asrs.entity.Mat; @@ -15,15 +17,13 @@ import com.zy.asrs.service.NodeService; import com.zy.asrs.service.WaitPakinService; import com.zy.asrs.utils.SaasUtils; +import com.zy.common.model.LocDto; import com.zy.system.entity.User; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.Date; -import java.util.List; -import java.util.Map; -import java.util.Set; +import java.util.*; @Service("manLocDetlService") public class ManLocDetlServiceImpl extends ServiceImpl<ManLocDetlMapper, ManLocDetl> implements ManLocDetlService { @@ -200,4 +200,40 @@ return baseMapper.increase(anfme,locNo,matnr,batch,weight); } + public double queryStockAndSetLocDto(String matnr, String batch, String orderNo, List<LocDto> locDtoList, double issued, String csocode, String isoseq) { + Wrapper<ManLocDetl> wrapper = new EntityWrapper<ManLocDetl>().eq("matnr", matnr).orderBy("modi_time"); + wrapper.eq("status",1); + wapperSetCondition(wrapper,"batch",batch); + wapperSetCondition(wrapper,"csocode",csocode); + wapperSetCondition(wrapper,"isoseq",isoseq); + + List<ManLocDetl> manLocDetls = this.selectList(wrapper); + for (ManLocDetl manLocDetl : manLocDetls){ + if(issued > 0) { + double anfme = manLocDetl.getAnfme(); + anfme = anfme > issued ? issued : anfme; + LocDto locDto = new LocDto(manLocDetl.getLocNo(), manLocDetl.getMatnr(), manLocDetl.getMaktx(), manLocDetl.getBatch(), orderNo, anfme); + locDto.setCsocode(csocode); + locDto.setIsoseq(isoseq); + locDto.setContainerCode(manLocDetl.getContainerCode()); + List<String> stationList = new ArrayList<>(); + stationList.add("鏃犻渶绔欑偣"); + locDto.setAgvStaNos(stationList); + + locDtoList.add(locDto); + issued -= anfme; + } + } + + return issued; + } + + private void wapperSetCondition(Wrapper wrapper,String column, String condition){ + if(Cools.isEmpty(condition)){ + wrapper.isNull(column); + }else { + wrapper.eq(column,condition); + } + } + } -- Gitblit v1.9.1