From 26bd94065f7b0b6e8453050ecd4f0a179bf2a090 Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期一, 17 六月 2024 08:10:04 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 152 ++++++++++++++++++++++++++++----------------------
1 files changed, 86 insertions(+), 66 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
index de5c9b5..24b94f1 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -4,10 +4,7 @@
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
-import com.core.common.BaseRes;
-import com.core.common.Cools;
-import com.core.common.DateUtils;
-import com.core.common.SnowflakeIdWorker;
+import com.core.common.*;
import com.core.exception.CoolException;
import com.zy.asrs.entity.*;
import com.zy.asrs.entity.param.CombParam;
@@ -15,6 +12,7 @@
import com.zy.asrs.entity.param.OffSaleParam;
import com.zy.asrs.entity.param.OpenOrderPakinParam;
import com.zy.asrs.mapper.ManLocDetlMapper;
+import com.zy.asrs.mapper.WrkMastMapper;
import com.zy.asrs.service.*;
import com.zy.asrs.utils.MatUtils;
import com.zy.common.constant.MesConstant;
@@ -29,10 +27,7 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.Iterator;
-import java.util.List;
+import java.util.*;
/**
* 绉诲姩绔湇鍔℃牳蹇冪被
@@ -54,6 +49,9 @@
private BasDevpService basDevpService;
@Autowired
private WrkMastService wrkMastService;
+ @Autowired
+ private WrkMastMapper wrkMastMapper;
+
@Autowired
private WrkDetlService wrkDetlService;
@Autowired
@@ -635,64 +633,86 @@
}
@Override
- public void manualCallEmptyTray(int stnNo, Long userId) {
+ public R manualCallEmptyTray(int stnNo, Long userId) {
+ // 浜哄伐pda鍛煎彨绌烘墭鐩�
+ // 0.鍒ゆ柇鏄惁宸插瓨鍦ㄨ鐩爣绔欑偣鐨勭┖鎵樼洏鍑哄簱浠诲姟锛屾湁鍒欑洿鎺ヨ繑鍥烇紙鐘舵�佷笉涓�15锛屾垨鑰呬负15浣嗘槸浠诲姟鍙疯繕鍦ㄨ緭閫佺嚎涓婏級
+ List<WrkMast> wrkMasts = wrkMastMapper.queryEmptyOutLocWork(stnNo);
+ if (!wrkMasts.isEmpty()) {
+ throw new CoolException("宸插瓨鍦ㄨ绔欑偣绌烘墭鐩樺嚭搴撲换鍔★細" + stnNo);
+ }
- // 鑾峰彇宸ヤ綔鍙�
- int workNo = commonService.getWorkNo(WorkNoType.PAKOUT.type);
- // 鑾峰彇搴撲綅
-// LocMast locMast = locMastService.selectById(locNo);
-// if (Cools.isEmpty(locMast)) {
-// throw new CoolException(locNo + "搴撲綅涓嶅瓨鍦�");
-// }
-// if (!locMast.getLocSts().equals("D")) {
-// throw new CoolException("鎵�閫夊簱浣嶅瓨鍦ㄧ姸鎬佷笉涓篋鐨勫簱浣嶏紝搴撲綅鍙凤細" + locMast.getLocNo() + " 銆佸綋鍓嶇姸鎬侊細" + locMast.getLocSts() + "-" + locMast.getLocSts$());
-// }
-// // 鑾峰彇婧愮珯
-// Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
-// .eq("type_no", 110)
-// .eq("stn_no", param.getOutSite())
-// .eq("crn_no", locMast.getCrnNo());
-// StaDesc staDesc = staDescService.selectOne(wrapper);
-// if (staDesc == null) {
-// throw new CoolException("璺緞涓嶅瓨鍦�");
-// }
-// Integer sourceStaNo = staDesc.getCrnStn();
-// if (Cools.isEmpty(sourceStaNo)) {
-// throw new CoolException("妫�绱㈡簮绔欏け璐�");
-// }
-// Date now = new Date();
- // 淇濆瓨宸ヤ綔妗�
-// WrkMast wrkMast = new WrkMast();
-// wrkMast.setWrkNo(workNo);
-// wrkMast.setIoTime(now);
-// wrkMast.setWrkSts(11L); // 宸ヤ綔鐘舵�侊細11.鐢熸垚鍑哄簱ID
-// wrkMast.setIoType(110); // 鍏ュ嚭搴撶姸鎬侊細 110.绌烘澘鍑哄簱
-// wrkMast.setIoPri(10D);
-// wrkMast.setSourceStaNo(sourceStaNo); // 婧愮珯
-// wrkMast.setStaNo(param.getOutSite()); // 鐩爣绔�
-// wrkMast.setCrnNo(locMast.getCrnNo());
-// wrkMast.setSourceLocNo(locNo); // 婧愬簱浣�
-// wrkMast.setFullPlt("N"); // 婊℃澘锛歒
-// wrkMast.setPicking("N"); // 鎷f枡
-// wrkMast.setExitMk("N"); // 閫�鍑�
-// wrkMast.setEmptyMk("Y"); // 绌烘澘
-// wrkMast.setLinkMis("N");
-// wrkMast.setAppeUser(userId);
-// wrkMast.setAppeTime(now);
-// wrkMast.setModiUser(userId);
-// wrkMast.setModiTime(now);
-// boolean res = wrkMastService.insert(wrkMast);
-// if (!res) {
-// throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
-// }
-// // 鏇存柊搴撲綅鐘舵�� D.绌烘澘 -> R.鍑哄簱棰勭害
-// if (locMast.getLocSts().equals("D")) {
-// locMast.setLocSts("R");
-// locMast.setModiUser(userId);
-// locMast.setModiTime(now);
-// if (!locMastService.updateById(locMast)) {
-// throw new CoolException("鏇存柊搴撲綅鐘舵�佸け璐�");
-// }
-// }
+ //1.鏍规嵁鍑哄簱绔欑偣鍘诲鎵剧┖鎵樼洏搴撲綅锛屽厛鎵炬祬搴撲綅
+ List<LocMast> locMasts = new ArrayList<>();
+ EntityWrapper<LocMast> entityWrapper = new EntityWrapper<>();
+ entityWrapper.eq("loc_sts","D").orderAsc(Arrays.asList("row1","lev1","bay1"));
+ if (stnNo == 100) {
+ entityWrapper.in("row1",2,3);
+ locMasts = locMastService.selectList(entityWrapper);
+ if (locMasts.isEmpty()) {
+ entityWrapper.in("row1",1,4);
+ locMasts = locMastService.selectList(entityWrapper);
+ }
+ } else if(stnNo == 102) {
+ entityWrapper.in("row1",6,7);
+ locMasts = locMastService.selectList(entityWrapper);
+ if (locMasts.isEmpty()) {
+ entityWrapper.in("row1",5,8);
+ locMasts = locMastService.selectList(entityWrapper);
+ }
+ }
+ if (locMasts.isEmpty()) {
+ throw new CoolException("娌℃湁鎵惧埌绌烘墭鐩橈紝绔欑偣锛�" + stnNo);
+ }
+
+ // 鍙栫涓�涓┖搴撲綅
+ LocMast locMast = locMasts.get(0);
+
+ // 1.1.鑾峰彇宸ヤ綔璺緞
+ StaDesc staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>().eq("type_no", 110).eq("stn_no",
+ stnNo).eq("crn_no", locMast.getCrnNo()));
+ if (staDesc == null) {
+ throw new CoolException("璺緞涓嶅瓨鍦�");
+ }
+ Integer sourceStaNo = staDesc.getCrnStn();
+ if (Cools.isEmpty(sourceStaNo)) {
+ throw new CoolException("妫�绱㈡簮绔欏け璐�");
+ }
+
+ //2.鐢熸垚绌烘墭鐩樺嚭搴撳伐浣滄。
+ Date now = new Date();
+ WrkMast wrkMast = new WrkMast();
+ wrkMast.setWrkNo(commonService.getWorkNo(WorkNoType.PAKOUT.type));
+ wrkMast.setIoTime(now);
+ wrkMast.setWrkSts(11L); // 宸ヤ綔鐘舵�侊細11.鐢熸垚鍑哄簱ID
+ wrkMast.setIoType(110); // 鍏ュ嚭搴撶姸鎬侊細 110.绌烘澘鍑哄簱
+ wrkMast.setIoPri(10D);
+ wrkMast.setSourceStaNo(sourceStaNo); // 婧愮珯
+ wrkMast.setStaNo(staDesc.getStnNo()); // 鐩爣绔�
+ wrkMast.setCrnNo(locMast.getCrnNo());
+ wrkMast.setSourceLocNo(locMast.getLocNo()); // 婧愬簱浣�
+ wrkMast.setFullPlt("N"); // 婊℃澘锛歒
+ wrkMast.setPicking("N"); // 鎷f枡
+ wrkMast.setExitMk("N"); // 閫�鍑�
+ wrkMast.setEmptyMk("Y"); // 绌烘澘
+ wrkMast.setLinkMis("N");
+ wrkMast.setAppeUser(userId);
+ wrkMast.setAppeTime(now);
+ wrkMast.setModiUser(userId);
+ wrkMast.setModiTime(now);
+ if (!wrkMastService.insert(wrkMast)) {
+ throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
+ }
+
+ // 3.鏇存柊搴撲綅鐘舵�� D.绌烘澘 -> R.鍑哄簱棰勭害
+ if (locMast.getLocSts().equals("D")) {
+ locMast.setLocSts("R");
+ locMast.setModiUser(userId);
+ locMast.setModiTime(now);
+ if (!locMastService.updateById(locMast)) {
+ throw new CoolException("鏇存柊搴撲綅鐘舵�佸け璐�");
+ }
+ }
+
+ return R.ok("绌烘墭鐩樺嚭搴撴垚鍔�");
}
}
--
Gitblit v1.9.1