From 4f1cb437bd84e1922e5c60d4a583137fda581cc8 Mon Sep 17 00:00:00 2001
From: whycq <10027870+whycq@user.noreply.gitee.com>
Date: 星期四, 29 六月 2023 17:09:54 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 26 +++++++++++++++++++++++---
1 files changed, 23 insertions(+), 3 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 5aafe19..6574575 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -162,14 +162,18 @@
@Transactional
public void startupFullTakeStore(StockOutParam param, Long userId) {
List<StockOutParam.LocDetl> locDetls = new ArrayList<>();
+ List<String> locs = new ArrayList<>();
+ for(StockOutParam.LocDetl one : param.getLocDetls()){
+ locs.add(one.getLocNo());
+ }
//鍑哄簱鏃讹紝濡傛灉褰撳墠搴撲綅缁勬湁鐩稿悓鐨勭墿鏂欙紝鍒欏厛鍑哄渚х墿鏂�
for (StockOutParam.LocDetl locDetl : param.getLocDetls()) {
List<String> outerSingleLoc = Utils.getGroupOuterSingleLoc(locDetl.getLocNo());
- outerSingleLoc.add(locDetl.getLocNo());
boolean flag = false;
Double useCount = 0D;
for (String locNo : outerSingleLoc) {
+ if(locs.contains(locNo)) continue;
for (LocDetl locDetl0 : locDetlService.selectByLocNo(locNo)) {
if (!locDetl0.getMatnr().equals(locDetl.getMatnr())) {
//涓嶆槸鐩稿悓鐗╂枡
@@ -177,6 +181,9 @@
}
double lastCount = locDetl.getCount() - useCount;//鍓╀綑鎵�闇�鏁伴噺
double realCount = 0;//瀹為檯鎻愪緵鏁伴噺
+ if (lastCount==0){
+ continue;
+ }
if (locDetl0.getAnfme() >= lastCount) {//瀹為檯鏁伴噺澶т簬鎵�闇�鏁伴噺锛屾寜鎵�闇�鏁伴噺鎻愪緵
realCount = lastCount;
} else {
@@ -199,6 +206,17 @@
}
}
+ // TODO: 2023/6/28 绛夋潕钖囩‘璁ゆ槸鍚︿娇鐢�
+ // ----------------------------------------------
+ //for(StockOutParam.LocDetl one : param.getLocDetls()){
+ // List<String> outerSingleLoc = Utils.getGroupOuterSingleLoc(one.getLocNo());
+ // for (String s : outerSingleLoc) {
+ // if (!locs.contains(s)) {
+ // throw new CoolException("娴呭簱浣嶆湁鐩稿悓鐗╂枡涓嶆敮鎸佸嚭搴�");
+ // }
+ // }
+ //}
+ // ----------------------------------------------
// ArrayList<String> locNos = new ArrayList<>();
// for (StockOutParam.LocDetl locDetl:param.getLocDetls()){
@@ -465,13 +483,15 @@
if (!locMast.getLocSts().equals("F")) {
continue;
}
-
+ if (locMast.getLocSts().equals("F")) {
+ throw new CoolException("娴呭簱浣嶅湪搴撲笉鏀寔姝や换鍔�");
+ }
boolean flag = false;
for (LocDetl locDetl : locDetlService.selectByLocNo(locMast.getLocNo())) {
if (!locDetl.getMatnr().equals(matnr)) {
flag = true;
break;
- }else if (ioWorkType.equals(IoWorkType.CHECK_OUT)){
+ }else if (!Cools.isEmpty(ioWorkType) && ioWorkType.equals(IoWorkType.CHECK_OUT)){
flag = true;
break;
}
--
Gitblit v1.9.1