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