From ebc766304439d72c69b580eaef83681096e4ee3d Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期四, 18 六月 2020 16:06:56 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 49 +++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 49 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 b4b5928..9185303 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -44,6 +44,8 @@
private StaDescService staDescService;
@Autowired
private LocDetlService locDetlService;
+ @Autowired
+ private MatCodeService matCodeService;
@Override
@Transactional
@@ -460,8 +462,55 @@
}
@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()) {
+ LocDetl sqlParam = new LocDetl();
+ sqlParam.setLocNo(locMast.getLocNo());
+ sqlParam.setMatnr(adjust.getMatNo());
+ LocDetl one = locDetlService.selectOne(new EntityWrapper<>(sqlParam));
+ // 淇濆瓨鏂板簱瀛樻槑缁�
+ if (Cools.isEmpty(one)) {
+ MatCode matCode = matCodeService.selectById(adjust.getMatNo());
+ 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.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 {
+ one.setAnfme(adjust.getCount());
+ one.setModiTime(new Date());
+ one.setModiUser(userId);
+ if (!locDetlService.updateById(one)) {
+ throw new CoolException("淇敼搴撳瓨鏄庣粏澶辫触");
+ }
+ }
+ }
+ }
+ }
}
@Override
--
Gitblit v1.9.1