From 3ab9a944e397e4dcfd6c9dfac619ed3f52cc7ba5 Mon Sep 17 00:00:00 2001
From: TQS <56479841@qq.com>
Date: 星期三, 15 二月 2023 18:02:52 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 46 +++++++++++++++++++++++++++++++++++-----------
1 files changed, 35 insertions(+), 11 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 f48fe8b..61d8631 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -1,6 +1,8 @@
package com.zy.asrs.service.impl;
import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.core.common.BaseRes;
@@ -170,8 +172,13 @@
}
}
if (!locDetlDtos.isEmpty()) {
- // 鍚姩鍑哄簱寮�濮� 101.鍑哄簱
- stockOut(staNo, locDetlDtos, null, userId);
+ LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", locDetlDtos.get(0).getLocDetl().getLocNo()));
+ if (locMast.getLocSts().equals("F") || locMast.getLocSts().equals("D") ){
+ // 鍚姩鍑哄簱寮�濮� 101.鍑哄簱
+ stockOut(staNo, locDetlDtos, null, userId);
+ }else {
+ throw new CoolException("鎵�閫夊簱浣嶅瓨鍦ㄧ姸鎬佷笉涓篎銆丏鐨勫簱浣嶏紝搴撲綅鍙凤細"+locMast.getLocNo()+" 銆佸綋鍓嶇姸鎬侊細"+locMast.getLocSts()+"-"+locMast.getLocSts$());
+ }
} else {
throw new CoolException("搴撳瓨涓嶅瓨鍦�");
}
@@ -233,7 +240,7 @@
wrkMast.setWrkSts(11L); // 宸ヤ綔鐘舵�侊細11.鐢熸垚鍑哄簱ID
wrkMast.setIoType(ioType); // 鍏ュ嚭搴撶姸鎬�
Double ioPri = wrkMastService.getIoPri(ioType, dto.getLocNo());
- wrkMast.setIoPri(13D); // 浼樺厛绾э細13
+ wrkMast.setIoPri(15D); // 浼樺厛绾э細13
wrkMast.setOutMost(locMastService.isOutMost(dto.getLocNo(), false) ? 1 : 0);
wrkMast.setCrnNo(locMast.getCrnNo());
wrkMast.setSourceStaNo(staDesc.getCrnStn()); // 婧愮珯
@@ -359,7 +366,7 @@
throw new CoolException("淇濆瓨宸ヤ綔妗f槑缁嗗け璐�");
}
// 淇敼璁㈠崟鏄庣粏
- if (BaseController.isJSON(locDto.getOrderNo())) {
+ if (!BaseController.isJSON(locDto.getOrderNo())) {
String[] orderNos = GetOrderNo(locDto.getOrderNo());
if (!Cools.isEmpty(orderNos)){
Double anfme = locDto.getAnfme();
@@ -393,6 +400,7 @@
} else {
// 璁㈠崟鍚堝苟鍑哄簱
List<OrderDto> orderDtoList = JSON.parseArray(locDto.getOrderNo(), OrderDto.class);
+
for (OrderDto orderDto : orderDtoList) {
OrderDetl orderDetl = orderDetlService.selectItem(orderDto.getOrderNo(), locDto.getMatnr(), locDto.getBatch());
if (orderDetl == null) {
@@ -535,6 +543,9 @@
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)
@@ -603,8 +614,14 @@
}
}
if (!locDetlDtos.isEmpty()) {
- // 鍚姩鍑哄簱寮�濮� 107.鐩樼偣鍑哄簱
- stockOut(staNo, locDetlDtos, IoWorkType.CHECK_OUT, userId);
+ LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", locDetlDtos.get(0).getLocDetl().getLocNo()));
+ if (locMast.getLocSts().equals("F")){
+ // 鍚姩鍑哄簱寮�濮� 107.鐩樼偣鍑哄簱
+ stockOut(staNo, locDetlDtos, IoWorkType.CHECK_OUT, userId);
+ }else {
+ throw new CoolException("鎵�閫夊簱浣嶅瓨鍦ㄧ姸鎬佷笉涓篎鐨勫簱浣嶏紝搴撲綅鍙凤細"+locMast.getLocNo()+" 銆佸綋鍓嶇姸鎬侊細"+locMast.getLocSts()+"-"+locMast.getLocSts$());
+ }
+
} else {
throw new CoolException("搴撲綅鐗╂枡涓嶅瓨鍦�");
}
@@ -621,6 +638,9 @@
LocMast loc = locMastService.selectById(locNo);
if (Cools.isEmpty(loc)) {
throw new CoolException("鏈壘鍒板簱浣�");
+ }
+ if (!loc.getLocSts().equals("O")||(!sourceLoc.getLocSts().equals("F") && !sourceLoc.getLocSts().equals("D"))){
+ throw new CoolException("搴撲綅鐘舵�佸凡鏀瑰彉");
}
if (!sourceLoc.getCrnNo().equals(loc.getCrnNo())) {
// throw new CoolException("绉昏浆搴撲綅灞炰簬涓嶅悓鍫嗗灈鏈�"); todo:luxiaotao
@@ -707,6 +727,7 @@
wrkMast.setWrkSts(9L);
// 鍑哄簱
} else if (wrkMast.getWrkSts() > 10) {
+ wrkMast.setSteNo(0);
wrkMast.setWrkSts(17L);
}
Date now = new Date();
@@ -883,6 +904,9 @@
locSts = "D";
// 搴撲綅杞Щ ===>> D.绌烘《/绌烘爤鏉�
} else if (wrkMast.getIoType() == 11) {
+ if (wrkMast.getWrkSts() > 11){
+ throw new CoolException("绉诲簱浠诲姟宸插湪鎵ц涓紝涓嶈兘鍙栨秷");
+ }
locSts = wrkMast.getFullPlt().equalsIgnoreCase("N") ? "D" : "F";
// 搴撲綅杞Щ锛氱洰鏍囧簱浣�
LocMast locMast = locMastService.selectById(wrkMast.getLocNo());
@@ -909,7 +933,7 @@
if (!Cools.isEmpty(orderNo)) {
Double anfme = Integer.parseInt(anfmes[i]) + 0.0;
i++;
- if (BaseController.isJSON(wrkDetl.getOrderNo())) {
+ if (!BaseController.isJSON(wrkDetl.getOrderNo())) {
if (!orderDetlService.decrease(orderNo, wrkDetl.getMatnr(), wrkDetl.getBatch(), anfme)) {
throw new CoolException("璁㈠崟鏁版嵁鍥炴粴澶辫触");
}
@@ -925,7 +949,7 @@
}
}
}else {
- if (BaseController.isJSON(wrkDetl.getOrderNo())) {
+ if (!BaseController.isJSON(wrkDetl.getOrderNo())) {
if (!orderDetlService.decrease(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getAnfme())) {
throw new CoolException("璁㈠崟鏁版嵁鍥炴粴澶辫触");
}
@@ -1059,9 +1083,9 @@
if (Cools.isEmpty(locNos)) {
return;
}
- if (true && !Cools.isEmpty(locNos)) {
- throw new CoolException("鏆備笉鏀寔绉诲簱浠诲姟"); // todo:luxiaotao 绉诲簱寮�鍏�
- }
+// if (true && !Cools.isEmpty(locNos)) {
+// throw new CoolException("鏆備笉鏀寔绉诲簱浠诲姟"); // todo:luxiaotao 绉诲簱寮�鍏�
+// }
LocMast one = locMastService.selectById(locNos.get(0));
List<Integer> rows = Utils.getGroupLoc(Integer.parseInt(locNos.get(0).substring(0, 2)));
List<LocMast> locMasts = locMastService.queryFreeLocMast(rows, rows.size(), one.getLocType1());
--
Gitblit v1.9.1