From 075d19c410180b7cee4068ecc75ddcc09c8a49d8 Mon Sep 17 00:00:00 2001
From: skyouc <creaycat@gmail.com>
Date: 星期二, 13 一月 2026 20:10:50 +0800
Subject: [PATCH] no message
---
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 312 ++++++++++++++++++++++++++++++++++-----------------
1 files changed, 209 insertions(+), 103 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 76fa3af..9257903 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -24,7 +24,10 @@
import com.zy.common.properties.SlaveProperties;
import com.zy.common.service.CommonService;
import com.zy.common.web.WcsController;
+import io.swagger.models.auth.In;
import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.codec.binary.StringUtils;
+import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -419,38 +422,8 @@
//TODO 1. 濡傛灉鏄悓涓�鍙板爢鍨涙満锛岀敓鎴愮Щ搴擄紙鍑哄簱锛変换鍔� 2. 濡傛灉涓嶆槸锛岀敓鎴愬嚭搴撲换鍔★紝鍐嶇敓鎴愬叆搴撲换鍔�
//TODO 鍙︿竴绉嶆柟妗堬紝涓嶇鏄惁褰撳墠宸烽亾锛岀粺涓�鍑哄簱锛屽啀鍏ュ簱
if (!Objects.isNull(deviceNo)) {
- wrkCode = wrkCode + "-1";
-// BasDevice basDevice = basDeviceService.selectOne(new EntityWrapper<BasDevice>()
-// .eq("status", 1)
-// .eq("dev_no", deviceNo));
-// if (Objects.isNull(basDevice)) {
-// throw new CoolException("鏈哄彴淇℃伅涓嶅瓨鍦ㄦ垨宸茬鐢紒锛�");
-// }
-// List<LocAroundBind> binds = locAroundBindService.selectList(new EntityWrapper<LocAroundBind>().eq("dev_no", basDevice.getDevNo()));
-// if (Objects.isNull(binds) || binds.isEmpty()) {
-// throw new CoolException("鍙版満鏈粦瀹氬伐浣滅珯鍙帮紒锛�");
-// }
-// Set<String> locs = binds.stream().map(LocAroundBind::getBLocNo).collect(Collectors.toSet());
-//
-// LocMast mast = locMastService.selectOne(new EntityWrapper<LocMast>()
-// .in("loc_no", locs)
-// .eq("loc_sts", LocStsType.LOC_STS_TYPE_O.type)
-// .eq("dev_no", basDevice.getDevNo())
-// .orderAsc(Arrays.asList("loc_no"))
-// .last("OFFSET 0 ROWS FETCH NEXT 1 ROWS ONLY"));
-//
-// if (Objects.isNull(mast)) {
-// throw new CoolException("褰撳墠鏈哄彴锛屾棤鍙敤宸ヤ綔鍙帮紒锛�");
-// }
-// //鐩稿悓琛ㄧず鍦ㄥ悓涓�涓贩閬�
-// if (mast.getCrnNo().equals(locMast.getCrnNo())) {
-//
-// } else {
-// wrkCode = wrkCode + "-1";
-//
-// }
+ wrkCode = workNo + "-1";
generateOutStock(taskDto, userId, workNo, wrkCode, now, ioType, locMast, staDesc, deviceNo);
-
} else {
generateOutStock(taskDto, userId, workNo, wrkCode, now, ioType, locMast, staDesc, null);
}
@@ -471,6 +444,51 @@
* @date 2026/1/9 20:16
*/
private void generateOutStock(TaskDto taskDto, Long userId, int workNo, String wrkCode, Date now, int ioType, LocMast locMast, StaDesc staDesc, String deviceNo) {
+ if (Objects.isNull(deviceNo)) {
+ throw new CoolException("鏈哄彴鍙蜂笉鑳戒负绌猴紒锛�");
+ }
+ BasDevice basDevice = basDeviceService.selectOne(new EntityWrapper<BasDevice>()
+ .eq("status", 1)
+ .eq("dev_no", deviceNo));
+ if (Objects.isNull(basDevice)) {
+ throw new CoolException("鏈哄彴淇℃伅涓嶅瓨鍦ㄦ垨宸茬鐢紒锛�");
+ }
+
+ List<LocAroundBind> binds = locAroundBindService.selectList( new EntityWrapper<LocAroundBind>()
+ .eq("dev_no", basDevice.getDevNo())
+ .eq("is_default", 1));
+
+ if (Objects.isNull(binds) || binds.isEmpty()) {
+ throw new CoolException("鏈哄彴鏈缃粯璁ゅ伐浣滀綅锛侊紒");
+ }
+
+ Set<String> locs = binds.stream().map(LocAroundBind::getBLocNo).collect(Collectors.toSet());
+
+ LocMast locMasts = locMastService.selectOne(new EntityWrapper<LocMast>()
+ .in("loc_no", locs)
+ .eq("loc_sts", LocStsType.LOC_STS_TYPE_O.type)
+ .orderAsc(Arrays.asList("loc_no"))
+ .last("OFFSET 0 ROWS FETCH NEXT 1 ROWS ONLY"));
+
+ if (Objects.isNull(locMasts)) {
+ binds = locAroundBindService.selectList(new EntityWrapper<LocAroundBind>()
+ .eq("dev_no", basDevice.getDevNo()));
+
+ Set<String> nlocs = binds.stream().map(LocAroundBind::getBLocNo).collect(Collectors.toSet());
+
+ locMasts = locMastService.selectOne(new EntityWrapper<LocMast>()
+ .in("loc_no", nlocs)
+ .eq("loc_sts", LocStsType.LOC_STS_TYPE_O.type)
+ .orderAsc(Arrays.asList("loc_no"))
+ .last("OFFSET 0 ROWS FETCH NEXT 1 ROWS ONLY"));
+ if (Objects.isNull(locMasts)) {
+ throw new CoolException("鏆傛棤鍙敤宸ヤ綔浣嶏紒锛�");
+ }
+ }
+
+ List<Integer> staNos = staDescService.queryOutStaNosByLocNo(locMasts.getLocNo(), 1);
+ //TODO 1. 鑾峰彇鍏ュ簱绔欑偣锛� 鐩爣搴撲綅 3. 灏嗗嚭搴撴槑缁嗘坊鍔犺嚦鍏ュ簱鏄庣粏
+ Integer staNo = staNos.stream().findFirst().get();
// 鐢熸垚宸ヤ綔妗�
WrkMast wrkMast = new WrkMast();
wrkMast.setWrkNo(workNo);
@@ -482,7 +500,9 @@
wrkMast.setIoPri(13D); // 浼樺厛绾э細13
wrkMast.setCrnNo(locMast.getCrnNo());
wrkMast.setSourceStaNo(staDesc.getCrnStn() + ""); // 婧愮珯
- wrkMast.setStaNo(staDesc.getStnNo() + ""); // 鐩爣绔�
+// wrkMast.setStaNo(staDesc.getStnNo() + ""); // 鐩爣绔�
+ wrkMast.setStaNo(staNo + ""); // 鐩爣绔�
+ wrkMast.setLocNo(locMasts.getLocNo());
wrkMast.setSourceLocNo(taskDto.getLocNo()); // 婧愬簱浣�
wrkMast.setFullPlt("Y"); // 婊℃澘锛歒
wrkMast.setPicking("N"); // 鎷f枡
@@ -515,6 +535,10 @@
wrkDetl.setZpallet(wrkMast.getBarcode());
wrkDetl.setIoTime(now);
wrkDetl.setWrkNo(workNo);
+ wrkDetl.setBrand(orderDetl.getBrand());
+ wrkDetl.setModel(orderDetl.getModel());
+ wrkDetl.setUnit(orderDetl.getUnit());
+ wrkDetl.setStandby1(locDto.getStandby1());
wrkDetl.setBatch(locDto.getBatch());
wrkDetl.setOrderNo(locDto.getOrderNo());
wrkDetl.setAnfme(locDto.getAnfme()); // 鏁伴噺
@@ -538,11 +562,10 @@
OrderInAndOutUtil.updateOrder(Boolean.FALSE, orderDetl.getOrderId(), 2L, userId);
}
- //todo 鍒ゆ柇璁惧鍙凤紝鐢熸垚鍏ュ簱浠诲姟
- if (!Objects.isNull(deviceNo)) {
- genInStock(wrkMast, deviceNo, userId);
- }
-
+// //TODO 鍒ゆ柇璁惧鍙凤紝鐢熸垚鍏ュ簱浠诲姟銆傛病鏈夋満鍙板彿锛岃鏄庢槸鏅�氬嚭搴撲换鍔�
+// if (!Objects.isNull(deviceNo)) {
+// genInStock(wrkMast, deviceNo, userId);
+// }
// 淇敼搴撲綅鐘舵��: F.鍦ㄥ簱 ====>>> R.鍑哄簱棰勭害/P.鎷f枡/鐩樼偣/骞舵澘鍑哄簱涓�
locMast = locMastService.selectById(taskDto.getLocNo());
if (locMast.getLocSts().equals("F")) {
@@ -1300,25 +1323,37 @@
if (Cools.isEmpty(wrkMast)) {
throw new CoolException(workNo + "宸ヤ綔妗d笉瀛樺湪");
}
+ Integer ioType = wrkMast.getIoType() - 50;
+ int wokNo = wrkMast.getWrkNo();
// 鍏ュ嚭搴撶被鍨嬪垽鏂�
- if (wrkMast.getIoType() != 103 && wrkMast.getIoType() != 104 && wrkMast.getIoType() != 107) {
- throw new CoolException("褰撳墠鍏ュ嚭搴撶被鍨嬫棤娉曡繘琛屾搷浣�");
- }
- // 宸ヤ綔鐘舵�佸垽鏂�
- if (wrkMast.getWrkSts() < 11 || wrkMast.getWrkSts() == 15) {
- throw new CoolException("褰撳墠宸ヤ綔鐘舵�佹棤娉曡繘琛屾搷浣�");
+ if (Objects.isNull(wrkMast.getWrkCode())) {
+ if (wrkMast.getIoType() != 103 && wrkMast.getIoType() != 104 && wrkMast.getIoType() != 107) {
+ throw new CoolException("褰撳墠鍏ュ嚭搴撶被鍨嬫棤娉曡繘琛屾搷浣�");
+ }
+ // 宸ヤ綔鐘舵�佸垽鏂�
+ if (wrkMast.getWrkSts() < 11 || wrkMast.getWrkSts() == 15) {
+ throw new CoolException("褰撳墠宸ヤ綔鐘舵�佹棤娉曡繘琛屾搷浣�");
+ }
+ } else {
+ if (wrkMast.getIoType() == 103) {
+ ioType = 1;
+ } else if (wrkMast.getIoType() == 101) {
+ ioType = 10;
+ }
+
+ wokNo = commonService.getWorkNo(0);
}
// 淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。
// if (!wrkDetlLogService.save(wrkMast.getWrkNo())) {
// throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。澶辫触");
+//// }
+// // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
+// if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
+// throw new CoolException("淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗eけ璐�");
// }
- // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
- if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
- throw new CoolException("淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗eけ璐�");
- }
// 鑾峰彇鐩爣绔�
Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
- .eq("type_no", wrkMast.getIoType() - 50)
+ .eq("type_no", ioType)
.eq("stn_no", wrkMast.getStaNo()) // 浣滀笟绔欑偣 = 鎷f枡鍑哄簱鐨勭洰鏍囩珯
.eq("crn_no", wrkMast.getCrnNo()); // 鍫嗗灈鏈哄彿
StaDesc staDesc = staDescService.selectOne(wrapper);
@@ -1329,11 +1364,14 @@
// 鍫嗗灈鏈虹珯鐐�(鐩爣绔�)
Integer staNo = staDesc.getCrnStn();
// 鏇存柊宸ヤ綔妗f暟鎹姸鎬�
- wrkMast.setIoType(wrkMast.getIoType() - 50); // 鍏ュ嚭搴撶被鍨�: 103->53,104->54,107->57
+ wrkMast.setIoType(ioType); // 鍏ュ嚭搴撶被鍨�: 103->53,104->54,107->57
wrkMast.setWrkSts(2L); // 宸ヤ綔鐘舵��: 2.璁惧涓婅蛋
wrkMast.setSourceStaNo(wrkMast.getStaNo()); // 婧愮珯
wrkMast.setStaNo(staNo + ""); // 鐩爣绔�
- wrkMast.setLocNo(wrkMast.getSourceLocNo()); // 鐩爣搴撲綅 = 鍑哄簱鏃剁殑婧愬簱浣�
+ //鍒ゆ柇鏄惁涓洪鏂欏嚭搴�
+ if (Objects.isNull(wrkMast.getWrkCode())) {
+ wrkMast.setLocNo(wrkMast.getSourceLocNo()); // 鐩爣搴撲綅 = 鍑哄簱鏃剁殑婧愬簱浣�
+ }
wrkMast.setSourceLocNo(""); // 婧愬簱浣嶆竻绌�
wrkMast.setModiTime(now);
wrkMast.setModiUser(userId);
@@ -1349,6 +1387,81 @@
throw new CoolException("淇敼搴撲綅鐘舵�佸け璐�");
}
}
+
+
+ @Override
+ @Transactional
+ public void backLocOperation(String workNo, Long userId) {
+ WrkMast wrkMast = wrkMastService.selectById(workNo);
+ if (Cools.isEmpty(wrkMast)) {
+ throw new CoolException(workNo + "宸ヤ綔妗d笉瀛樺湪");
+ }
+ Integer ioType = wrkMast.getIoType() - 50;
+ Integer wokNo;
+ // 鍏ュ嚭搴撶被鍨嬪垽鏂�
+ if (wrkMast.getIoType() == 103) {
+ ioType = 1;
+ } else if (wrkMast.getIoType() == 101) {
+ ioType = 10;
+ }
+ wokNo = commonService.getWorkNo(0);
+
+ // 鑾峰彇鐩爣绔�
+ Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
+ .eq("type_no", ioType)
+ .eq("stn_no", wrkMast.getStaNo()) // 浣滀笟绔欑偣 = 鎷f枡鍑哄簱鐨勭洰鏍囩珯
+ .eq("crn_no", wrkMast.getCrnNo()); // 鍫嗗灈鏈哄彿
+ StaDesc staDesc = staDescService.selectOne(wrapper);
+ if (Cools.isEmpty(staDesc)) {
+ throw new CoolException("鍏ュ簱璺緞涓嶅瓨鍦�");
+ }
+ Date now = new Date();
+ // 鍫嗗灈鏈虹珯鐐�(鐩爣绔�)
+ Integer staNo = staDesc.getCrnStn();
+ WrkMast mast = new WrkMast();
+ BeanUtils.copyProperties(wrkMast, mast);
+ mast.setWrkNo(wokNo);
+ // 鏇存柊宸ヤ綔妗f暟鎹姸鎬�
+ mast.setIoType(ioType); // 鍏ュ嚭搴撶被鍨�: 103->53,104->54,107->57
+ mast.setWrkSts(2L); // 宸ヤ綔鐘舵��: 2.璁惧涓婅蛋
+ mast.setSourceStaNo(wrkMast.getStaNo()); // 婧愮珯
+ mast.setStaNo(staNo + ""); // 鐩爣绔�
+ //鍒ゆ柇鏄惁涓洪鏂欏嚭搴�
+ if (Objects.isNull(mast.getWrkCode())) {
+ mast.setLocNo(mast.getSourceLocNo()); // 鐩爣搴撲綅 = 鍑哄簱鏃剁殑婧愬簱浣�
+ }
+// mast.setSourceLocNo(""); // 婧愬簱浣嶆竻绌�
+ mast.setModiTime(now);
+ mast.setModiUser(userId);
+ if (!wrkMastService.insert(mast)) {
+ throw new CoolException("鏇存柊宸ヤ綔妗f暟鎹姸鎬佸け璐�");
+ }
+ List<WrkDetl> wrkDetls = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()));
+ if (Cools.isEmpty(wrkDetls)) {
+ throw new CoolException("鏁版嵁閿欒锛屼换鍔℃。鏄庣粏涓嶅瓨鍦� 锛侊紒");
+ }
+
+ wrkDetls.forEach(wrkDetl -> {
+ WrkDetl wrkDetl1 = new WrkDetl();
+ BeanUtils.copyProperties(wrkDetl, wrkDetl1);
+ wrkDetl1.setWrkNo(wokNo);
+ if (!wrkDetlService.insert(wrkDetl1)) {
+ throw new CoolException("浠诲姟妗f槑缁嗕繚瀛樺け璐ワ紒锛�");
+ }
+ });
+
+ // 淇敼搴撲綅鐘舵�� Q.鎷f枡/鐩樼偣/骞舵澘鍐嶅叆搴�
+ LocMast locMast = locMastService.selectById(wrkMast.getLocNo());
+ locMast.setLocSts("Q");
+ locMast.setModiTime(now);
+ locMast.setModiUser(userId);
+ if (!locMastService.updateById(locMast)) {
+ throw new CoolException("淇敼搴撲綅鐘舵�佸け璐�");
+ }
+ }
+
+
+
@Override
public StartupDto createWaitPainWrkMastStart(List<WaitPakin> list, Long userId) {
@@ -1505,36 +1618,48 @@
}
List<LocAroundBind> binds = locAroundBindService.selectList(new EntityWrapper<LocAroundBind>().eq("dev_no", basDevice.getDevNo()));
if (Objects.isNull(binds) || binds.isEmpty()) {
- throw new CoolException("鍙版満鏈粦瀹氬伐浣滅珯鍙帮紒锛�");
+ throw new CoolException("鏈哄彴鏈粦瀹氬伐浣滅珯鍙帮紒锛�");
}
Set<String> locs = binds.stream().map(LocAroundBind::getBLocNo).collect(Collectors.toSet());
LocMast locMasts = locMastService.selectOne(new EntityWrapper<LocMast>()
.in("loc_no", locs)
.eq("loc_sts", LocStsType.LOC_STS_TYPE_O.type)
- .eq("dev_no", basDevice.getDevNo())
.orderAsc(Arrays.asList("loc_no"))
.last("OFFSET 0 ROWS FETCH NEXT 1 ROWS ONLY"));
if (Objects.isNull(locMasts)) {
throw new CoolException("褰撳墠鏈哄彴锛屾棤鍙敤宸ヤ綔鍙帮紒锛�");
}
- List<Integer> staNos = staDescService.queryOutStaNosByLocNo(locMasts.getLocNo(),1);
+ int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(1));
+ List<Integer> staNos = staDescService.queryOutStaNosByLocNo(locMasts.getLocNo(), 1);
+ //TODO 1. 鑾峰彇鍏ュ簱绔欑偣锛� 鐩爣搴撲綅 3. 灏嗗嚭搴撴槑缁嗘坊鍔犺嚦鍏ュ簱鏄庣粏
+ Integer staNo = staNos.stream().findFirst().get();
+ if (Objects.isNull(outMast.getWrkCode())) {
+ throw new CoolException("鏁版嵁閿欒锛屼笂绾т换鍔$紪鐮佷负绌猴紒锛�");
+ }
+ String wrkCode;
+ int indexOf = outMast.getWrkCode().indexOf("-");
+ if (indexOf != -1) {
+ String substring = outMast.getWrkCode().substring(0, indexOf);
+ wrkCode = substring + "-2";
+ } else {
+ throw new CoolException("鏁版嵁閿欒锛屼笂绾т换鍔$紪鐮侀敊璇紒锛�");
+ }
WrkMast wrkMast = new WrkMast();
- StartupDto dto = commonService.getLocNo(1, sourceStaNo.getDevNo(), findLocNoAttributeVo, locTypeDto);
-// int workNo = dto.getWorkNo();
// 鐢熸垚宸ヤ綔妗�
wrkMast.setWrkNo(workNo);
+ wrkMast.setWrkCode(wrkCode);
wrkMast.setIoTime(new Date());
wrkMast.setWrkSts(2L); // 宸ヤ綔鐘舵�侊細鐢熸垚鍏ュ簱ID
wrkMast.setIoType(1); // 鍏ュ嚭搴撶姸鎬侊細1.鍏ュ簱
- wrkMast.setCrnNo(dto.getCrnNo());
- wrkMast.setSourceStaNo(dto.getSourceStaNo() + "");
- wrkMast.setStaNo(dto.getStaNo() + "");
- wrkMast.setLocNo(dto.getLocNo());
+ wrkMast.setCrnNo(locMasts.getCrnNo());
+ wrkMast.setSourceStaNo(outMast.getStaNo());
+// wrkMast.setStaNo(staNo + "");
+ wrkMast.setLocNo(locMasts.getLocNo());
wrkMast.setIoPri(13D); // 浼樺厛绾�
- wrkMast.setBarcode(pakin.getZpallet()); // 鎵樼洏鐮�
+ wrkMast.setBarcode(outMast.getBarcode()); // 鎵樼洏鐮�
wrkMast.setFullPlt("Y"); // 婊℃澘锛歒
wrkMast.setPicking("N"); // 鎷f枡
wrkMast.setExitMk("N"); // 閫�鍑�
@@ -1542,60 +1667,41 @@
wrkMast.setLinkMis("Y");
wrkMast.setModiUser(userId);
wrkMast.setAppeUser(userId);
- wrkMast.setCtnType(sourceStaNo.getCtnType()); // 瀹瑰櫒绫诲瀷
+ wrkMast.setCtnType(locMasts.getCtnType()); // 瀹瑰櫒绫诲瀷
// 鎿嶄綔浜哄憳鏁版嵁
- wrkMast.setAppeTime(now);
- wrkMast.setModiTime(now);
+ wrkMast.setAppeTime(new Date());
+ wrkMast.setModiTime(new Date());
boolean res = wrkMastService.insert(wrkMast);
if (!res) {
throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
}
// 鏇存柊婧愮珯鐐逛俊鎭�
- sourceStaNo.setWrkNo(workNo);
- sourceStaNo.setModiTime(now);
- if (!basDevpService.updateById(sourceStaNo)) {
- throw new CoolException("鏇存柊婧愮珯澶辫触");
- }
+// 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.setModiTime(now);
- if (!locMastService.updateById(locMast)) {
+// LocMast locMast = locMastService.selectById(dto.getLocNo());
+ if (locMasts.getLocSts().equals("O")) {
+ locMasts.setLocSts("S"); // S.鍏ュ簱棰勭害
+ locMasts.setModiTime(new Date());
+ if (!locMastService.updateById(locMasts)) {
throw new CoolException("鏀瑰彉搴撲綅鐘舵�佸け璐�");
}
} else {
- throw new CoolException(dto.getLocNo() + "鐩爣搴撲綅宸茶鍗犵敤");
+ throw new CoolException(locMasts.getLocNo() + "鐩爣搴撲綅宸茶鍗犵敤");
}
-
- // 鏇存柊鍏ュ簱閫氱煡妗� ioStatus ===>> Y
- Wrapper<WaitPakin> wrapper = new EntityWrapper<WaitPakin>()
- .eq("zpallet", pakin.getZpallet());
- WaitPakin setParam = new WaitPakin();
- setParam.setLocNo(dto.getLocNo());
- setParam.setIoStatus("Y");
- setParam.setModiTime(now);
- if (!waitPakinService.update(setParam, wrapper)) {
- throw new CoolException("鏇存柊閫氱煡妗eけ璐�");
+ List<WrkDetl> wrkDetls = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", outMast.getWrkNo()));
+ if (Objects.isNull(wrkDetls) || wrkDetls.isEmpty()) {
+ throw new CoolException("浠诲姟鏄庣粏涓虹┖锛侊紒");
}
+ wrkDetls.forEach(wrkDetl -> {
+ WrkDetl detl = new WrkDetl();
+ BeanUtils.copyProperties(wrkDetl, detl);
+ detl.setWrkNo(wrkMast.getWrkNo());
+ if (!wrkDetlService.insert(detl)) {
+ throw new CoolException("浠诲姟鏄庣粏淇濆瓨澶辫触锛侊紒");
+ }
+ });
}
-
- // 鐢熸垚宸ヤ綔妗f槑缁�
- waitPakins.forEach(waitPakin ->
-
- {
- WrkDetl wrkDetl = new WrkDetl();
- wrkDetl.sync(waitPakin);
- wrkDetl.setWrkNo(wrkMast.getWrkNo());
- wrkDetl.setIoTime(wrkMast.getIoTime());
- double v = Math.round(waitPakin.getAnfme() * waitPakin.getVolume() * 100) / 100.0;
- wrkDetl.setAnfme(v);
- wrkDetl.setAppeTime(now);
- wrkDetl.setModiTime(now);
- if (!wrkDetlService.insert(wrkDetl)) {
- throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触");
- }
- });
-}
-
}
--
Gitblit v1.9.1