From 4df80cad47f22a930435835e7f7135bd60672cd8 Mon Sep 17 00:00:00 2001 From: ZY <zc857179121@qq.com> Date: 星期四, 26 九月 2024 15:38:43 +0800 Subject: [PATCH] 1 --- src/main/java/com/zy/asrs/service/impl/PlaServiceImpl.java | 76 +++++++++++++++++++++++++++++++++---- 1 files changed, 67 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/PlaServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/PlaServiceImpl.java index 80f23d4..6aa415c 100644 --- a/src/main/java/com/zy/asrs/service/impl/PlaServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/PlaServiceImpl.java @@ -2,8 +2,11 @@ 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.common.DateUtils; +import com.core.exception.CoolException; import com.zy.asrs.entity.OrderDetl; import com.zy.asrs.entity.Pla; import com.zy.asrs.entity.PlaQty; @@ -26,8 +29,8 @@ @Autowired private PlaQtyService plaQtyService; - public Pla selectByBatchAndPackageNo(String batch, String packageNo) { - return this.selectOne(new EntityWrapper<Pla>().eq("batch",batch).eq("package_no",packageNo)); + public Pla selectByBatchAndPackageNo(String batch, Integer packageNo, String brand) { + return this.selectOne(new EntityWrapper<Pla>().eq("batch",batch).eq("package_no",packageNo).eq("brand",brand).eq(false,"status","鍏ㄩ儴鍑哄簱")); } @Override @@ -64,7 +67,7 @@ } //闇�瑕佸噺鍘绘娆″嚭搴撻瑙堝叾浠栬鍗曢渶鍑哄簱鐨勬暟閲� for (PlaQty plaQty : plaQties){ - if(Cools.eq(plaQty.getBatch(),pla.getBatch()) && Cools.eq(plaQty.getPackageNo(),pla.getPackageNo())){ + if(Cools.eq(plaQty.getBatch(),pla.getBatch()) && plaQty.getPackageNo() == pla.getPackageNo()){ weightAnfme -= plaQty.getQtyAnfme(); } } @@ -83,20 +86,22 @@ } if(anfme > 0){ - PlaQty plaQty = new PlaQty(orderDetl.getBatch(),orderDetl.getBrand(),orderDetl.getId(),orderDetl.getOrderId(),orderDetl.getOrderNo(),anfme,null,new Date()); + PlaQty plaQty = new PlaQty(orderDetl.getBatch(),Integer.parseInt(orderDetl.getBrand()),orderDetl.getId(),orderDetl.getOrderId(),orderDetl.getOrderNo(),anfme,null,new Date()); plaQties.add(plaQty); } } //閫�鍥� + @Transactional public void returned(List<PlaQty> plaQties, User user) { plaQties.forEach(plaQty -> { PlaQty plaQtyOut = plaQtyService.selectById(plaQty.getId()); - if(Cools.isEmpty(plaQtyOut.getReturned())){ + if(Cools.isEmpty(plaQtyOut.getReturned()) || plaQtyOut.getReturned() == 0){ plaQtyOut.setReturned(plaQty.getOrderWeight()); }else { - plaQtyOut.setReturned(plaQty.getOrderWeight()+plaQtyOut.getReturned()); + throw new CoolException("璇ュ寘鐗╂枡宸查��鍥�"); + //plaQtyOut.setReturned(plaQty.getOrderWeight()+plaQtyOut.getReturned()); } plaQtyService.updateById(plaQtyOut); @@ -107,6 +112,7 @@ plaQtyReturned.setLocNo(plaQtyOut.getLocNo()); plaQtyReturned.setOrderNo(plaQtyOut.getOrderNo()); plaQtyReturned.setPakoutTime(Utils.getDateStr(new Date())); + plaQtyReturned.setBrand(plaQty.getBrand()); plaQtyReturned.setOrderWeight(plaQty.getOrderWeight()); plaQtyReturned.setTransfer("閫�鍥炲叆搴�"); plaQtyReturned.setHandlerBy(user.getUsername()); @@ -115,15 +121,67 @@ plaQtyService.insert(plaQtyReturned); //鐩存帴鏇存柊pla鐨勫簱瀛� - Pla pla = this.selectByBatchAndPackageNo(plaQty.getBatch(), plaQty.getPackageNo()); + Pla pla = this.selectByBatchAndPackageNo(plaQty.getBatch(), plaQty.getPackageNo(),plaQty.getBrand()); //pla.setStatus(GlobleParameter.PLA_STATUS_0); + pla.setModifyTime(new Date()); - pla.setWeightAnfme(plaQty.getOrderWeight()); + pla.setWeightAnfme(pla.getWeightAnfme() + plaQty.getOrderWeight()); pla.setStatus(GlobleParameter.PLA_STATUS_1); this.updateById(pla); - SaasUtils.insertLog(0,pla.getLocNo(),pla.getBatch()+","+pla.getPackageNo(),plaQty.getOrderWeight(),user.getUsername()); + SaasUtils.insertLog(0,pla.getLocNo(),pla.getBrand(),plaQty.getOrderWeight(),user.getUsername(), + null,pla.getBatch(),pla.getPackageNo(),pla.getOwner(),pla.getWorkshop(),null); }); } + + @Override + @Transactional + public void viladate(List<Pla> plas, User user) { + plas.forEach(pla -> { + if(!pla.getStatus().equals(GlobleParameter.PLA_STATUS_00)){ + throw new CoolException("閫変腑鐨勬暟鎹笉鏄殏鍏ュ簱鐘舵�侊紝璇锋牳瀵圭姸鎬�"); + } + pla = this.selectById(pla.getId()); + pla.setModifyTime(new Date()); + pla.setStatus(GlobleParameter.PLA_STATUS_0); + this.updateById(pla); + }); + } + + @Override + public List<Pla> selectToHistory() { + return this.selectList(new EntityWrapper<Pla>().eq("status",GlobleParameter.PLA_STATUS_4)); + } + + @Override + public Page<Pla> getStockStatisAll(Page<Pla> page) { + + List<Pla> plaList; + Date stime = null; + Date etime = null; + Object create_time = page.getCondition().get("create_time"); + Object brand = page.getCondition().get("brand"); + Object status = page.getCondition().get("status"); + String createTime = create_time == null ? null : create_time.toString(); + if(!Cools.isEmpty(createTime)){ + String[] dates = createTime.split(" - "); + stime = DateUtils.convert(dates[0]); + etime = DateUtils.convert(dates[1]); + } + plaList=baseMapper.getStockStatisAll(brand == null ? null:brand.toString(), status == null ? null:status.toString(), stime,etime); + + double weightSum = plaList.stream().mapToDouble(Pla::getWeight).sum(); + + // 鏈�鍚庝竴鏉¤褰曚粎渚涘悎璁¢噸閲忎俊鎭睍绀� + Pla pla = new Pla(); + pla.setBrand("鍚堣"); + pla.setMatnr(""); + pla.setWeight(weightSum); + plaList.add(pla); + + page.setRecords(plaList); + page.setTotal(0); + return page; + } } -- Gitblit v1.9.1