From d9a5beba954796e4d1735ed85522e95b9e312769 Mon Sep 17 00:00:00 2001
From: whycq <913841844@qq.com>
Date: 星期五, 10 五月 2024 19:22:31 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java | 15 ++++---
src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java | 9 ++++
src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java | 4 ++
src/main/java/com/zy/asrs/task/AutoMoveScheduler.java | 17 ++++++++
src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java | 9 ++++
src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java | 7 +++
src/main/java/com/zy/asrs/service/AgvLocMastService.java | 1
src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java | 37 ++++++++++++++++++
8 files changed, 90 insertions(+), 9 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/AgvLocMastService.java b/src/main/java/com/zy/asrs/service/AgvLocMastService.java
index a926c6c..1f8169c 100644
--- a/src/main/java/com/zy/asrs/service/AgvLocMastService.java
+++ b/src/main/java/com/zy/asrs/service/AgvLocMastService.java
@@ -22,6 +22,7 @@
public void updateLocStsByLocNo(String locNo, String locSts, String barcode,Short containerType);
+ public void updateLocStsByLocNo(String locNo, String locSts, String barcode,Short containerType,String locType,Short locType3);
public List<String> queryGroupEmptyStock(int floor);
List<AgvLocMast> selectLocByLevAndFloor(int lev, int floor);
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java
index 495b996..67c4916 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java
@@ -328,6 +328,15 @@
agvLocMast.setLocType2(containerType);
this.updateById(agvLocMast);
}
+ public void updateLocStsByLocNo(String locNo, String locSts, String barcode,Short containerType,String locType,Short locType3) {
+ AgvLocMast agvLocMast = this.selectById(locNo);
+ agvLocMast.setLocSts(locSts);
+ agvLocMast.setBarcode(barcode);
+ agvLocMast.setLocType2(containerType);
+ agvLocMast.setLocType(locType);
+ agvLocMast.setLocType3(locType3);
+ this.updateById(agvLocMast);
+ }
public List<String> queryGroupEmptyStock(int floor) {
return this.baseMapper.queryGroupEmptyStock(floor);
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
index a565b5b..e524a96 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
@@ -568,6 +568,10 @@
//淇敼鍑哄簱绔欑偣鐘舵��
agvBasDevpService.updateLocStsAndBarcodeByDevNo(wrkMast.getLocNo(),"F",wrkMast.getBarcode(),wrkMast.getWhsType().shortValue());
}
+ if(wrkMast.getIoType() == 1 || wrkMast.getIoType() == 53 ){
+ //淇敼鍑哄簱绔欑偣鐘舵��
+ agvBasDevpService.updateLocStsAndBarcodeByDevNo(wrkMast.getSourceLocNo(),"O","",wrkMast.getWhsType().shortValue());
+ }
//鍑哄簱浠诲姟 110.绌烘澘鍑哄簱
if(wrkMast.getIoType() == 110){
agvBasDevpService.updateLocStsAndBarcodeByDevNo(wrkMast.getLocNo(),"F",wrkMast.getBarcode(),wrkMast.getWhsType().shortValue());
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java b/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
index b4c571f..5739028 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
@@ -187,7 +187,12 @@
agvWrkMast.setWrkNo(-agvWrkMast.getWrkNo());
}
agvTaskCreateParam.setTaskCode(agvWrkMast.getWrkNo().toString());
- agvTaskCreateParam.setTaskTyp("F01");
+ if (agvWrkMast.getIoType() == 108 || agvWrkMast.getIoType() == 109) {
+ agvTaskCreateParam.setTaskTyp("F06");
+ } else {
+ agvTaskCreateParam.setTaskTyp("F01");
+ }
+
agvTaskCreateParam.setPositionCodePath(agvTaskParamList);
}
diff --git a/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java b/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
index 2eec845..6a3bc03 100644
--- a/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
+++ b/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
@@ -43,7 +43,7 @@
/*
瀹氭椂澶勭悊AGV宸ヤ綔妗d腑宸ヤ綔鐘舵�佷负205.宸ヤ綔瀹屾垚 涓� 锛�1.鍏ュ簱 || 53锛屾嫞鏂欏叆搴� || 57.鐩樼偣鍏ュ簱 || 10.绌烘澘鍏ュ簱 || 11.搴撴牸绉昏浇)鐨勬暟鎹�
*/
- @Scheduled(cron = "0/1 * * * * ? ")
+ @Scheduled(cron = "0/3 * * * * ? ")
public void excutePutwayWrk(){
List<AgvWrkMast> agvWrkMastList = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>()
.eq("wrk_sts", 205)
@@ -63,7 +63,7 @@
/*
瀹氭椂澶勭悊AGV宸ヤ綔妗d腑宸ヤ綔鐘舵�佷负206.鍑哄簱瀹屾垚 涓� (101.鍑哄簱 || 110.绌烘澘鍑哄簱)
*/
- @Scheduled(cron = "0/1 * * * * ? ")
+ @Scheduled(cron = "0/3 * * * * ? ")
public void excuteCarryWrk(){
List<AgvWrkMast> agvWrkMastList = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>()
.eq("wrk_sts", 206)
@@ -79,7 +79,7 @@
/*
瀹氭椂澶勭悊AGV宸ヤ綔妗d腑宸ヤ綔鐘舵�佷负206.鍑哄簱瀹屾垚 涓� (101.鍑哄簱 || 110.绌烘澘鍑哄簱)
*/
- @Scheduled(cron = "0/1 * * * * ? ")
+ @Scheduled(cron = "0/3 * * * * ? ")
public void excuteCarryWrk2(){
List<AgvWrkMast> agvWrkMastList = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>()
.eq("wrk_sts", 208)
@@ -97,7 +97,7 @@
putaway锛氫笂鏋�
瀹氭椂澶勭悊AGV宸ヤ綔妗d腑宸ヤ綔鐘舵�佷负201.鐢熸垚鍏ュ簱浠诲姟ID 涓�(鍑哄簱绫诲瀷涓� 53.鎷f枡鍐嶅叆搴� || 1.鍏ュ簱 || 10.绌烘澘鍏ュ簱鏍� || 57.鐩樼偣鍐嶅叆搴�)鐨勬暟鎹�
*/
- @Scheduled(cron = "0/2 * * * * ? ")
+ @Scheduled(cron = "0/3 * * * * ? ")
public void startPutwayWrk(){
List<AgvWrkMast> agvWrkMastList = agvWrkMastService.selectPage(new Page<>(1, 50)
,new EntityWrapper<AgvWrkMast>()
@@ -105,7 +105,8 @@
.andNew().eq("io_type", 53)
.or().eq("io_type", 1)
.or().eq("io_type", 10)
- .or().eq("io_type", 57)).getRecords();
+ .or().eq("io_type", 57)
+ .or().eq("io_type", 108)).getRecords();
if(!Cools.isEmpty(agvWrkMastList)){
agvWrkMastList.forEach(agvWrkMast -> {
@@ -122,7 +123,7 @@
carry锛氭惉杩愶紝缁熸寚鍑哄簱銆佺Щ搴撱�佺偣鍒扮偣鎼繍绛�
瀹氭椂澶勭悊AGV宸ヤ綔妗d腑宸ヤ綔鐘舵�佷负21.鐢熸垚鍑哄簱浠诲姟 涓�(鍑哄簱绫诲瀷涓� 101.鍑哄簱 || 103.鎷f枡鍑哄簱 || 11.搴撴牸绉绘牻 || 110.绌烘澘鍑哄簱 || 107.鐩樼偣鍑哄簱)鐨勬暟鎹�
*/
- @Scheduled(cron = "0/10 * * * * ? ")
+ @Scheduled(cron = "0/3 * * * * ? ")
public void startCarryWrk(){
List<AgvWrkMast> agvWrkMastList = agvWrkMastService.selectPage(new Page<>(1, 50)
,new EntityWrapper<AgvWrkMast>()
@@ -180,7 +181,7 @@
/*
鑷姩鐢熸垚绌烘澘鍑哄簱浠诲姟
*/
- @Scheduled(cron = "0/10 * * * * ? ")
+ @Scheduled(cron = "0/3 * * * * ? ")
public void autoEmptyOut(){
boolean packageEmptyAutoOUt = Cools.eq("Y",Parameter.get().getPackageEmptyAutoOUt());
boolean mateEmptyAutoOut = Cools.eq("Y",Parameter.get().getMateEmptyAutoOut());
diff --git a/src/main/java/com/zy/asrs/task/AutoMoveScheduler.java b/src/main/java/com/zy/asrs/task/AutoMoveScheduler.java
index 0979cba..35835aa 100644
--- a/src/main/java/com/zy/asrs/task/AutoMoveScheduler.java
+++ b/src/main/java/com/zy/asrs/task/AutoMoveScheduler.java
@@ -39,4 +39,21 @@
}
}
+
+ @Scheduled(cron = "0/2 * * * * ? ")
+ private void autoEmptyBack(){
+ // 鏌ヨ 涓嶄负1妤肩殑绌鸿揣鏋�
+ List<AgvLocMast> agvLocMasts = agvLocMastService.selectList(
+ new EntityWrapper<AgvLocMast>()
+ .ne("floor", 3)
+ .eq("loc_sts","D")
+ .eq("loc_type1",3));
+ if (agvLocMasts.isEmpty()) {
+ return;
+ }
+ for (AgvLocMast agvLocMast : agvLocMasts) {
+ ReturnT<String> returnT = autoMoveHandler.start(agvLocMast);
+ }
+
+ }
}
diff --git a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
index 7979ca5..82f159d 100644
--- a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
@@ -98,9 +98,16 @@
//鏇存柊搴撳瓨鏄庣粏
agvLocDetlService.updateStock(agvWrkMast.getSourceLocNo(),agvWrkMast.getLocNo());
//淇敼婧愬簱浣嶇姸鎬佷负O
- agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",null);
+
+ agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue(),"",(short)0);
}
+ if(agvWrkMast.getIoType() == 109){
+ //淇敼婧愬簱浣嶇姸鎬佷负O
+ agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue(),"",(short)0);
+ }
+
+
//鍒犻櫎AGV宸ヤ綔妗�
agvWrkMastService.deleteById(wrkNo);
//鍒犻櫎AGV宸ヤ綔鏄庣粏妗�
diff --git a/src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java b/src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java
index beca64d..c3db2df 100644
--- a/src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java
@@ -117,4 +117,41 @@
locMast.setLocSts(locSts);
agvLocMastService.updateById(locMast);
}
+
+ public ReturnT<String> autoEmptyBack(AgvLocMast agvLocMast) {
+ Date now = new Date();
+ //鏌ヨ宸ヤ綔妗�
+ AgvWrkMast agvWrkMast = agvWrkMastService.selectByContainerCode(agvLocMast.getBarcode());
+ if(!Cools.isEmpty(agvWrkMast)){
+ throw new CoolException("褰撳墠"+agvLocMast.getBarcode()+"璐ф灦鐮佸凡鍦ㄥ伐浣滄。涓�");
+ }
+ //妫�绱㈠簱浣嶏紝閫夋嫨鍚堥�傜殑搴撲綅
+ AgvLocMast LocMast = agvCommonService.getLocNo(3,agvLocMast.getLocType3());
+ //鐢熸垚宸ヤ綔妗�
+ AgvWrkMast mast = new AgvWrkMast();
+ //宸ヤ綔鐘舵��
+ mast.setWrkSts(201L);
+ //鍏ュ嚭搴撶被鍨�
+ mast.setIoType(109);
+ mast.setIoTime(now);
+ //浼樺厛绾�
+ mast.setIoPri(300.0);
+ //婧愮珯鐐�
+ mast.setSourceLocNo(agvLocMast.getLocNo());
+ //鐩爣绔欑偣
+ mast.setLocNo(LocMast.getLocNo());
+ //瀹瑰櫒缂栫爜
+ mast.setBarcode(agvLocMast.getBarcode());
+ //瀹瑰櫒绫诲瀷
+ mast.setWhsType(30);
+
+ mast.setAppeUser(9527L);
+ mast.setAppeTime(now);
+ mast.setModiUser(9527L);
+ mast.setModiTime(now);
+ if (!agvWrkMastService.insertByIncrease(mast)) {
+ throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
+ }
+ return SUCCESS;
+ }
}
--
Gitblit v1.9.1