From 253bbfb87d8e214c9e64d9534a58ef22711e97ca Mon Sep 17 00:00:00 2001 From: whycq <913841844@qq.com> Date: 星期五, 27 十二月 2024 08:16:17 +0800 Subject: [PATCH] #灌装线回库接口 --- src/main/resources/mapper/WrkDetlMapper.xml | 7 +++ src/main/java/com/zy/asrs/mapper/WrkDetlMapper.java | 3 + src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java | 5 ++ src/main/java/com/zy/common/web/WcsController.java | 72 ++++++++++++++++++++++++++++++++++++ src/main/java/com/zy/asrs/service/WrkDetlService.java | 2 + 5 files changed, 89 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/zy/asrs/mapper/WrkDetlMapper.java b/src/main/java/com/zy/asrs/mapper/WrkDetlMapper.java index 97d48d8..7baa1e4 100644 --- a/src/main/java/com/zy/asrs/mapper/WrkDetlMapper.java +++ b/src/main/java/com/zy/asrs/mapper/WrkDetlMapper.java @@ -6,6 +6,7 @@ import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; +import java.util.Date; import java.util.List; @Mapper @@ -23,4 +24,6 @@ int updateInspect( @Param("wrkNo")Integer wrkNo, @Param("matnr")String matnr, @Param("batch")String batch); List<WrkDetl> selectPakoutQuery(@Param("staNo")Integer staNo, @Param("matnr")String matnr); + + int updateIoTime(@Param("workNo") Integer workNo, @Param("ioTime") Date ioTime); } diff --git a/src/main/java/com/zy/asrs/service/WrkDetlService.java b/src/main/java/com/zy/asrs/service/WrkDetlService.java index ede2552..136b447 100644 --- a/src/main/java/com/zy/asrs/service/WrkDetlService.java +++ b/src/main/java/com/zy/asrs/service/WrkDetlService.java @@ -21,4 +21,6 @@ List<WrkDetl> selectPakoutQuery(Integer staNo, String matnr); + boolean updateIoTime(Integer workNo, Date ioTime); + } diff --git a/src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java index 196874a..4c6cd21 100644 --- a/src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java @@ -79,4 +79,9 @@ public List<WrkDetl> selectPakoutQuery(Integer staNo, String matnr) { return this.baseMapper.selectPakoutQuery(staNo, matnr); } + + @Override + public boolean updateIoTime(Integer workNo, Date ioTime) { + return this.baseMapper.updateIoTime(workNo, ioTime) > 0; + } } diff --git a/src/main/java/com/zy/common/web/WcsController.java b/src/main/java/com/zy/common/web/WcsController.java index da45692..a2a8fa1 100644 --- a/src/main/java/com/zy/common/web/WcsController.java +++ b/src/main/java/com/zy/common/web/WcsController.java @@ -56,6 +56,10 @@ private BasCrnpService basCrnpService; @Autowired private StaDescService staDescService; + @Autowired + private WrkMastLogService wrkMastLogService; + @Autowired + private WrkDetlLogService wrkDetlLogService; @PostMapping("/pakin/loc/v1") @ResponseBody @@ -420,4 +424,72 @@ throw new CoolException(tarLoc.getLocNo() + "搴撲綅涓嶆槸鍦ㄥ簱鐘舵��"); } } + @PostMapping("/process/in/loc/v1") + @ResponseBody + @Transactional + public synchronized R processInLoc(@RequestBody SearchLocParam param){ + log.info("鐏岃绾挎敹鍒癢CS鍏ュ簱鎺ュ彛璇锋眰====>>鍏ュ弬:{}", param); + WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>() + .eq("barcode", param.getBarcode()) + .eq("io_type", 105) + .eq("wrk_sts", 14)); + if (Cools.isEmpty(wrkMast)) { + log.info("鏌ヨ涓嶅埌璇ユ墭鐩樼爜鐨勭綈瑁呭嚭搴撲换鍔★紝鎵樼洏鐮佷綅{" + param.getBarcode() + "}" ); + throw new CoolException("鏌ヨ涓嶅埌璇ユ墭鐩樼爜鐨勭綈瑁呭嚭搴撲换鍔★紝鎵樼洏鐮佷綅{" + param.getBarcode() + "}" ); + } + // 鑾峰彇鐩爣绔� + Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>() + .eq("type_no", 55) + .eq("stn_no", 2106) + .eq("crn_no", wrkMast.getCrnNo()); + StaDesc staDesc = staDescService.selectOne(wrapper); + if (Cools.isEmpty(staDesc)) { + throw new CoolException("鍏ュ簱璺緞涓嶅瓨鍦紒"); + } + try { + // 淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。 + if (!wrkMastLogService.save(wrkMast.getWrkNo())) { + throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。澶辫触"); + } + // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗� + if (!wrkDetlLogService.save(wrkMast.getWrkNo())) { + throw new CoolException("淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗eけ璐�"); + } + Date now = new Date(); + // 鍫嗗灈鏈虹珯鐐�(鐩爣绔�) + Integer staNo = staDesc.getCrnStn(); + // 鏇存柊宸ヤ綔妗f暟鎹姸鎬� + wrkMast.setIoTime(now); + wrkMast.setIoType(55); + wrkMast.setWrkSts(2L); + wrkMast.setSourceStaNo(2106); + wrkMast.setStaNo(staNo); + wrkMast.setLocNo(wrkMast.getSourceLocNo()); + wrkMast.setSourceLocNo(""); + wrkMast.setModiTime(now); + if (!wrkMastService.updateById(wrkMast)) { + throw new CoolException("鏇存柊宸ヤ綔妗f暟鎹姸鎬佸け璐�"); + } + // 鏇存柊鏄庣粏妗o_time (鍘嗗彶妗e叧鑱斾娇鐢級 + wrkDetlService.updateIoTime(wrkMast.getWrkNo(), now); + // 淇敼搴撲綅鐘舵�� Q.鎷f枡/鐩樼偣/骞舵澘鍐嶅叆搴� + LocMast locMast = locMastService.selectById(wrkMast.getLocNo()); + locMast.setLocSts("Q"); + locMast.setModiTime(new Date()); + if (!locMastService.updateById(locMast)) { + throw new CoolException("淇敼搴撲綅鐘舵�佸け璐�"); + } + + } catch (Exception e) { + throw new CoolException("鍏ュ簱澶辫触锛�"); + } + StartupDto dto = new StartupDto(); + dto.setWorkNo(wrkMast.getWrkNo()); + dto.setCrnNo(wrkMast.getCrnNo()); + dto.setSourceStaNo(wrkMast.getSourceStaNo()); + dto.setStaNo(wrkMast.getStaNo()); + dto.setLocNo(wrkMast.getLocNo()); + log.info("WCS鍏ュ簱鎺ュ彛杩斿弬:{},鎵樼洏鐮�:{}", dto, param.getBarcode()); + return R.ok().add(dto); + } } diff --git a/src/main/resources/mapper/WrkDetlMapper.xml b/src/main/resources/mapper/WrkDetlMapper.xml index be7898e..dc4737a 100644 --- a/src/main/resources/mapper/WrkDetlMapper.xml +++ b/src/main/resources/mapper/WrkDetlMapper.xml @@ -111,4 +111,11 @@ and awd.matnr + '-' + awd.batch = #{matnr} </select> + <update id="updateIoTime"> + update asr_wrk_detl + set io_time = #{ioTime} + where 1=1 + and wrk_no = #{workNo} + </update> + </mapper> -- Gitblit v1.9.1