From cd8ab30f720cd8ab32062024b00c7fe3294a56a4 Mon Sep 17 00:00:00 2001
From: zyx <zyx123456>
Date: 星期一, 27 五月 2024 16:28:23 +0800
Subject: [PATCH] ERP接口
---
src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java | 71 ++++++++++++++++++++++++++---------
1 files changed, 52 insertions(+), 19 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java
index 1ddc3e9..a48fad4 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java
@@ -70,19 +70,24 @@
}
param.setContainerType(Short.valueOf(param.getBarcode().substring(0,2)));
-// //妫�鏌ユ槸鍚﹀凡瀛樺湪鐩稿悓鐨勬墭鐩樻潯鐮侊紝瀛樺湪鍒欐姏鍑哄紓甯�
+// //妫�鏌ユ槸鍚﹀凡瀛樺湪鐩稿悓鐨勮揣鏋舵潯鐮侊紝瀛樺湪鍒欐姏鍑哄紓甯�
// if (agvWaitPakinService.selectCount(new EntityWrapper<AgvWaitPakin>().eq("supp_code", param.getBarcode())) > 0) {
// throw new CoolException(param.getBarcode() + "鏂欐兂鐮佸凡瀛樺湪AGV鍏ュ簱閫氱煡妗d腑");
// }
- //妫�鏌ュ簱瀛樻槸鍚︽湁鐩稿悓鏂欑锛屽瓨鍦ㄥ垯鎶涘嚭寮傚父
+ //妫�鏌ュ簱瀛樻槸鍚︽湁鐩稿悓璐ф灦锛屽瓨鍦ㄥ垯鎶涘嚭寮傚父
if(!Cools.isEmpty(agvLocDetlService.selectOne(new EntityWrapper<AgvLocDetl>().eq("supp_code",param.getBarcode())))){
- throw new CoolException(param.getBarcode() + "鏂欑鐮佸凡瀛樺湪AGV搴撳瓨鏄庣粏涓�");
+ throw new CoolException(param.getBarcode() + "璐ф灦鐮佸凡瀛樺湪AGV搴撳瓨鏄庣粏涓�");
}
- //鏌ョ湅宸ヤ綔妗f槸鍚︽湁鐩稿悓鏂欑锛屽瓨鍦ㄥ垯鎶涘嚭寮傚父
+ //妫�鏌ュ簱瀛樻槸鍚︽湁鐩稿悓璐ф灦锛屽瓨鍦ㄥ垯鎶涘嚭寮傚父
+ if(!Cools.isEmpty(agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("barcode",param.getBarcode())))){
+ throw new CoolException(param.getBarcode() + "璐ф灦鐮佸凡瀛樺湪AGV搴撳瓨涓绘。涓�");
+ }
+
+ //鏌ョ湅宸ヤ綔妗f槸鍚︽湁鐩稿悓璐ф灦锛屽瓨鍦ㄥ垯鎶涘嚭寮傚父
if(!Cools.isEmpty(agvWrkMastService.selectByContainerCode(param.getBarcode()))){
- throw new CoolException(param.getBarcode() + "鏂欑鐮佸凡瀛樺湪AGV宸ヤ綔妗d腑");
+ throw new CoolException(param.getBarcode() + "璐ф灦鐮佸凡瀛樺湪AGV宸ヤ綔妗d腑");
}
if (Cools.isEmpty(param.getOrderNo())) {
@@ -125,7 +130,7 @@
wrkDetl.setOrderNo(pick.getOrderNo());
wrkDetl.setIoTime(now);
wrkDetl.setAnfme(pick.getCount()); // 鏁伴噺
- wrkDetl.setSuppCode(pick.getSuppCode()); // 鎵樼洏鏉$爜
+ wrkDetl.setSuppCode(pick.getSuppCode()); // 璐ф灦鏉$爜
wrkDetl.setAppeUser(userId);
wrkDetl.setAppeTime(now);
wrkDetl.setModiUser(userId);
@@ -176,7 +181,7 @@
private void NoOrderComb(CombParam param, Long userId){
List<DetlDto> detlDtos = mappingDetlDtoByCombMat(param,null);
- //鐢ㄤ簬缁熶竴涓�涓墭鐩樹笅鐨勫叆搴撻�氱煡妗g殑鐢熸垚鏃堕棿
+ //鐢ㄤ簬缁熶竴涓�涓揣鏋朵笅鐨勫叆搴撻�氱煡妗g殑鐢熸垚鏃堕棿
Date now = new Date();
detlDtos.forEach(detlDto -> {
syncWaitPakin(detlDto,"",param.getBarcode(),userId,now);
@@ -200,7 +205,7 @@
}
// 鐢ㄤ簬鐢熸垚鍏ュ簱閫氱煡妗f墍闇�鍙傛暟
List<DetlDto> detlDtos = mappingDetlDtoByCombMat(param,order);
- //鐢ㄤ簬缁熶竴涓�涓墭鐩樹笅鐨勫叆搴撻�氱煡妗g殑鐢熸垚鏃堕棿
+ //鐢ㄤ簬缁熶竴涓�涓揣鏋朵笅鐨勫叆搴撻�氱煡妗g殑鐢熸垚鏃堕棿
Date now = new Date();
for (DetlDto detlDto : detlDtos) {
//鍚屾鐢熸垚鍏ュ簱閫氱煡妗�
@@ -223,7 +228,7 @@
}
DetlDto detlDto = new DetlDto(combMat.getMatnr(), combMat.getBatch(), combMat.getAnfme(), combMat.getCsocode(), combMat.getIsoseq(),combMat.getContainerCode(),param.getLocType());
- //鍚屼竴鎵樼洏涓嬬浉鍚岀墿鏂欎俊鎭拰鎵瑰彿杞负涓�涓叆搴撻�氱煡妗�
+ //鍚屼竴璐ф灦涓嬬浉鍚岀墿鏂欎俊鎭拰鎵瑰彿杞负涓�涓叆搴撻�氱煡妗�
if (DetlDto.has(detlDtos, detlDto)) {
DetlDto one = DetlDto.find(detlDtos, detlDto.getMatnr(), detlDto.getBatch(), detlDto.getCsocode(), detlDto.getIsoseq(),detlDto.getContainerCode());
assert one != null;
@@ -266,8 +271,8 @@
waitPakin.sync(mat);
waitPakin.setOrderNo(orderNo); // 鍗曟嵁缂栧彿
waitPakin.setBatch(detlDto.getBatch()); // 搴忓垪鐮�
- //waitPakin.setZpallet(zpallet); // 鎵樼洏鐮�
- waitPakin.setSuppCode(zpallet); // 鎵樼洏鐮�
+ //waitPakin.setZpallet(zpallet); // 璐ф灦鐮�
+ waitPakin.setSuppCode(zpallet); // 璐ф灦鐮�
waitPakin.setIoStatus("N"); // 鍏ュ嚭鐘舵��
waitPakin.setAnfme(detlDto.getAnfme()); // 鏁伴噺
waitPakin.setStatus("Y"); // 鐘舵��
@@ -312,7 +317,7 @@
}
if(Cools.isEmpty(agvWaitPakinService.selectByContainerCode(barcode))){
- throw new CoolException("璇ユ枡绠辨湭缁勬墭锛屾棤娉曠粦瀹氱珯鐐�");
+ throw new CoolException("璇ヨ揣鏋舵湭缁勬墭锛屾棤娉曠粦瀹氱珯鐐�");
}
AgvBasDevp agvBasDevp1 = agvBasDevpService.selectOne(new EntityWrapper<AgvBasDevp>().eq("barcode", barcode));
@@ -387,7 +392,11 @@
ioType = 11;
}
} else {
- ioType = 12;
+ if (agvLocMast.getFloor() != floor) {
+ ioType = 12;
+ } else {
+ ioType = 11;
+ }
}
Date now = new Date();
//鏌ヨ宸ヤ綔妗�
@@ -413,9 +422,9 @@
mast.setSourceLocNo(agvLocMast.getLocNo());
//鐩爣绔欑偣
mast.setLocNo(locMast.getLocNo());
- //瀹瑰櫒缂栫爜
+ //璐ф灦缂栫爜
mast.setBarcode(agvLocMast.getBarcode());
- //瀹瑰櫒绫诲瀷
+ //璐ф灦绫诲瀷
mast.setWhsType(30);
mast.setAppeUser(userId);
@@ -527,12 +536,36 @@
*/
@Override
@Transactional
+ public String handBack(AgvMobileStartPakin param, Long userId) {
+ Date now = new Date();
+ AgvWrkMast agvWrkMast = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("source_loc_no", param.getDevNo()));
+ agvWrkMast.setIoType(113);
+ agvWrkMast.setModiUser(userId);
+ agvWrkMast.setModiTime(now);
+ if (!agvWrkMastService.update(agvWrkMast,new EntityWrapper<AgvWrkMast>().eq("wrk_no",agvWrkMast.getWrkNo()))) {
+ throw new CoolException("鏇存柊宸ヤ綔妗eけ璐�");
+ }
+ return "ok";
+ }
+
+ /*
+ * 绔欑偣鍥為��
+ */
+ @Override
+ @Transactional
public String doBack(AgvMobileStartPakin param, Long userId) {
Date now = new Date();
AgvWrkMast agvWrkMast = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("loc_no", param.getDevNo()));
+ AgvWrkMast agvWrkMastSource = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("source_loc_no", param.getDevNo()));
+ if (!Cools.isEmpty(agvWrkMastSource)) {
+ throw new CoolException("褰撳墠绔欑偣宸叉湁閫�搴撲换鍔�");
+ }
Integer oldWrkNo = agvWrkMast.getWrkNo();
- if (agvWrkMast.getBarcode() != param.getBarcode()) {
- throw new CoolException("鍥為��浠诲姟鐨勮揣鏋剁爜涓庡綋鍓嶈揣鏋剁爜涓嶄竴鑷�1");
+ if (!agvWrkMast.getBarcode().equals(param.getBarcode())) {
+ throw new CoolException("鍥為��浠诲姟鐨勮揣鏋剁爜涓庡綋鍓嶈揣鏋剁爜涓嶄竴鑷�!");
+ }
+ if (agvWrkMast.getWrkSts() != 205) {
+ throw new CoolException("鍑哄簱浠诲姟鏈畬鎴�!");
}
// 鏂板缓鍥為��宸ヤ綔妗�
AgvWrkMast wrkMast = createWrkMast(58, 201L, agvWrkMast.getLocNo(), agvWrkMast.getSourceLocNo(), agvWrkMast.getBarcode(), now, userId, agvWrkMast.getWhsType(), 0);
@@ -591,9 +624,9 @@
wrkMast.setSourceLocNo(sourceLocNo);
//鐩爣绔欑偣
wrkMast.setLocNo(locNo);
- //瀹瑰櫒缂栫爜
+ //璐ф灦缂栫爜
wrkMast.setBarcode(barcode);
- //瀹瑰櫒绫诲瀷
+ //璐ф灦绫诲瀷
wrkMast.setWhsType(containerType);
// 鐩爣妤煎眰
wrkMast.setCrnNo(floor);
--
Gitblit v1.9.1