From 2b078ab36f409a22c1c32b71173106136eda6c53 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期四, 13 十月 2022 15:55:38 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/common/CodeRes.java | 3 +++
src/main/java/com/zy/asrs/service/WrkMastService.java | 2 ++
src/main/java/com/zy/common/web/param/SearchLocParam.java | 2 ++
src/main/java/com/zy/asrs/service/impl/WrkMastServiceImpl.java | 5 +++++
src/main/java/com/zy/asrs/mapper/WrkMastMapper.java | 2 ++
src/main/resources/mapper/WrkMastMapper.xml | 4 ++++
src/main/java/com/zy/common/web/WcsController.java | 33 +++++++++++++++++++--------------
7 files changed, 37 insertions(+), 14 deletions(-)
diff --git a/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java b/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java
index b8147d7..5766e11 100644
--- a/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java
@@ -25,4 +25,6 @@
@Update("update asr_wrk_mast set ste_no = null where wrk_no = #{wrkNo}")
int setSteEmpty(Integer wrkNo);
+ WrkMast selectOfPick(@Param("wrkNo") Integer wrkNo, @Param("ioType") Integer ioType);
+
}
diff --git a/src/main/java/com/zy/asrs/service/WrkMastService.java b/src/main/java/com/zy/asrs/service/WrkMastService.java
index f1a080c..de22e00 100644
--- a/src/main/java/com/zy/asrs/service/WrkMastService.java
+++ b/src/main/java/com/zy/asrs/service/WrkMastService.java
@@ -25,4 +25,6 @@
int getStoreCount(Integer crnNo);
Boolean setSteEmpty(Integer wrkNo);
+
+ WrkMast selectOfPick(Integer wrkNo, Integer ioType);
}
diff --git a/src/main/java/com/zy/asrs/service/impl/WrkMastServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WrkMastServiceImpl.java
index 56a4450..12559a5 100644
--- a/src/main/java/com/zy/asrs/service/impl/WrkMastServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WrkMastServiceImpl.java
@@ -106,4 +106,9 @@
return this.baseMapper.setSteEmpty(wrkNo) > 0;
}
+ @Override
+ public WrkMast selectOfPick(Integer wrkNo, Integer ioType) {
+ return this.baseMapper.selectOfPick(wrkNo, ioType);
+ }
+
}
diff --git a/src/main/java/com/zy/common/CodeRes.java b/src/main/java/com/zy/common/CodeRes.java
index df8f7ce..a69fd59 100644
--- a/src/main/java/com/zy/common/CodeRes.java
+++ b/src/main/java/com/zy/common/CodeRes.java
@@ -12,4 +12,7 @@
String PICK_600 = "600-鎷f枡浠诲姟";
String NO_COMB_700 = "700-璇峰厛缁勬墭";
+ String NONE_MAST_800 = "800-浠诲姟涓㈠け";
+ String NONE_DETL_900 = "900-浠诲姟鏄庣粏涓㈠け";
+
}
diff --git a/src/main/java/com/zy/common/web/WcsController.java b/src/main/java/com/zy/common/web/WcsController.java
index 65d3253..77a1587 100644
--- a/src/main/java/com/zy/common/web/WcsController.java
+++ b/src/main/java/com/zy/common/web/WcsController.java
@@ -90,6 +90,11 @@
case 10://绌烘墭鐩樺叆搴�
dto = emptyPlateIn(param.getSourceStaNo(), locTypeDto, param.getBarcode());
break;
+ case 103:// 鎷f枡鍏ュ簱
+ break;
+ case 107:// 鐩樼偣鍏ュ簱
+ dto = pickWrkPlateIn(param.getWrkNo(), param.getIoType(), param.getSourceStaNo(), locTypeDto);
+ break;
default:
break;
}
@@ -233,21 +238,21 @@
return dto;
}
- /**
- * 闈為�氱敤鎬т唬鐮�,鍙�傜敤浜庤竟閿嬮」鐩�
- * @param locNo
- * @return
- */
- private Integer findSte(String locNo) {
- int i = Integer.parseInt(locNo.substring(0, 2));
- if (i >= 1 && i <= 7){
- return 1;
- } else if (i >= 8 && i <= 14) {
- return 2;
- }else {
- return 3;
+ @Transactional
+ public StartupDto pickWrkPlateIn(Integer wrkNo, Integer ioType, Integer devpNo, LocTypeDto locTypeDto) {
+ WrkMast wrkMast = wrkMastService.selectOfPick(wrkNo, ioType);
+ if (Cools.isEmpty(wrkMast)) {
+ log.error("{}浠诲姟銆恑oType = {}銆戝凡杩囨湡!!!", wrkNo, ioType);
+ throw new CoolException(CodeRes.NONE_MAST_800);
}
-
+ List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
+ if (Cools.isEmpty(wrkDetls)) {
+ throw new CoolException(CodeRes.NONE_DETL_900);
+ }
+ // 妫�绱㈠簱浣�
+ List<String> matnrList = wrkDetls.stream().map(WrkDetl::getMatnr).distinct().collect(Collectors.toList());
+ StartupDto dto = commonService.getLocNo(1, ioType, devpNo, matnrList, locTypeDto,0);
+ return dto; // 搴撲綅鍙凤紝 鍫嗗灈鏈�
}
}
diff --git a/src/main/java/com/zy/common/web/param/SearchLocParam.java b/src/main/java/com/zy/common/web/param/SearchLocParam.java
index 1a170ce..df746f0 100644
--- a/src/main/java/com/zy/common/web/param/SearchLocParam.java
+++ b/src/main/java/com/zy/common/web/param/SearchLocParam.java
@@ -8,6 +8,8 @@
@Data
public class SearchLocParam {
+ private Integer wrkNo;
+
private Integer ioType;
private Integer sourceStaNo;
diff --git a/src/main/resources/mapper/WrkMastMapper.xml b/src/main/resources/mapper/WrkMastMapper.xml
index ea1dfe0..70dd04c 100644
--- a/src/main/resources/mapper/WrkMastMapper.xml
+++ b/src/main/resources/mapper/WrkMastMapper.xml
@@ -96,4 +96,8 @@
and wrk_sts < 17
</select>
+ <select id="selectOfPick" resultMap="BaseResultMap">
+ select top 1 * from asr_wrk_mast where wrk_no=#{wrkNo} and wrk_sts=17 and io_type = #{ioType}
+ </select>
+
</mapper>
--
Gitblit v1.9.1