From e4e8132629c4d8d9ea3ac585b3f22793be000fa5 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期四, 18 六月 2020 17:09:59 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 70 +++++++++++++++++++++++++++++++++++ 1 files changed, 70 insertions(+), 0 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 768e468..496d6bb 100644 --- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java @@ -8,6 +8,7 @@ import com.zy.asrs.entity.*; import com.zy.asrs.entity.param.EmptyPlateOutParam; import com.zy.asrs.entity.param.FullStoreParam; +import com.zy.asrs.entity.param.LocDetlAdjustParam; import com.zy.asrs.entity.param.StockOutParam; import com.zy.asrs.service.*; import com.zy.common.model.LocDetlDto; @@ -43,6 +44,8 @@ private StaDescService staDescService; @Autowired private LocDetlService locDetlService; + @Autowired + private MatCodeService matCodeService; @Override @Transactional @@ -460,6 +463,73 @@ @Override @Transactional + public void adjustLocDetl(LocDetlAdjustParam param, Long userId) { + LocMast locMast = locMastService.selectById(param.getLocNo()); + if (Cools.isEmpty(locMast)) { + 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.getMatnr()); + LocDetl one = locDetlService.selectOne(new EntityWrapper<>(sqlParam)); + // 淇濆瓨鏂板簱瀛樻槑缁� + if (Cools.isEmpty(one)) { + if (adjust.getCount() == 0){ + continue; + } + MatCode matCode = matCodeService.selectById(adjust.getMatnr()); + LocDetl locDetl = new LocDetl(); + locDetl.setLocNo(locMast.getLocNo()); + locDetl.setMatnr(matCode.getMatNo()); + locDetl.setMaktx(matCode.getMatName()); // 鐗╂枡鎻忚堪 + locDetl.setAnfme(adjust.getCount()); // 鏁伴噺 + locDetl.setAltme(matCode.getStr1()); // 鍗曚綅 + // todo:luxiaoao + locDetl.setLgnum("寰呭畾"); // 浠撳簱鍙� + locDetl.setTbnum(0); // 杞偍璇锋眰缂栧彿 + locDetl.setTbpos(0); // 琛岄」鐩� + locDetl.setZmatid("寰呭畾"); // 鐗╂枡鏍囩ID + locDetl.setZpallet("寰呭畾"); // 鎵樼洏鏉$爜 + + locDetl.setModiUser(userId); // 鎿嶄綔浜哄憳淇℃伅 + locDetl.setModiTime(new Date()); + locDetl.setAppeUser(userId); + locDetl.setAppeTime(new Date()); + if (!locDetlService.insert(locDetl)) { + throw new CoolException("淇濆瓨搴撳瓨鏄庣粏澶辫触"); + } + // 淇敼鍘熷簱瀛樻槑缁� + } else { + // 濡傛灉鏁伴噺淇敼锛屽垯鏇存柊搴撳瓨鏄庣粏 + if (!adjust.getCount().equals(one.getAnfme())) { + // 褰撴暟閲忚淇敼涓� 0 鏃讹紝鐩存帴娓呴櫎搴撳瓨鏄庣粏 + if (adjust.getCount() == 0) { + if (!locDetlService.delete(new EntityWrapper<>(one))) { + throw new CoolException("娓呴櫎搴撳瓨鏄庣粏澶辫触"); + } + } else { + LocDetl sqlParam1 = new LocDetl(); + sqlParam1.setAnfme(adjust.getCount()); + sqlParam1.setModiTime(new Date()); + sqlParam1.setModiUser(userId); + if (!locDetlService.update(sqlParam1, new EntityWrapper<LocDetl>() + .eq("loc_no", locMast.getLocNo()) + .eq("matnr", adjust.getMatnr()))) { + throw new CoolException("淇敼搴撳瓨鏄庣粏澶辫触"); + } + } + } + } + + } + } + + @Override + @Transactional public void cancelWrkMast(String workNo, Long userId) { WrkMast wrkMast = wrkMastService.selectById(workNo); if (Cools.isEmpty(wrkMast)){ -- Gitblit v1.9.1