From 149c89d3dafac946ea769367b5717bdcd0a6c1f8 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@63.com>
Date: 星期一, 28 三月 2022 16:13:00 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/WorkService.java | 4 ++
src/main/java/com/zy/asrs/utils/VersionUtils.java | 8 +++
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 87 ++++++++++++++++++++++++++++++++++++++++---
src/main/java/com/zy/asrs/controller/OutController.java | 11 ++++-
4 files changed, 101 insertions(+), 9 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/OutController.java b/src/main/java/com/zy/asrs/controller/OutController.java
index d7deb51..4d5bf1f 100644
--- a/src/main/java/com/zy/asrs/controller/OutController.java
+++ b/src/main/java/com/zy/asrs/controller/OutController.java
@@ -5,6 +5,7 @@
import com.core.common.BaseRes;
import com.core.common.Cools;
import com.core.common.R;
+import com.zy.asrs.entity.BasDevp;
import com.zy.asrs.entity.LocDetl;
import com.zy.asrs.entity.OrderDetl;
import com.zy.asrs.entity.result.StoPreTab;
@@ -37,6 +38,11 @@
private LocMastService locMastService;
@Autowired
private StaDescService staDescService;
+ @Autowired
+ private WorkService workService;
+ @Autowired
+ private BasDevpService basDevpService;
+
// @PostMapping("/out/pakout/preview/auth")
// public R pakoutPreview(@RequestBody List<Long> ids) {
@@ -124,8 +130,9 @@
}
// -----------------------------------------------------------------------------------------------
for (TaskDto taskDto : taskDtos) {
-
-
+ // 鐩爣绔欑偣鐘舵�佹娴�
+ BasDevp staNo = basDevpService.checkSiteStatus(taskDto.getStaNo());
+// workService.stockOut();
}
return R.ok();
diff --git a/src/main/java/com/zy/asrs/service/WorkService.java b/src/main/java/com/zy/asrs/service/WorkService.java
index f639fba..2e2b522 100644
--- a/src/main/java/com/zy/asrs/service/WorkService.java
+++ b/src/main/java/com/zy/asrs/service/WorkService.java
@@ -6,6 +6,8 @@
import com.zy.asrs.entity.param.LocDetlAdjustParam;
import com.zy.asrs.entity.param.StockOutParam;
import com.zy.common.model.LocDetlDto;
+import com.zy.common.model.LocDto;
+import com.zy.common.model.TaskDto;
import java.util.List;
@@ -30,6 +32,8 @@
*/
void stockOut(BasDevp staNo, List<LocDetlDto> locDetls, Integer ioType, Long userId);
+ void stockOut(BasDevp staNo, List<LocDto> locDtos, Long userId);
+
/**
* 绌烘澘鍏ュ簱
* @return 搴撲綅鍙�
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 91d8964..8a36745 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -168,6 +168,7 @@
@Override
@Transactional
public void stockOut(BasDevp staNo, List<LocDetlDto> locDetlDtos, Integer ioType, Long userId) {
+ Date now = new Date();
// 鍚堝苟鍚岀被椤�
Set<String> locNos = new HashSet<>();
locDetlDtos.forEach(dto -> locNos.add(dto.getLocDetl().getLocNo()));
@@ -206,7 +207,7 @@
// 鐢熸垚宸ヤ綔妗�
WrkMast wrkMast = new WrkMast();
wrkMast.setWrkNo(workNo);
- wrkMast.setIoTime(new Date());
+ wrkMast.setIoTime(now);
wrkMast.setWrkSts(11L); // 宸ヤ綔鐘舵�侊細11.鐢熸垚鍑哄簱ID
wrkMast.setIoType(ioType); // 鍏ュ嚭搴撶姸鎬�
wrkMast.setIoPri(13D); // 浼樺厛绾э細13
@@ -220,9 +221,9 @@
wrkMast.setEmptyMk("N"); // 绌烘澘
wrkMast.setLinkMis("N");
wrkMast.setAppeUser(userId); // 鎿嶄綔浜哄憳鏁版嵁
- wrkMast.setAppeTime(new Date());
+ wrkMast.setAppeTime(now);
wrkMast.setModiUser(userId);
- wrkMast.setModiTime(new Date());
+ wrkMast.setModiTime(now);
if (!wrkMastService.insert(wrkMast)) {
throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐ワ紝鍑哄簱搴撲綅鍙凤細"+dto.getLocNo());
}
@@ -236,9 +237,9 @@
Double anfme = ioType==101?detlDto.getLocDetl().getAnfme():detlDto.getCount();
wrkDetl.setAnfme(anfme); // 鏁伴噺
VersionUtils.setWrkDetl(wrkDetl, detlDto.getLocDetl()); // 鐗堟湰鎺у埗
- wrkDetl.setAppeTime(new Date());
+ wrkDetl.setAppeTime(now);
wrkDetl.setAppeUser(userId);
- wrkDetl.setModiTime(new Date());
+ wrkDetl.setModiTime(now);
wrkDetl.setModiUser(userId);
if (!wrkDetlService.insert(wrkDetl)) {
throw new CoolException("淇濆瓨宸ヤ綔妗f槑缁嗗け璐�");
@@ -249,7 +250,7 @@
if (locMast.getLocSts().equals("F")) {
locMast.setLocSts(ioType==101?"R":"P");
locMast.setModiUser(userId);
- locMast.setModiTime(new Date());
+ locMast.setModiTime(now);
if (!locMastService.updateById(locMast)) {
throw new CoolException("棰勭害搴撲綅鐘舵�佸け璐ワ紝搴撲綅鍙凤細"+dto.getLocNo());
}
@@ -261,6 +262,80 @@
@Override
@Transactional
+ public void stockOut(BasDevp staNo, List<LocDto> locDtos, Long userId) {
+ Date now = new Date();
+ for (LocDto locDto : locDtos) {
+ // 鑾峰彇搴撲綅
+ LocMast locMast = locMastService.selectById(locDto.getLocNo());
+ // 鑾峰彇璺緞
+ Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
+ .eq("type_no", ioType)
+ .eq("stn_no", staNo.getDevNo())
+ .eq("crn_no", locMast.getCrnNo());
+ StaDesc staDesc = staDescService.selectOne(wrapper);
+ if (Cools.isEmpty(staDesc)) {
+ throw new CoolException("鍑哄簱璺緞涓嶅瓨鍦�");
+ }
+ // 鐢熸垚宸ヤ綔鍙�
+ int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(ioType));
+ // 鐢熸垚宸ヤ綔妗�
+ WrkMast wrkMast = new WrkMast();
+ wrkMast.setWrkNo(workNo);
+ wrkMast.setIoTime(now);
+ wrkMast.setWrkSts(11L); // 宸ヤ綔鐘舵�侊細11.鐢熸垚鍑哄簱ID
+ wrkMast.setIoType(ioType); // 鍏ュ嚭搴撶姸鎬�
+ wrkMast.setIoPri(13D); // 浼樺厛绾э細13
+ wrkMast.setCrnNo(locMast.getCrnNo());
+ wrkMast.setSourceStaNo(staDesc.getCrnStn()); // 婧愮珯
+ wrkMast.setStaNo(staDesc.getStnNo()); // 鐩爣绔�
+ wrkMast.setSourceLocNo(locDto.getLocNo()); // 婧愬簱浣�
+ wrkMast.setFullPlt("Y"); // 婊℃澘锛歒
+ wrkMast.setPicking("N"); // 鎷f枡
+ wrkMast.setExitMk("N"); // 閫�鍑�
+ wrkMast.setEmptyMk("N"); // 绌烘澘
+ wrkMast.setLinkMis("N");
+ wrkMast.setAppeUser(userId); // 鎿嶄綔浜哄憳鏁版嵁
+ wrkMast.setAppeTime(now);
+ wrkMast.setModiUser(userId);
+ wrkMast.setModiTime(now);
+ if (!wrkMastService.insert(wrkMast)) {
+ throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐ワ紝鍑哄簱搴撲綅鍙凤細"+locDto.getLocNo());
+ }
+ // 鐢熸垚宸ヤ綔妗f槑缁�
+ for (LocDetlDto detlDto : dto.getLocDetlDtos()) {
+ // 鍑哄簱鏃讹紝鏁伴噺涓�0鐨勭洿鎺ュ拷鐣�
+ if (detlDto.getCount()==null || detlDto.getCount() <= 0.0D) {continue;}
+ WrkDetl wrkDetl = new WrkDetl();
+ wrkDetl.setWrkNo(workNo);
+ wrkDetl.setIoTime(new Date());
+ Double anfme = ioType==101?detlDto.getLocDetl().getAnfme():detlDto.getCount();
+ wrkDetl.setAnfme(anfme); // 鏁伴噺
+ VersionUtils.setWrkDetl(wrkDetl, detlDto.getLocDetl()); // 鐗堟湰鎺у埗
+ wrkDetl.setAppeTime(now);
+ wrkDetl.setAppeUser(userId);
+ wrkDetl.setModiTime(now);
+ wrkDetl.setModiUser(userId);
+ if (!wrkDetlService.insert(wrkDetl)) {
+ throw new CoolException("淇濆瓨宸ヤ綔妗f槑缁嗗け璐�");
+ }
+ }
+ // 淇敼搴撲綅鐘舵��: F.鍦ㄥ簱 ====>>> R.鍑哄簱棰勭害/P.鎷f枡/鐩樼偣/骞舵澘鍑哄簱涓�
+ locMast = locMastService.selectById(locDto.getLocNo());
+ if (locMast.getLocSts().equals("F")) {
+ locMast.setLocSts(ioType==101?"R":"P");
+ locMast.setModiUser(userId);
+ locMast.setModiTime(now);
+ if (!locMastService.updateById(locMast)) {
+ throw new CoolException("棰勭害搴撲綅鐘舵�佸け璐ワ紝搴撲綅鍙凤細"+locDto.getLocNo());
+ }
+ } else {
+ throw new CoolException(locDto.getLocNo() + "搴撲綅涓嶆槸鍦ㄥ簱鐘舵��");
+ }
+ }
+ }
+
+ @Override
+ @Transactional
public String emptyPlateIn(Integer devpNo, Long userId) {
// 婧愮珯鐐圭姸鎬佹娴�
BasDevp sourceStaNo = basDevpService.checkSiteStatus(devpNo, true);
diff --git a/src/main/java/com/zy/asrs/utils/VersionUtils.java b/src/main/java/com/zy/asrs/utils/VersionUtils.java
index b89240c..55377b5 100644
--- a/src/main/java/com/zy/asrs/utils/VersionUtils.java
+++ b/src/main/java/com/zy/asrs/utils/VersionUtils.java
@@ -26,7 +26,9 @@
public static void setWrkDetl(WrkDetl wrkDetl, LocDetl locDetl) {
wrkDetl.setMatnr(locDetl.getMatnr()); // 鐗╂枡缂栧彿
- wrkDetl.setMaktx(locDetl.getMaktx()); // 鐗╂枡鎻忚堪
+ wrkDetl.setMaktx(locDetl.getMaktx()); // 鐗╂枡鎻忚堪w
+ wrkDetl.setBatch(locDetl.getBatch());
+ wrkDetl.setOrderNo(locDetl.getOrderNo());
wrkDetl.setLgnum(locDetl.getLgnum()); // 瑙勬牸
wrkDetl.setType(locDetl.getType()); // 鍨嬪彿
wrkDetl.setColor(locDetl.getColor()); // 鏉$爜
@@ -54,6 +56,8 @@
public static void setLocDetl(LocDetl locDetl, WrkDetl wrkDetl) {
locDetl.setMatnr(wrkDetl.getMatnr()); // 鐗╂枡缂栧彿
locDetl.setMaktx(wrkDetl.getMaktx()); // 鐗╂枡鎻忚堪
+ locDetl.setBatch(wrkDetl.getBatch());
+ locDetl.setOrderNo(wrkDetl.getOrderNo());
locDetl.setLgnum(wrkDetl.getLgnum()); // 瑙勬牸
locDetl.setType(wrkDetl.getType()); // 鍨嬪彿
locDetl.setColor(wrkDetl.getColor()); // 鏉$爜
@@ -88,6 +92,8 @@
public static void setWaitPakIn(WaitPakin waitPakIn, OrderDetl orderDetl) {
waitPakIn.setMatnr(orderDetl.getMatnr()); // 鐗╂枡缂栧彿
waitPakIn.setMaktx(orderDetl.getMaktx()); // 鐗╂枡鎻忚堪
+ waitPakIn.setBatch(orderDetl.getBatch());
+ waitPakIn.setOrderNo(orderDetl.getOrderNo());
waitPakIn.setLgnum(orderDetl.getSpecs()); // 瑙勬牸
waitPakIn.setType(orderDetl.getModel()); // 鍨嬪彿
waitPakIn.setSupplier(orderDetl.getSupplier()); // 鎵瑰彿
--
Gitblit v1.9.1