From 287170042ad762d32ca574a5ed692648ea8e002f Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期一, 14 四月 2025 08:56:29 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 80 +++++++++++++++++++++++++++------------
1 files changed, 55 insertions(+), 25 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 01bc2bf..15ffe1e 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -89,8 +89,13 @@
BasDevp sourceStaNo = basDevpService.checkSiteStatus(param.getDevpNo(), true);
// 妫�绱㈠簱浣�
LocTypeDto locTypeDto = new LocTypeDto(sourceStaNo);
+
+ List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("source_sta_no", param.getDevpNo()));
+ if (!wrkMasts.isEmpty()) {
+ throw new CoolException("宸叉湁浠诲姟");
+ }
List<String> matnrs = param.getList().stream().map(FullStoreParam.MatCodeStore::getMatnr).distinct().collect(Collectors.toList());
- StartupDto dto = commonService.getLocNo(DEFAULT_ROW_NO_TYPE, 1, param.getDevpNo(), matnrs, locTypeDto, 0);
+ StartupDto dto = commonService.getLocNo(2, 1, param.getDevpNo(), null,null,null,0, locTypeDto,0);
// 鐢熸垚宸ヤ綔鍙�
int workNo = dto.getWorkNo();
// 鐢熸垚宸ヤ綔妗�
@@ -207,6 +212,10 @@
assert ioType != null;
// 鑾峰彇搴撲綅
LocMast locMast = locMastService.selectById(dto.getLocNo());
+ //zc
+ if (!locMast.getLocSts().equals("F")){
+ throw new CoolException(locMast.getLocNo()+"璇ュ簱浣嶄笉鏄湪搴撶姸鎬�");
+ }
Integer outSta = staNo.getDevNo();
// //2鍙峰爢鍨涙満鍏ㄦ澘鍑哄簱绔欐寚瀹氫负204绔欙紝鎷f枡绔欐寚瀹氫负202
@@ -374,7 +383,7 @@
BasDevp sourceStaNo = basDevpService.checkSiteStatus(devpNo, true);
// 妫�绱㈠簱浣�
LocTypeDto locTypeDto = new LocTypeDto(sourceStaNo);
- StartupDto dto = commonService.getLocNo(DEFAULT_ROW_NO_TYPE, 10, devpNo, null, locTypeDto, 0);
+ StartupDto dto = commonService.getLocNo(1, 10, devpNo, null,null,null,0, locTypeDto,0);
int workNo = dto.getWorkNo();
Date now = new Date();
// 鐢熸垚宸ヤ綔妗�
@@ -439,6 +448,10 @@
if (Cools.isEmpty(locMast)) {
throw new CoolException(locNo+"搴撲綅涓嶅瓨鍦�");
}
+ //zc
+ if (!locMast.getLocSts().equals("D")){
+ throw new CoolException(locNo+"搴撲綅鐘舵�佷笉瀵�");
+ }
// 鑾峰彇婧愮珯
Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
.eq("type_no", 110)
@@ -490,9 +503,6 @@
@Transactional
public WrkMast emptyPlateOut(EmptyPlateOutParam param) {
WrkMast wrkMast = new WrkMast();
- if (Cools.isEmpty(param.getOutSite())) {
- throw new CoolException("绔欑偣涓嶅瓨鍦�");
- }
for (String locNo : param.getLocNos()) {
// 鑾峰彇宸ヤ綔鍙�
int workNo = commonService.getWorkNo(0);
@@ -504,8 +514,8 @@
// 鑾峰彇婧愮珯
Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
.eq("type_no", 110)
- .eq("stn_no", param.getOutSite())
- .eq("crn_no", locMast.getCrnNo());
+ .eq("crn_no", locMast.getCrnNo())
+ .eq("stn_no",param.getOutSite());
StaDesc staDesc = staDescService.selectOne(wrapper);
Integer sourceStaNo = staDesc.getCrnStn();
if (Cools.isEmpty(sourceStaNo)) {
@@ -520,7 +530,7 @@
wrkMast.setIoType(110); // 鍏ュ嚭搴撶姸鎬侊細 110.绌烘澘鍑哄簱
wrkMast.setIoPri(10D);
wrkMast.setSourceStaNo(sourceStaNo); // 婧愮珯
- wrkMast.setStaNo(param.getOutSite()); // 鐩爣绔�
+ wrkMast.setStaNo(staDesc.getStnNo()); // 鐩爣绔�
wrkMast.setCrnNo(locMast.getCrnNo());
wrkMast.setSourceLocNo(locNo); // 婧愬簱浣�
wrkMast.setFullPlt("N"); // 婊℃澘锛歒
@@ -586,6 +596,10 @@
if (!sourceLoc.getCrnNo().equals(loc.getCrnNo())) {
throw new CoolException("绉昏浆搴撲綅灞炰簬涓嶅悓鍫嗗灈鏈�");
}
+ //zc
+// if (!loc.getLocSts().equals("F")){
+// throw new CoolException(locNo+"搴撲綅鐘舵�佷笉瀵�");
+// }
Date now = new Date();
// 鑾峰彇宸ヤ綔鍙�
int workNo = commonService.getWorkNo(WorkNoType.PICK.type);
@@ -668,8 +682,10 @@
if (wrkMast.getWrkSts() < 4 || (wrkMast.getWrkSts() > 10 && wrkMast.getIoType()==11)) {
wrkMast.setWrkSts(4L);
// 鍑哄簱
- } else if (wrkMast.getWrkSts() > 10) {
+ } else if (wrkMast.getWrkSts() > 10 && wrkMast.getIoType()!=199) {
wrkMast.setWrkSts(14L);
+ }else if (wrkMast.getIoType() == 199) {
+ wrkMast.setWrkSts(15L);
}
Date now = new Date();
wrkMast.setCrnStrTime(DateUtils.calculate(now, 1L, TimeUnit.SECONDS, true));
@@ -812,6 +828,12 @@
if (Cools.isEmpty(wrkMast)){
throw new CoolException(workNo+"宸ヤ綔妗d笉瀛樺湪");
}
+ if (wrkMast.getIoType() == 1 && (wrkMast.getWrkSts() == 4 || wrkMast.getWrkSts() == 5)){
+ throw new CoolException(workNo+"涓嶅彲鍙栨秷");
+ }
+ if (wrkMast.getIoType() == 101 && (wrkMast.getWrkSts() == 14 || wrkMast.getWrkSts() == 15)){
+ throw new CoolException(workNo+"涓嶅彲鍙栨秷");
+ }
String locNo = ""; // 寰呬慨鏀圭洰鏍囧簱浣�
String locSts = ""; // 寰呬慨鏀圭洰鏍囧簱浣嶇姸鎬�
// 鍏ュ簱鍙栨秷锛堜慨鏀圭洰鏍囧簱浣嶏級
@@ -853,6 +875,8 @@
locMast.setModiUser(userId);
locMastService.updateById(locMast);
}
+ } else if (wrkMast.getIoType() == 199) {
+
} else {
throw new CoolException("褰撳墠宸ヤ綔鐘舵�佹棤娉曞彇娑�");
}
@@ -939,19 +963,21 @@
// 鍒犻櫎宸ヤ綔妗f槑缁�
boolean wrkDetlRes = wrkDetlService.delete(new EntityWrapper<WrkDetl>().eq("wrk_no", workNo));
}
+ if (wrkMast.getIoType()!=199){
+ // 淇敼搴撲綅鐘舵��
+ LocMast locMast = locMastService.selectById(locNo);
+ if (Cools.isEmpty(locMast)) {
+ throw new CoolException("鍙栨秷宸ヤ綔妗eけ璐ワ紝搴撲綅涓嶅瓨鍦�:"+ locNo);
+ }
+ locMast.setLocSts(locSts);
+ locMast.setModiTime(now);
+ locMast.setModiUser(userId);
+ boolean locMastRes = locMastService.updateById(locMast);
+ if (!wrkMastRes || !locMastRes) {
+ throw new CoolException("淇濆瓨鏁版嵁澶辫触");
+ }
+ }
- // 淇敼搴撲綅鐘舵��
- LocMast locMast = locMastService.selectById(locNo);
- if (Cools.isEmpty(locMast)) {
- throw new CoolException("鍙栨秷宸ヤ綔妗eけ璐ワ紝搴撲綅涓嶅瓨鍦�:"+ locNo);
- }
- locMast.setLocSts(locSts);
- locMast.setModiTime(now);
- locMast.setModiUser(userId);
- boolean locMastRes = locMastService.updateById(locMast);
- if (!wrkMastRes || !locMastRes) {
- throw new CoolException("淇濆瓨鏁版嵁澶辫触");
- }
}
@Override
@@ -1045,14 +1071,14 @@
Integer deepRow = Utils.getDeepRow(slaveProperties, curRow);
targetLoc = locMastService.queryFreeLocMast(deepRow, locMast.getLocType1());
// 鍥犲簱浣嶇Щ杞�侀渶棰勭暀绌哄簱浣�
- if (!locMastService.checkEmptyCount(targetLoc)) {
+ if (!locMastService.checkEmptyCount(targetLoc,10)) {
continue;
}
}
if (Cools.isEmpty(targetLoc)) {
targetLoc = locMastService.queryFreeLocMast(curRow, locMast.getLocType1());
// 鍥犲簱浣嶇Щ杞�侀渶棰勭暀绌哄簱浣�
- if (!locMastService.checkEmptyCount(targetLoc)) {
+ if (!locMastService.checkEmptyCount(targetLoc,10)) {
continue;
}
// 鐩爣搴撲綅 ===>> 娴呭簱浣嶏紝 鍒欐牎楠屽叾娣卞簱浣嶆槸鍚︿负 F D X
@@ -1188,6 +1214,10 @@
@Override
@Transactional
public void turnOverOutPayment(EmptyPlateOutParam param, Long userId) {
+ if (Cools.isEmpty(param.getPayment())){
+ throw new CoolException("璇烽�夋嫨鐩爣璐х墿褰㈡��");
+ }
+ log.info("鏇存柊璐х墿褰㈡�侊細鐩爣璐х墿褰㈡�侊細"+param.getPayment$(param.getPayment())+";鏇存敼璐х墿淇℃伅锛�"+param.getLocDetls());
try {
if (param.getLocDetls().size()<=0){
throw new CoolException("璇锋彁鍙栨槑缁�");
@@ -1208,7 +1238,7 @@
if (locNo1[1].equals("骞冲簱")){
List<ManLocDetl> manLocDetls = manLocDetlService.selectList(new EntityWrapper<ManLocDetl>().eq("loc_no", locNo));
for (ManLocDetl manLocDetl:manLocDetls){
- manLocDetl.setPayment(1);
+ manLocDetl.setPayment(param.getPayment());
try{
manLocDetlService.update(manLocDetl,new EntityWrapper<ManLocDetl>().eq("loc_no", locNo).eq("matnr",manLocDetl.getMatnr()));
}catch (Exception e){
@@ -1218,7 +1248,7 @@
}else if (locNo1[1].equals("绔嬪簱")){
List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("loc_no", locNo));
for (LocDetl locDetl:locDetls){
- locDetl.setPayment(1);
+ locDetl.setPayment(param.getPayment());
try{
locDetlService.update(locDetl,new EntityWrapper<LocDetl>().eq("loc_no", locNo).eq("matnr",locDetl.getMatnr()));
}catch (Exception e){
--
Gitblit v1.9.1