From ee052d69dfec198229d541c3e39f45382662983d Mon Sep 17 00:00:00 2001 From: pang.jiabao <pang_jiabao@163.com> Date: 星期五, 07 二月 2025 08:16:33 +0800 Subject: [PATCH] 空托盘出库 --- src/main/java/com/zy/asrs/service/WorkService.java | 2 src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 2 src/main/resources/mapper/LocMastMapper.xml | 17 ++++++++ src/main/java/com/zy/asrs/mapper/LocMastMapper.java | 8 ++++ src/main/java/com/zy/common/web/WcsController.java | 39 ++++++++++++++----- 5 files changed, 56 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/zy/asrs/mapper/LocMastMapper.java b/src/main/java/com/zy/asrs/mapper/LocMastMapper.java index f179d73..fcabff3 100644 --- a/src/main/java/com/zy/asrs/mapper/LocMastMapper.java +++ b/src/main/java/com/zy/asrs/mapper/LocMastMapper.java @@ -62,4 +62,12 @@ * @return 搴撲綅鍙� */ String findFirstFrozenLocNo(@Param("locNoList") List<String> locNoList); + + /** + * 鏍规嵁鎸囧畾搴撲綅鎺掑彿鍜屽簱浣嶇姸鎬佽幏鍙栦竴涓弧瓒虫潯浠剁殑搴撲綅 + * @param rowList 鎺掑彿闆嗗悎(涓虹┖鍒欐煡璇㈡墍鏈夋帓) + * @param locType 绌烘嫋绫诲瀷 + * @return 搴撲綅 + */ + LocMast queryLocMasterByLocStsAndRow(@Param("rowList") List<Integer> rowList,@Param("locType") String locType); } diff --git a/src/main/java/com/zy/asrs/service/WorkService.java b/src/main/java/com/zy/asrs/service/WorkService.java index 8d34c6e..c3a472c 100644 --- a/src/main/java/com/zy/asrs/service/WorkService.java +++ b/src/main/java/com/zy/asrs/service/WorkService.java @@ -58,7 +58,7 @@ * @param param * @return */ - public WrkMast emptyPlateOut(EmptyPlateOutParam param); + WrkMast emptyPlateOut(EmptyPlateOutParam param); /** * 鐩樼偣鍑哄簱 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 7d91a2d..b2146e7 100644 --- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java @@ -621,7 +621,7 @@ } for (String locNo : param.getLocNos()) { // 鑾峰彇宸ヤ綔鍙� - int workNo = commonService.getWorkNo(0); + int workNo = commonService.getWorkNo(2); // 鑾峰彇搴撲綅 LocMast locMast = locMastService.selectById(locNo); if (Cools.isEmpty(locMast)) { diff --git a/src/main/java/com/zy/common/web/WcsController.java b/src/main/java/com/zy/common/web/WcsController.java index 37a43f4..059a759 100644 --- a/src/main/java/com/zy/common/web/WcsController.java +++ b/src/main/java/com/zy/common/web/WcsController.java @@ -8,6 +8,7 @@ import com.zy.asrs.entity.*; import com.zy.asrs.entity.param.EmptyPlateOutParam; import com.zy.asrs.entity.result.FindLocNoAttributeVo; +import com.zy.asrs.mapper.LocMastMapper; import com.zy.asrs.service.*; import com.zy.common.CodeRes; import com.zy.common.model.LocTypeDto; @@ -19,9 +20,8 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; +import javax.annotation.Resource; +import java.util.*; import java.util.stream.Collectors; /** @@ -50,6 +50,9 @@ private RowLastnoService rowLastnoService; @Autowired private WorkService workService; + + @Resource + private LocMastMapper locMastMapper; @PostMapping("/pakin/loc/v1") @ResponseBody @@ -142,15 +145,31 @@ @PostMapping("auto/emptyOut/v1") @ResponseBody - public R autoEmptyOut(){ - LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>() - .eq("loc_sts", "D")); - if (Cools.isEmpty(locMast)) { - return R.error("搴撳瓨娌℃湁绌烘澘"); + public R autoEmptyOut(@RequestBody Map<String,String> emptyPalletSite){ + // 绌烘墭鐩樼被鍨� + String type = emptyPalletSite.get("flag"); + // 鍑哄簱绔欑偣 + Integer site = Integer.valueOf(emptyPalletSite.get("site")); + + LocMast locMast; + + // 鍏堟壘娴呭簱浣� + locMast = locMastMapper.queryLocMasterByLocStsAndRow(Arrays.asList(2, 3), type); + + // 娴呭簱浣嶆病鏈夊垯鏌ヨ鎵�鏈� + if (locMast == null) { + locMast = locMastMapper.queryLocMasterByLocStsAndRow(null, type); } + + if (locMast == null) { + return R.error("搴撳瓨娌℃湁"+type+"绫诲瀷绌烘墭鐩�"); + } + + String locNo = locMast.getLocNo(); + EmptyPlateOutParam emptyPlateOutParam = new EmptyPlateOutParam(); - emptyPlateOutParam.setOutSite(12); - emptyPlateOutParam.setLocNos(new ArrayList<String>(){{add(locMast.getLocNo()+"");}}); + emptyPlateOutParam.setOutSite(site); + emptyPlateOutParam.setLocNos(new ArrayList<String>(){{add(locNo);}}); WrkMast wrkMast = workService.emptyPlateOut(emptyPlateOutParam); return R.ok(!Cools.isEmpty(wrkMast)? R.ok("鑷姩绌烘墭鍑哄簱鎴愬姛,宸ヤ綔鍙�:" + wrkMast.getWrkNo()) : R.error("鐢熸垚鑷姩绌烘墭鍑哄簱澶辫触")); } diff --git a/src/main/resources/mapper/LocMastMapper.xml b/src/main/resources/mapper/LocMastMapper.xml index cae15d0..0a468f8 100644 --- a/src/main/resources/mapper/LocMastMapper.xml +++ b/src/main/resources/mapper/LocMastMapper.xml @@ -203,5 +203,22 @@ #{item} </foreach> </select> + <select id="queryLocMasterByLocStsAndRow" resultMap="BaseResultMap"> + select + top 1 * + from + asr_loc_mast alm + where + alm.loc_sts = 'D' + and loc_type = #{locType} + <if test="rowList != null and !rowList.isEmpty()"> + and alm.row1 in + <foreach collection="rowList" item="item" open="(" close=")" separator=","> + #{item} + </foreach> + </if> + order by + lev1,bay1,row1 + </select> </mapper> -- Gitblit v1.9.1