From cd2fff830de5a879ef2e6b18adebcbe46f28392a Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期五, 26 三月 2021 15:59:36 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/WorkService.java | 2 +-
src/main/java/com/zy/asrs/controller/OpenController.java | 17 +++++++++++------
src/main/java/com/zy/asrs/entity/param/OpenApiStockOutParam.java | 2 ++
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 7 ++++---
4 files changed, 18 insertions(+), 10 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java
index f158401..88cc293 100644
--- a/src/main/java/com/zy/asrs/controller/OpenController.java
+++ b/src/main/java/com/zy/asrs/controller/OpenController.java
@@ -1,18 +1,17 @@
package com.zy.asrs.controller;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.Cools;
import com.core.common.R;
import com.core.exception.CoolException;
import com.zy.asrs.entity.BasDevp;
import com.zy.asrs.entity.LocDetl;
import com.zy.asrs.entity.MatCode;
+import com.zy.asrs.entity.WrkMast;
import com.zy.asrs.entity.param.OpenApiStockOutParam;
import com.zy.asrs.entity.result.PakoutVo;
import com.zy.asrs.entity.result.StoPreTab;
-import com.zy.asrs.service.BasDevpService;
-import com.zy.asrs.service.LocDetlService;
-import com.zy.asrs.service.MatCodeService;
-import com.zy.asrs.service.WorkService;
+import com.zy.asrs.service.*;
import com.zy.common.model.LocDetlDto;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
@@ -40,6 +39,8 @@
private WorkService workService;
@Autowired
private BasDevpService basDevpService;
+ @Autowired
+ private WrkMastService wrkMastService;
@PostMapping("/stockOut/prew")
@Transactional
@@ -96,6 +97,10 @@
List<PakoutVo> result = new ArrayList<>();
if (!Cools.isEmpty(params)) {
for (OpenApiStockOutParam param : params) {
+ // 鎺ㄨ崘璐т綅琛ヤ粨宸ヤ綔妗i槻閲�
+ if (wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("packed", param.getAllotNo()).le("wrk_sts", 14)) > 0) {
+ throw new CoolException("褰撳墠琛ヤ粨浠诲姟姝e湪鎵ц锛岃鑰愬績绛夊緟");
+ }
Double sumAnfme = Optional.ofNullable(locDetlService.getSumAnfme(param.getMatnr())).orElse(0.0D);
if (sumAnfme < param.getAnfme()) {
throw new CoolException(param.getMatnr() + "鐗╂枡鏁伴噺涓嶈冻锛岀己璐ф暟閲忥細" + (param.getAnfme() - sumAnfme));
@@ -116,7 +121,7 @@
dto.setLocDetl(locDetl);
dto.setCount(issued>=locDetl.getAnfme()?locDetl.getAnfme():issued);
detlDtos.add(dto);
- workService.stockOut(staNo, detlDtos, 101, 9527L);
+ workService.stockOut(staNo, detlDtos, 101, 9527L, param.getAllotNo());
// 鎷f枡
} else {
BasDevp staNo = basDevpService.checkSiteStatus(107);
@@ -125,7 +130,7 @@
dto.setLocDetl(locDetl);
dto.setCount(issued>=locDetl.getAnfme()?locDetl.getAnfme():issued);
detlDtos.add(dto);
- workService.stockOut(staNo, detlDtos, 103, 9527L);
+ workService.stockOut(staNo, detlDtos, 103, 9527L, param.getAllotNo());
}
PakoutVo pakoutVo = new PakoutVo();
diff --git a/src/main/java/com/zy/asrs/entity/param/OpenApiStockOutParam.java b/src/main/java/com/zy/asrs/entity/param/OpenApiStockOutParam.java
index 4160f3e..cac303e 100644
--- a/src/main/java/com/zy/asrs/entity/param/OpenApiStockOutParam.java
+++ b/src/main/java/com/zy/asrs/entity/param/OpenApiStockOutParam.java
@@ -14,4 +14,6 @@
private Double total;
+ private String allotNo;
+
}
diff --git a/src/main/java/com/zy/asrs/service/WorkService.java b/src/main/java/com/zy/asrs/service/WorkService.java
index f639fba..b41422f 100644
--- a/src/main/java/com/zy/asrs/service/WorkService.java
+++ b/src/main/java/com/zy/asrs/service/WorkService.java
@@ -28,7 +28,7 @@
* @param locDetls 寰呭嚭搴撶墿鏂�
* @param ioType 鍏ュ嚭搴撶被鍨�
*/
- void stockOut(BasDevp staNo, List<LocDetlDto> locDetls, Integer ioType, Long userId);
+ void stockOut(BasDevp staNo, List<LocDetlDto> locDetls, Integer ioType, Long userId, String allotNo);
/**
* 绌烘澘鍏ュ簱
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 9261bf6..1f66bb6 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -149,7 +149,7 @@
}
if (!locDetlDtos.isEmpty()) {
// 鍚姩鍑哄簱寮�濮� 101.鍑哄簱
- stockOut(staNo, locDetlDtos, null, userId);
+ stockOut(staNo, locDetlDtos, null, userId, null);
} else {
throw new CoolException("搴撲綅鐗╂枡涓嶅瓨鍦�");
}
@@ -157,7 +157,7 @@
@Override
@Transactional
- public void stockOut(BasDevp staNo, List<LocDetlDto> locDetlDtos, Integer ioType, Long userId) {
+ public void stockOut(BasDevp staNo, List<LocDetlDto> locDetlDtos, Integer ioType, Long userId, String allotNo) {
// 鍚堝苟鍚岀被椤�
Set<String> locNos = new HashSet<>();
locDetlDtos.forEach(dto -> locNos.add(dto.getLocDetl().getLocNo()));
@@ -209,6 +209,7 @@
wrkMast.setExitMk("N"); // 閫�鍑�
wrkMast.setEmptyMk("N"); // 绌烘澘
wrkMast.setLinkMis("N");
+ wrkMast.setPacked(allotNo); // 骞充粨琛ヤ粨鍗曞彿
wrkMast.setAppeUser(userId); // 鎿嶄綔浜哄憳鏁版嵁
wrkMast.setAppeTime(new Date());
wrkMast.setModiUser(userId);
@@ -385,7 +386,7 @@
}
if (!locDetlDtos.isEmpty()) {
// 鍚姩鍑哄簱寮�濮� 107.鐩樼偣鍑哄簱
- stockOut(staNo, locDetlDtos, 107, userId);
+ stockOut(staNo, locDetlDtos, 107, userId, null);
} else {
throw new CoolException("搴撲綅鐗╂枡涓嶅瓨鍦�");
}
--
Gitblit v1.9.1