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