From a35b9acb89c73bf6fee0b4d48c72dc7240cffcf7 Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期三, 23 十月 2024 13:56:39 +0800
Subject: [PATCH] 自动生成入库通知档
---
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 157 ++++++++++++++++++++++++++--------------------------
1 files changed, 78 insertions(+), 79 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 c28eda0..7b453a6 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -82,77 +82,78 @@
@Transactional
public String startupFullPutStore(FullStoreParam param, Long userId) {
// 鍙傛暟闈炵┖鍒ゆ柇
- if (Cools.isEmpty(param.getDevpNo(), param.getList())) {
- throw new CoolException(BaseRes.PARAM);
- }
- Date now = new Date();
- // 婧愮珯鐐圭姸鎬佹娴�
- BasDevp sourceStaNo = basDevpService.checkSiteStatus(param.getDevpNo(), true);
- // 妫�绱㈠簱浣�
- LocTypeDto locTypeDto = new LocTypeDto(sourceStaNo);
- List<String> matnrs = param.getList().stream().map(FullStoreParam.MatCodeStore::getMatnr).distinct().collect(Collectors.toList());
- List<String> batchs = param.getList().stream().map(FullStoreParam.MatCodeStore::getBatch).distinct().collect(Collectors.toList());
- StartupDto dto = commonService.getLocNo(DEFAULT_ROW_NO_TYPE, 1, param.getDevpNo(), matnrs.get(0), batchs.get(0), null, locTypeDto);
- // 鐢熸垚宸ヤ綔鍙�
- int workNo = dto.getWorkNo();
- // 鐢熸垚宸ヤ綔妗�
- WrkMast wrkMast = new WrkMast();
- wrkMast.setWrkNo(workNo);
- wrkMast.setIoTime(now);
- wrkMast.setWrkSts(1L); // 宸ヤ綔鐘舵�侊細鐢熸垚鍏ュ簱ID
- wrkMast.setIoType(1); // 鍏ュ嚭搴撶姸鎬侊細1.鍏ュ簱
- wrkMast.setIoPri(13D); // 浼樺厛绾э細13
- wrkMast.setCrnNo(dto.getCrnNo());
- wrkMast.setSourceStaNo(dto.getSourceStaNo());
- wrkMast.setStaNo(dto.getStaNo());
- wrkMast.setLocNo(dto.getLocNo());
- wrkMast.setBarcode(param.getBarcode()); // 鎵樼洏鐮�
- wrkMast.setFullPlt("Y"); // 婊℃澘锛歒
- wrkMast.setPicking("N"); // 鎷f枡
- wrkMast.setExitMk("N"); // 閫�鍑�
- wrkMast.setEmptyMk("N"); // 绌烘澘
- wrkMast.setLinkMis("N");
- wrkMast.setCtnType(sourceStaNo.getCtnType()); // 瀹瑰櫒绫诲瀷
- wrkMast.setAppeUser(userId);
- wrkMast.setAppeTime(now);
- wrkMast.setModiUser(userId);
- wrkMast.setModiTime(now);
- if (!wrkMastService.insert(wrkMast)) {
- throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
- }
- // 鐢熸垚宸ヤ綔妗f槑缁�
- List<DetlDto> detlDtos = new ArrayList<>();
- param.getList().forEach(elem -> {
- DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getAnfme());
- if (DetlDto.has(detlDtos, detlDto)) {
- DetlDto detlDto1 = DetlDto.find(detlDtos, detlDto.getMatnr(), detlDto.getBatch());
- assert detlDto1 != null;
- detlDto1.setAnfme(detlDto1.getAnfme() + detlDto.getAnfme());
- } else {
- detlDtos.add(detlDto);
- }
- });
- wrkDetlService.createWorkDetail(workNo, detlDtos, param.getBarcode(), userId, now);
- // 鏇存柊婧愮珯鐐逛俊鎭�
- sourceStaNo.setWrkNo(workNo);
- sourceStaNo.setModiUser(userId);
- sourceStaNo.setModiTime(now);
- if (!basDevpService.updateById(sourceStaNo)) {
- throw new CoolException("鏇存柊婧愮珯澶辫触");
- }
- // 鏇存柊鐩爣搴撲綅鐘舵��
- LocMast locMast = locMastService.selectById(dto.getLocNo());
- if (locMast.getLocSts().equals("O")) {
- locMast.setLocSts("S"); // S.鍏ュ簱棰勭害
- locMast.setModiUser(userId);
- locMast.setModiTime(now);
- if (!locMastService.updateById(locMast)) {
- throw new CoolException("鏀瑰彉搴撲綅鐘舵�佸け璐�");
- }
- } else {
- throw new CoolException(dto.getLocNo() + "鐩爣搴撲綅宸茶鍗犵敤");
- }
- return dto.getLocNo();
+// if (Cools.isEmpty(param.getDevpNo(), param.getList())) {
+// throw new CoolException(BaseRes.PARAM);
+// }
+// Date now = new Date();
+// // 婧愮珯鐐圭姸鎬佹娴�
+// BasDevp sourceStaNo = basDevpService.checkSiteStatus(param.getDevpNo(), true);
+// // 妫�绱㈠簱浣�
+// LocTypeDto locTypeDto = new LocTypeDto(sourceStaNo);
+// List<String> matnrs = param.getList().stream().map(FullStoreParam.MatCodeStore::getMatnr).distinct().collect(Collectors.toList());
+// List<String> batchs = param.getList().stream().map(FullStoreParam.MatCodeStore::getBatch).distinct().collect(Collectors.toList());
+// StartupDto dto = commonService.getLocNo(DEFAULT_ROW_NO_TYPE, 1, param.getDevpNo(), matnrs.get(0), batchs.get(0), null, locTypeDto);
+// // 鐢熸垚宸ヤ綔鍙�
+// int workNo = dto.getWorkNo();
+// // 鐢熸垚宸ヤ綔妗�
+// WrkMast wrkMast = new WrkMast();
+// wrkMast.setWrkNo(workNo);
+// wrkMast.setIoTime(now);
+// wrkMast.setWrkSts(1L); // 宸ヤ綔鐘舵�侊細鐢熸垚鍏ュ簱ID
+// wrkMast.setIoType(1); // 鍏ュ嚭搴撶姸鎬侊細1.鍏ュ簱
+// wrkMast.setIoPri(13D); // 浼樺厛绾э細13
+// wrkMast.setCrnNo(dto.getCrnNo());
+// wrkMast.setSourceStaNo(dto.getSourceStaNo());
+// wrkMast.setStaNo(dto.getStaNo());
+// wrkMast.setLocNo(dto.getLocNo());
+// wrkMast.setBarcode(param.getBarcode()); // 鎵樼洏鐮�
+// wrkMast.setFullPlt("Y"); // 婊℃澘锛歒
+// wrkMast.setPicking("N"); // 鎷f枡
+// wrkMast.setExitMk("N"); // 閫�鍑�
+// wrkMast.setEmptyMk("N"); // 绌烘澘
+// wrkMast.setLinkMis("N");
+// wrkMast.setCtnType(sourceStaNo.getCtnType()); // 瀹瑰櫒绫诲瀷
+// wrkMast.setAppeUser(userId);
+// wrkMast.setAppeTime(now);
+// wrkMast.setModiUser(userId);
+// wrkMast.setModiTime(now);
+// if (!wrkMastService.insert(wrkMast)) {
+// throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
+// }
+// // 鐢熸垚宸ヤ綔妗f槑缁�
+// List<DetlDto> detlDtos = new ArrayList<>();
+// param.getList().forEach(elem -> {
+// DetlDto detlDto = new DetlDto(elem);
+// if (DetlDto.has(detlDtos, detlDto)) {
+// DetlDto detlDto1 = DetlDto.find(detlDtos, detlDto.getMatnr(), detlDto.getBatch());
+// assert detlDto1 != null;
+// detlDto1.setAnfme(detlDto1.getAnfme() + detlDto.getAnfme());
+// } else {
+// detlDtos.add(detlDto);
+// }
+// });
+// wrkDetlService.createWorkDetail(workNo, detlDtos, param.getBarcode(), userId, now);
+// // 鏇存柊婧愮珯鐐逛俊鎭�
+// sourceStaNo.setWrkNo(workNo);
+// sourceStaNo.setModiUser(userId);
+// sourceStaNo.setModiTime(now);
+// if (!basDevpService.updateById(sourceStaNo)) {
+// throw new CoolException("鏇存柊婧愮珯澶辫触");
+// }
+// // 鏇存柊鐩爣搴撲綅鐘舵��
+// LocMast locMast = locMastService.selectById(dto.getLocNo());
+// if (locMast.getLocSts().equals("O")) {
+// locMast.setLocSts("S"); // S.鍏ュ簱棰勭害
+// locMast.setModiUser(userId);
+// locMast.setModiTime(now);
+// if (!locMastService.updateById(locMast)) {
+// throw new CoolException("鏀瑰彉搴撲綅鐘舵�佸け璐�");
+// }
+// } else {
+// throw new CoolException(dto.getLocNo() + "鐩爣搴撲綅宸茶鍗犵敤");
+// }
+// return dto.getLocNo();
+ return null;
}
@Override
@@ -164,7 +165,7 @@
List<LocDetlDto> locDetlDtos = new ArrayList<>();
for (StockOutParam.LocDetl paramLocDetl : param.getLocDetls()) {
if (!Cools.isEmpty(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getCount())) {
- LocDetl one = locDetlService.selectItem(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getBatch());
+ LocDetl one = locDetlService.selectItem(paramLocDetl.getLocNo(), paramLocDetl);
if (null != one) locDetlDtos.add(new LocDetlDto(one, paramLocDetl.getCount()));
}
}
@@ -331,10 +332,8 @@
continue;
}
log.info("宸ヤ綔妗f槑缁嗭細{},{},{},{}", locDto.getOrderNo(), locDto.getMatnr(), locDto.getBatch(),locDto.getAnfme());
- OrderDetl orderDetl = orderDetlService.selectItem(locDto.getOrderNo(), locDto.getMatnr(), locDto.getBatch(), locDto.getAnfme());
- if (orderDetl == null) {
- orderDetl = orderDetlService.selectItem(locDto.getOrderNo(), locDto.getMatnr(), null, locDto.getAnfme());
- }
+ OrderDetl orderDetl = orderDetlService.selectItem(locDto);
+
WrkDetl wrkDetl = new WrkDetl();
wrkDetl.sync(orderDetl);
wrkDetl.setZpallet(wrkMast.getBarcode());
@@ -565,7 +564,7 @@
List<LocDetlDto> locDetlDtos = new ArrayList<>();
for (StockOutParam.LocDetl paramLocDetl : param.getLocDetls()) {
if (!Cools.isEmpty(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getCount())) {
- LocDetl one = locDetlService.selectItem(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getBatch());
+ LocDetl one = locDetlService.selectItem(paramLocDetl.getLocNo(), paramLocDetl);
if (null != one) locDetlDtos.add(new LocDetlDto(one, paramLocDetl.getCount()));
}
}
@@ -727,7 +726,7 @@
if (!locDetl.getAnfme().equals(adjust.getCount())) {
// todo 鐩樼偣璁板綍
// 淇敼搴撳瓨
- if (!locDetlService.updateAnfme(adjust.getCount(), locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getBatch())) {
+ if (!locDetlService.updateAnfme(adjust.getCount(), locDetl.getLocNo(), locDetl)) {
throw new CoolException(locDetl.getLocNo() + "搴撲綅锛�" + locDetl.getMatnr() + "鍟嗗搧锛�" + locDetl.getBatch() + "鎵瑰彿淇敼鏁伴噺澶辫触");
}
// 淇濆瓨璋冩暣璁板綍
@@ -752,7 +751,7 @@
// 鍒犻櫎搴撳瓨
for (LocDetl locDetl : locDetls) {
// todo 鐩樼偣璁板綍
- if (!locDetlService.updateAnfme(-1.0D, locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getBatch())) {
+ if (!locDetlService.updateAnfme(-1.0D, locDetl.getLocNo(), locDetl)) {
throw new CoolException("鍒犻櫎" + locDetl.getLocNo() + "搴撲綅锛�" + locDetl.getMatnr() + "鍟嗗搧锛�" + locDetl.getBatch() + "鎵瑰彿搴撳瓨鏄庣粏澶辫触");
}
// 淇濆瓨璋冩暣璁板綍
--
Gitblit v1.9.1