From 7e280767092440530d8229bbbb9f89582310d5a8 Mon Sep 17 00:00:00 2001
From: Junjie <xjj@123>
Date: 星期一, 16 六月 2025 15:28:17 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 28 +++++++++++++++++++++++++---
1 files changed, 25 insertions(+), 3 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 93c21e4..bf954d2 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -15,6 +15,7 @@
import com.zy.asrs.entity.result.FindLocNoAttributeVo;
import com.zy.asrs.mapper.LocMastMapper;
import com.zy.asrs.service.*;
+import com.zy.asrs.utils.MatUtils;
import com.zy.asrs.utils.OrderInAndOutUtil;
import com.zy.asrs.utils.Utils;
import com.zy.common.model.*;
@@ -189,6 +190,7 @@
public void startupFullTakeStore(StockOutParam param, Long userId) {
// 鐩爣绔欑偣鐘舵�佹娴�
BasDevp staNo = basDevpService.checkSiteStatus(param.getOutSite());
+
// 鑾峰彇搴撲綅鏄庣粏
List<LocDetlDto> locDetlDtos = new ArrayList<>();
for (StockOutParam.LocDetl paramLocDetl : param.getLocDetls()) {
@@ -208,7 +210,7 @@
LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", locDetlDtos.get(0).getLocDetl().getLocNo()));
if (locMast.getLocSts().equals("F") || locMast.getLocSts().equals("D")) {
// 鍚姩鍑哄簱寮�濮� 101.鍑哄簱
- stockOut(staNo, locDetlDtos, null, userId, null);
+ stockOut(staNo, locDetlDtos, null, userId, null, param.getItemId());
} else {
throw new CoolException("鎵�閫夊簱浣嶅瓨鍦ㄧ姸鎬佷笉涓篎銆丏鐨勫簱浣嶏紝搴撲綅鍙凤細" + locMast.getLocNo() + " 銆佸綋鍓嶇姸鎬侊細" + locMast.getLocSts() + "-" + locMast.getLocSts$());
}
@@ -297,7 +299,7 @@
@Override
@Transactional
- public void stockOut(BasDevp staNo, List<LocDetlDto> locDetlDtos, IoWorkType ioWorkType, Long userId, String checkOrderNo) {
+ public void stockOut(BasDevp staNo, List<LocDetlDto> locDetlDtos, IoWorkType ioWorkType, Long userId, String checkOrderNo, String itemId) {
Date now = new Date();
// 鍚堝苟鍚岀被椤�
Set<String> locNos = new HashSet<>();
@@ -369,6 +371,7 @@
wrkMast.setAppeTime(now);
wrkMast.setModiUser(userId);
wrkMast.setModiTime(now);
+ wrkMast.setPacked(itemId);
if (!wrkMastService.insert(wrkMast)) {
throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐ワ紝鍑哄簱搴撲綅鍙凤細" + dto.getLocNo());
}
@@ -479,6 +482,19 @@
, locDto.getStandby1(), locDto.getStandby2(), locDto.getStandby3(), locDto.getBoxType1(), locDto.getBoxType2(), locDto.getBoxType3());
}
+
+ Wrapper<LocDetl> wrapper = new EntityWrapper<LocDetl>()
+ .eq("loc_no", wrkMast.getSourceLocNo())
+ .eq("matnr", orderDetlPakout.getMatnr());
+ if (!Cools.isEmpty(locDto.getBatch())) {
+ wrapper.eq("batch", locDto.getBatch());
+ }
+ if (!Cools.isEmpty(orderDetlPakout.getSpecs())) {
+ wrapper.eq("specs", orderDetlPakout.getSpecs());
+ }
+
+ LocDetl locDetl = locDetlService.selectOne(wrapper);
+
WrkDetl wrkDetl = new WrkDetl();
wrkDetl.sync(orderDetlPakout);
wrkDetl.setZpallet(wrkMast.getBarcode());
@@ -492,6 +508,12 @@
wrkDetl.setModiTime(now);
wrkDetl.setModiUser(userId);
wrkDetl.setThreeCode(orderDetlPakout.getId() + "");
+ wrkDetl.setSupp(orderPakout.getCstmrName());
+ wrkDetl.setStockNum(locDetl.getAnfme());//搴撳瓨
+
+ //璁$畻杈呮暟閲�
+ Double weight = MatUtils.calcWeight(wrkDetl.getMatnr(), wrkDetl.getAnfme());
+ wrkDetl.setWeight(weight);
if (!wrkDetlService.insert(wrkDetl)) {
throw new CoolException("淇濆瓨宸ヤ綔妗f槑缁嗗け璐�");
}
@@ -740,7 +762,7 @@
LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", locDetlDtos.get(0).getLocDetl().getLocNo()));
if (locMast.getLocSts().equals("F")) {
// 鍚姩鍑哄簱寮�濮� 107.鐩樼偣鍑哄簱
- stockOut(staNo, locDetlDtos, IoWorkType.CHECK_OUT, userId, param.getCheckId());
+ stockOut(staNo, locDetlDtos, IoWorkType.CHECK_OUT, userId, param.getCheckId(), null);
} else {
throw new CoolException("鎵�閫夊簱浣嶅瓨鍦ㄧ姸鎬佷笉涓篎鐨勫簱浣嶏紝搴撲綅鍙凤細" + locMast.getLocNo() + " 銆佸綋鍓嶇姸鎬侊細" + locMast.getLocSts() + "-" + locMast.getLocSts$());
}
--
Gitblit v1.9.1