From ac68439602c5a4772dbbc4b971fc24b488bb0e86 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期五, 19 六月 2020 12:56:00 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 33 +++++++++++++++++++++++++++------ 1 files changed, 27 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java index 72a4744..e69c42a 100644 --- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java @@ -46,6 +46,8 @@ private LocDetlService locDetlService; @Autowired private MatCodeService matCodeService; + @Autowired + private AdjDetlService adjDetlService; @Override @Transactional @@ -141,8 +143,6 @@ @Override @Transactional public void stockOut(BasDevp staNo, List<LocDetlDto> locDetlDtos, Long userId) { - // 鐢熸垚宸ヤ綔鍙� - int workNo = commonService.getWorkNo(DEFAULT_WORK_NO_TYPE); // 鍚堝苟鍚岀被椤� Set<String> locNos = new HashSet<>(); locDetlDtos.forEach(dto -> locNos.add(dto.getLocDetl().getLocNo())); @@ -172,6 +172,8 @@ if (Cools.isEmpty(staDesc)) { throw new CoolException("鍑哄簱璺緞涓嶅瓨鍦�"); } + // 鐢熸垚宸ヤ綔鍙� + int workNo = commonService.getWorkNo(DEFAULT_WORK_NO_TYPE); // 鐢熸垚宸ヤ綔妗� WrkMast wrkMast = new WrkMast(); wrkMast.setWrkNo(workNo); @@ -469,13 +471,19 @@ throw new CoolException("搴撲綅涓嶅瓨鍦�"); } for (LocDetlAdjustParam.LocDetlAdjust adjust : param.getList()) { + if (Cools.isEmpty(adjust.getMatnr())) { + throw new CoolException(BaseRes.PARAM); + } LocDetl sqlParam = new LocDetl(); sqlParam.setLocNo(locMast.getLocNo()); - sqlParam.setMatnr(adjust.getMatNo()); + sqlParam.setMatnr(adjust.getMatnr()); LocDetl one = locDetlService.selectOne(new EntityWrapper<>(sqlParam)); // 淇濆瓨鏂板簱瀛樻槑缁� if (Cools.isEmpty(one)) { - MatCode matCode = matCodeService.selectById(adjust.getMatNo()); + if (adjust.getCount() == 0){ + continue; + } + MatCode matCode = matCodeService.selectById(adjust.getMatnr()); LocDetl locDetl = new LocDetl(); locDetl.setLocNo(locMast.getLocNo()); locDetl.setMatnr(matCode.getMatNo()); @@ -496,6 +504,13 @@ if (!locDetlService.insert(locDetl)) { throw new CoolException("淇濆瓨搴撳瓨鏄庣粏澶辫触"); } + // 淇濆瓨璋冩暣璁板綍 + AdjDetl adjDetl = new AdjDetl(); + adjDetl.setLocNo(locDetl.getLocNo()); + adjDetl.setMatNo(locDetl.getMatnr()); + adjDetl.setOriQty(0.0D); + adjDetl.setAdjQty(adjust.getCount()); + adjDetlService.save(adjDetl, userId); // 淇敼鍘熷簱瀛樻槑缁� } else { // 濡傛灉鏁伴噺淇敼锛屽垯鏇存柊搴撳瓨鏄庣粏 @@ -512,13 +527,19 @@ sqlParam1.setModiUser(userId); if (!locDetlService.update(sqlParam1, new EntityWrapper<LocDetl>() .eq("loc_no", locMast.getLocNo()) - .eq("matnr", adjust.getMatNo()))) { + .eq("matnr", adjust.getMatnr()))) { throw new CoolException("淇敼搴撳瓨鏄庣粏澶辫触"); } } + // 淇濆瓨璋冩暣璁板綍 + AdjDetl adjDetl = new AdjDetl(); + adjDetl.setLocNo(locMast.getLocNo()); + adjDetl.setMatNo(adjust.getMatnr()); + adjDetl.setOriQty(one.getAnfme()); + adjDetl.setAdjQty(adjust.getCount()); + adjDetlService.save(adjDetl, userId); } } - } } -- Gitblit v1.9.1