From f08dd93e49e8461f362c8f45f17fe10e0fbdebec Mon Sep 17 00:00:00 2001
From: lty <876263681@qq.com>
Date: 星期一, 12 一月 2026 18:54:58 +0800
Subject: [PATCH] #新增和得码入库流程,渝程进仓后续下发货主转换
---
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 108 +++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 74 insertions(+), 34 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
index 1f6366c..dfe6818 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -29,6 +29,7 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import org.springframework.transaction.interceptor.TransactionAspectSupport;
import javax.annotation.Resource;
import java.util.*;
@@ -872,7 +873,7 @@
agvBindCtnrAndBinParam.setStgBinCode(basAgvLocNoSou.getAgvLocNo());
agvBindCtnrAndBinParam.setReqCode(String.valueOf(System.currentTimeMillis()));
agvBindCtnrAndBinParam.setIndBind("1");
- ReturnT<String> resultBind = new PostMesDataUtils().postMesDataArmGrating("AGV瀹瑰櫒瑙g粦",
+ ReturnT<String> resultBind = new PostMesDataUtils().postMesDataArmGrating("AGV瀹瑰櫒缁戝畾",
AgvConstant.AGV_URL+"/"+AgvConstant.AGV_1LBind,AgvConstant.getAGVADAPTOR(1), agvBindCtnrAndBinParam);
if(resultBind.getCode() != 200){
throw new CoolException("agv鍏ュ簱缁戝畾澶辫触");
@@ -888,7 +889,8 @@
@Override
@Transactional
- public void combAuto(CombParam param, Long userId) {
+ public void
+ combAuto(CombParam param, Long userId) {
if (Cools.isEmpty(param.getBarcode(), param.getCombMats())) {
throw new CoolException(BaseRes.PARAM);
}
@@ -916,44 +918,37 @@
}
Date now = new Date();
-
+ boolean result = false;
String orderNo = null;
+ String orderNo1 = null;
for (CombParam.CombMat combMat : param.getCombMats()) {
if(combMat.getSupplier().equals("1")){
- List<OrderDetlPakin> orderDetlPakins = orderDetlPakinService.selectList(new EntityWrapper<OrderDetlPakin>()
+ List<OrderDetlPakin> orderDetlPakins2 = orderDetlPakinService.selectList(new EntityWrapper<OrderDetlPakin>()
.eq("matnr", combMat.getMatnr()).eq("box_type3", combMat.getOrderNo())
- .eq("standby1", combMat.getStandby1()).eq("standby2", combMat.getStandby2())
- .eq("standby3", combMat.getStandby3()).eq("box_type2","BU-00001"));//1鏃舵绱㈠拰寰�
- if (orderDetlPakins.size() > 0) {
- orderNo = orderDetlPakins.get(0).getOrderNo();
- combMat.setBoxType1(orderDetlPakins.get(0).getBoxType1());
- combMat.setBoxType2(orderDetlPakins.get(0).getBoxType2());
- combMat.setBoxType3(orderDetlPakins.get(0).getBoxType3());
- combMat.setMemo(orderDetlPakins.get(0).getMemo());
- combMat.setSupp(orderDetlPakins.get(0).getSupp());
- combMat.setSuppCode(orderDetlPakins.get(0).getSuppCode());
- combMat.setManu(orderDetlPakins.get(0).getManu());//浠撳簱缂栫爜
+ .eq("box_type2","BU-00001"));
+ if (orderDetlPakins2.size() > 0) {
+ orderNo1 = orderDetlPakins2.get(0).getOrderNo();
} else {
throw new CoolException("鏈煡璇㈠埌鐩稿叧璁㈠崟===>>" + param.getBarcode());
}
- }else{
- //0
- List<OrderDetlPakin> orderDetlPakins = orderDetlPakinService.selectList(new EntityWrapper<OrderDetlPakin>()
- .eq("matnr", combMat.getMatnr()).eq("box_type3", combMat.getOrderNo())
- .eq("standby1", combMat.getStandby1()).eq("standby2", combMat.getStandby2())
- .eq("standby3", combMat.getStandby3()).eq("box_type2","shyucheng.test"));
- if (orderDetlPakins.size() > 0) {
- orderNo = orderDetlPakins.get(0).getOrderNo();
- combMat.setBoxType1(orderDetlPakins.get(0).getBoxType1());
- combMat.setBoxType2(orderDetlPakins.get(0).getBoxType2());
- combMat.setBoxType3(orderDetlPakins.get(0).getBoxType3());
- combMat.setMemo(orderDetlPakins.get(0).getMemo());
- combMat.setSupp(orderDetlPakins.get(0).getSupp());
- combMat.setSuppCode(orderDetlPakins.get(0).getSuppCode());
- combMat.setManu(orderDetlPakins.get(0).getManu());//浠撳簱缂栫爜
- } else {
- throw new CoolException("鏈煡璇㈠埌鐩稿叧璁㈠崟===>>" + param.getBarcode());
- }
+ result = true;
+ }
+ //0
+ List<OrderDetlPakin> orderDetlPakins = orderDetlPakinService.selectList(new EntityWrapper<OrderDetlPakin>()
+ .eq("matnr", combMat.getMatnr()).eq("box_type3", combMat.getOrderNo())
+ .eq("standby1", combMat.getStandby1()).eq("standby2", combMat.getStandby2())
+ .eq("standby3", combMat.getStandby3()));
+ if (orderDetlPakins.size() > 0) {
+ orderNo = orderDetlPakins.get(0).getOrderNo();
+ combMat.setBoxType1(orderDetlPakins.get(0).getBoxType1());
+ combMat.setBoxType2(orderDetlPakins.get(0).getBoxType2());
+ combMat.setBoxType3(orderDetlPakins.get(0).getBoxType3());
+ combMat.setMemo(orderDetlPakins.get(0).getMemo());
+ combMat.setSupp(orderDetlPakins.get(0).getSupp());
+ combMat.setSuppCode(orderDetlPakins.get(0).getSuppCode());
+ combMat.setManu(orderDetlPakins.get(0).getManu());//浠撳簱缂栫爜
+ } else {
+ throw new CoolException("鏈煡璇㈠埌鐩稿叧璁㈠崟===>>" + param.getBarcode());
}
}
@@ -964,10 +959,18 @@
if (Cools.isEmpty(order) || order.getSettle() > 2) {
throw new CoolException("鍗曟嵁缂栧彿宸茶繃鏈�");
}
+ Order order1 = orderService.selectByNo(orderNo);
+ if (Cools.isEmpty(order1) || order1.getSettle() > 2) {
+ throw new CoolException("鍗曟嵁缂栧彿宸茶繃鏈�");
+ }
+ if(result){
+ order1.setPayType(1);// y->h
+ order1.setSalesman(orderNo1);
+ orderService.updateById(order1);
+ }
// 鐢熸垚鍏ュ簱閫氱煡妗�
List<DetlDto> detlDtos = new ArrayList<>();
param.getCombMats().forEach(elem -> {
-
// 璁㈠崟鏄庣粏鏁伴噺鏍¢獙
// OrderDetl orderDetl = orderDetlService.selectItem(order.getId(), elem.getMatnr(), elem.getBatch());
OrderDetl orderDetl = OrderInAndOutUtil.selectItem(Boolean.TRUE, order.getId(), elem.getMatnr(), elem.getBatch(),elem.getBrand(),elem.getStandby1(),elem.getStandby2(),elem.getStandby3(),
@@ -1678,4 +1681,41 @@
throw new CoolException(locDetl.getLocNo() + "搴撲綅涓嶆槸鍦ㄥ簱鐘舵��");
}
}
+ @Override
+ public void agvUnlockLoc(AgvUnlockLoc agvUnlockLoc){
+ Date now = new Date();
+ if(agvUnlockLoc.getFloorNo().equals(1)){
+ LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no",agvUnlockLoc.getPositionCode()));
+ if(locMast != null){
+ locMast.setLocSts("O");
+ locMast.setBarcode("");
+ locMast.setIoTime(now);
+ locMast.setModiTime(now);
+ if (!locMastService.updateById(locMast)) {
+ throw new CoolException(agvUnlockLoc.getPositionCode() + "搴撲綅涓嶆槸鍦ㄥ簱鐘舵��");
+ }
+ }
+ }else{
+ LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no",agvUnlockLoc.getPositionCode()));
+ AgvBindCtnrAndBinTwoParam agvBindCtnrAndBinTwoParam = new AgvBindCtnrAndBinTwoParam();
+ agvBindCtnrAndBinTwoParam.setReqCode(String.valueOf(snowflakeIdWorker.nextId()));
+ agvBindCtnrAndBinTwoParam.setPodcode(agvUnlockLoc.getPodcode());
+ agvBindCtnrAndBinTwoParam.setPositionCode(agvUnlockLoc.getPositionCode());
+ agvBindCtnrAndBinTwoParam.setIndBind("0");;
+ ReturnT<String> resultBind = new PostMesDataUtils().postMesDataArmGrating("AGV搴撲綅瑙g粦",
+ AgvConstant.AGV_URL+"/"+AgvConstant.AGV_hikRpcService,AgvConstant.getAGVADAPTOR(2), agvBindCtnrAndBinTwoParam);
+ if (resultBind.getCode()!=1){
+ if(locMast != null){
+ locMast.setLocSts("O");
+ locMast.setBarcode("");
+ locMast.setIoTime(now);
+ locMast.setModiTime(now);
+ if (!locMastService.updateById(locMast)) {
+ throw new CoolException(agvUnlockLoc.getPositionCode() + "搴撲綅涓嶆槸鍦ㄥ簱鐘舵��");
+ }
+ }
+ }
+ }
+
+ }
}
--
Gitblit v1.9.1