From 0cdf3e50751dee9c76fec7ca4a9b9be0d967da68 Mon Sep 17 00:00:00 2001 From: zyx <zyx123456> Date: 星期二, 04 六月 2024 08:40:12 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 40 ++++++++++++++++++++++++++++++++++++++-- 1 files changed, 38 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java index b2c5a16..8b83051 100644 --- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java @@ -20,6 +20,7 @@ import com.zy.common.utils.Synchro; import com.zy.system.entity.User; import com.zy.system.service.SaasLogService; +import lombok.Synchronized; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -103,6 +104,7 @@ private PlaQtyService plaQtyService; @Autowired private SaasLogService saasLogService; + @@ -1236,6 +1238,7 @@ @Override @Transactional + @Synchronized public void plaPakout(String brand, String locNo, String batch, Integer packageNo, String orderNo, String plaQtyId, String wrkNo, Double anfme, boolean isReplace) { Pla pla = plaService.selectByBatchAndPackageNo(batch, packageNo,brand); @@ -1247,7 +1250,7 @@ if(isReplace){ replacePla(pla,manPakOut,plaQty); }else { - if((!Cools.eq(pla.getStatus(),GlobleParameter.PLA_STATUS_2) && !Cools.eq(pla.getStatus(),GlobleParameter.PLA_STATUS_3)) || + if((!Cools.eq(pla.getStatus(),GlobleParameter.PLA_STATUS_2) && !Cools.eq(pla.getStatus(),GlobleParameter.PLA_STATUS_3) && !Cools.eq(pla.getStatus(),GlobleParameter.PLA_STATUS_1)) || !Cools.eq(pla.getBatch(),manPakOut.getBatch()) || !Cools.eq(pla.getPackageNo()+"",manPakOut.getBarcode()) || !Cools.eq(pla.getBrand(),manPakOut.getMaktx()) ){ @@ -1265,6 +1268,7 @@ manPakOut.setCount(manPakOut.getCount() + anfme); if (manPakOut.getAnfme().equals(manPakOut.getCount())){ manPakOut.setStatus(1); + manPakOut.setUpdateTime(new Date()); manPakOutService.updateById(manPakOut); } @@ -1332,8 +1336,13 @@ //杩樺師鏃х墿鏂欑姸鎬� Pla plaOld = plaService.selectByBatchAndPackageNo(manPakOut.getBatch(), Integer.parseInt(manPakOut.getBarcode()), manPakOut.getMaktx()); + //鏇存柊鏂扮墿鏂欎俊鎭� + plaNew.setQtyAnfme(plaOld.getQtyAnfme()); + plaNew.setStatus(plaOld.getStatus()); + plaService.updateById(plaNew); + plaOld.setStatus(GlobleParameter.PLA_STATUS_1); - plaOld.setQtyAnfme(0.0); + plaOld.setQtyAnfme(plaOld.getQtyAnfme() - manPakOut.getCount()); plaService.updateById(plaOld); @@ -1348,8 +1357,35 @@ manPakOut.setMaktx(plaNew.getBrand()); manPakOut.setBatch(plaNew.getBatch()); manPakOut.setBarcode(plaNew.getPackageNo() + ""); + manPakOut.setUpdateTime(new Date()); manPakOutService.updateById(manPakOut); } + + @Override + public List<Pla> pdaSelectInfmt(String barcode) { + EntityWrapper<Pla> plaEntityWrapper = new EntityWrapper<>(); + String[] split = barcode.split(";"); + if (split.length == 4){ + plaEntityWrapper.eq("brand",split[0]); + plaEntityWrapper.eq("batch",split[1]); + plaEntityWrapper.eq("package_no",split[2]); + plaEntityWrapper.eq("line",split[3]); + }else if (split.length == 1){ + Node node = nodeService.selectOne(new EntityWrapper<Node>().eq("name", barcode)); + if (Cools.isEmpty(node)){ + throw new CoolException("璇锋鏌ヨ緭鍏ョ殑搴撲綅鐮�"); + } + plaEntityWrapper.eq("loc_no",barcode); + plaEntityWrapper.notLike("status","鍏ㄩ儴鍑哄簱"); + }else { + throw new CoolException("鏉$爜淇℃伅鏈夎!"); + } + List<Pla> plaList = plaService.selectList(plaEntityWrapper); + if (Cools.isEmpty(plaList)){ + throw new CoolException("鏈煡璇㈠埌搴撳瓨鐗╂枡淇℃伅"); + } + return plaList; + } } -- Gitblit v1.9.1