From 7045b984af43d5825058b4df4b4dbc7a08cf2db2 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期一, 20 十月 2025 08:33:53 +0800
Subject: [PATCH] 对接
---
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 111 +++++++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 102 insertions(+), 9 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 9123f37..3d64d92 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -8,10 +8,7 @@
import com.core.common.SnowflakeIdWorker;
import com.core.exception.CoolException;
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.entity.param.*;
import com.zy.asrs.service.*;
import com.zy.asrs.utils.Utils;
import com.zy.common.model.*;
@@ -377,7 +374,7 @@
wrkMast.setSourceStaNo(dto.getSourceStaNo());
wrkMast.setStaNo(dto.getStaNo());
wrkMast.setLocNo(dto.getLocNo());
- wrkMast.setFullPlt("N"); // 婊℃澘
+ wrkMast.setFullPlt(sourceStaNo.getFronting()); // 婊℃澘
wrkMast.setPicking("N"); // 鎷f枡
wrkMast.setExitMk("N"); // 閫�鍑�
wrkMast.setEmptyMk("Y"); // 绌烘澘
@@ -421,8 +418,15 @@
throw new CoolException("绔欑偣涓嶅瓨鍦�");
}
for (String locNo : param.getLocNos()) {
- // 鑾峰彇宸ヤ綔鍙�
- int workNo = commonService.getWorkNo(WorkNoType.PAKOUT.type);
+ int workNo=9992;
+// if(param.getOutSite()==114||param.getOutSite()==103){
+// // 鑾峰彇宸ヤ綔鍙�
+// workNo = commonService.getWorkNo(WorkNoType.OTHER.type);
+// }else {
+// // 鑾峰彇宸ヤ綔鍙�
+// workNo = commonService.getWorkNo(WorkNoType.PAKOUT.type);
+// }
+
// 鑾峰彇搴撲綅
LocMast locMast = locMastService.selectById(locNo);
if (Cools.isEmpty(locMast)) {
@@ -450,7 +454,7 @@
wrkMast.setStaNo(param.getOutSite()); // 鐩爣绔�
wrkMast.setCrnNo(locMast.getCrnNo());
wrkMast.setSourceLocNo(locNo); // 婧愬簱浣�
- wrkMast.setFullPlt("N"); // 婊℃澘锛歒
+ wrkMast.setFullPlt(locMast.getFullPlt()); // 婊℃澘锛歒
wrkMast.setPicking("N"); // 鎷f枡
wrkMast.setExitMk("N"); // 閫�鍑�
wrkMast.setEmptyMk("Y"); // 绌烘澘
@@ -512,7 +516,7 @@
wrkMast.setStaNo(param.getOutSite()); // 鐩爣绔�
wrkMast.setCrnNo(locMast.getCrnNo());
wrkMast.setSourceLocNo(locNo); // 婧愬簱浣�
- wrkMast.setFullPlt("N"); // 婊℃澘锛歒
+ wrkMast.setFullPlt(locMast.getFullPlt()); // 婊℃澘锛歒
wrkMast.setPicking("N"); // 鎷f枡
wrkMast.setExitMk("N"); // 閫�鍑�
wrkMast.setEmptyMk("Y"); // 绌烘澘
@@ -643,6 +647,87 @@
@Override
@Transactional
+ public void locCombOut(ReplenishmentParam param, Long userId) {
+ // 鍙傛暟闈炵┖鍒ゆ柇
+ if (Cools.isEmpty(param.getDevpNo(), param.getList())) {
+ throw new CoolException(BaseRes.PARAM);
+ }
+ //鍒ゆ柇搴撲綅鍙枫�佸簱浣嶇姸鎬�
+ LocMast locMast;
+ if (Cools.isEmpty(param.getLocNo())){
+ throw new CoolException("骞舵澘鍑哄簱搴撲綅鍙傛暟閿欒");
+ }else {
+ locMast = locMastService.selectById(param.getLocNo());
+ if(!Cools.isEmpty(locMast)){
+ if (!locMast.getLocSts().equals("F")){
+ throw new CoolException("骞舵澘搴撲綅闈炲湪搴撶姸鎬�");
+ }
+ }else{
+ throw new CoolException("搴撳瓨涓簱浣嶅彿涓嶅瓨鍦�");
+ }
+ }
+ // 婧愮珯鐐圭姸鎬佹娴�
+// BasDevp sourceStaNo = basDevpService.checkSiteStatus(param.getDevpNo(), true);
+ // 鐢熸垚宸ヤ綔鍙�
+ int workNo = commonService.getWorkNo(DEFAULT_WORK_NO_TYPE);
+ // 鑾峰彇璺緞
+ Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
+ .eq("type_no", 104)
+ .eq("stn_no", param.getDevpNo())
+ .eq("crn_no", locMast.getCrnNo());
+ StaDesc staDesc = staDescService.selectOne(wrapper);
+ if (Cools.isEmpty(staDesc)) {
+ throw new CoolException("鍑哄簱璺緞涓嶅瓨鍦�");
+ }
+ // 鐢熸垚宸ヤ綔妗�
+ WrkMast wrkMast = new WrkMast();
+ wrkMast.setWrkNo(workNo);
+ wrkMast.setIoTime(new Date());
+ wrkMast.setWrkSts(11L); // 宸ヤ綔鐘舵�侊細鐢熸垚鍏ュ簱ID
+ wrkMast.setIoType(104); // 鍏ュ嚭搴撶姸鎬侊細1.鍏ュ簱
+ wrkMast.setIoPri(13D); // 浼樺厛绾э細10
+ wrkMast.setCrnNo(locMast.getCrnNo());
+ wrkMast.setSourceStaNo(staDesc.getCrnStn());
+ wrkMast.setStaNo(param.getDevpNo());
+ wrkMast.setSourceLocNo(param.getLocNo());
+ wrkMast.setBarcode(locMast.getBarcode()); // 鎵樼洏鐮�
+ wrkMast.setFullPlt("Y"); // 婊℃澘锛歒
+ wrkMast.setPicking("N"); // 鎷f枡
+ wrkMast.setExitMk("N"); // 閫�鍑�
+ wrkMast.setEmptyMk("N"); // 绌烘澘
+ wrkMast.setLinkMis("N");
+ wrkMast.setCtnType(locMast.getCtnType()); // 瀹瑰櫒绫诲瀷
+ // 鎿嶄綔浜哄憳鏁版嵁
+ wrkMast.setAppeUser(userId);
+ wrkMast.setAppeTime(new Date());
+ wrkMast.setModiUser(userId);
+ wrkMast.setModiTime(new Date());
+ boolean res = wrkMastService.insert(wrkMast);
+ if (!res) {
+ throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
+ }
+ // 鐢熸垚宸ヤ綔妗f槑缁�
+ List<MatCodeCountDto> matDtos = new ArrayList<>();
+ param.getList().forEach(elem -> {
+ matDtos.add(new MatCodeCountDto(elem.getMatnr(), elem.getBatch(), elem.getCount()));
+ });
+ wrkDetlService.createWorkDetail2(workNo, matDtos, locMast.getBarcode(), userId);
+ // 鏇存柊搴撲綅鐘舵��
+// LocMast locMast = locMastService.selectById(dto.getLocNo());
+ if (locMast.getLocSts().equals("F")){
+ locMast.setLocSts("P"); // P.骞舵澘鍑哄簱棰勭害
+ locMast.setModiUser(userId);
+ locMast.setModiTime(new Date());
+ if (!locMastService.updateById(locMast)){
+ throw new CoolException("鏀瑰彉搴撲綅鐘舵�佸け璐�");
+ }
+ } else {
+ throw new CoolException(locMast.getLocNo()+"鐩爣搴撲綅宸茶鍗犵敤");
+ }
+ }
+
+ @Override
+ @Transactional
public void completeWrkMast(String workNo, Long userId) {
WrkMast wrkMast = wrkMastService.selectById(workNo);
if (Cools.isEmpty(wrkMast)){
@@ -684,6 +769,13 @@
Date now = new Date();
List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("loc_no", param.getLocNo()));
+
+ String zpallet = "";
+ for (LocDetl locDetl : locDetls) {
+ if (!Cools.isEmpty(locDetl.getZpallet())) {
+ zpallet = locDetl.getZpallet();
+ }
+ }
List<LocDetlAdjustParam.LocDetlAdjust> list = param.getList();
@@ -748,6 +840,7 @@
Mat mat = matService.selectByMatnr(adjust.getMatnr());
LocDetl locDetl = new LocDetl();
locDetl.sync(mat);
+ locDetl.setZpallet(zpallet);
locDetl.setBatch(adjust.getBatch());
locDetl.setLocNo(locMast.getLocNo());
locDetl.setAnfme(adjust.getCount()); // 鏁伴噺
--
Gitblit v1.9.1