From 638392144f32a2346f513c671c4a3bf88a954479 Mon Sep 17 00:00:00 2001
From: whycq <913841844@qq.com>
Date: 星期三, 17 四月 2024 23:29:51 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java | 110 +++++++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 98 insertions(+), 12 deletions(-)
diff --git a/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java b/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
index 3a0a601..4eb2f8d 100644
--- a/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
+++ b/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
@@ -1,19 +1,23 @@
package com.zy.asrs.task;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.core.common.Cools;
+import com.zy.asrs.entity.AgvBasDevp;
import com.zy.asrs.entity.AgvWrkMast;
import com.zy.asrs.service.AgvBasDevpService;
import com.zy.asrs.service.AgvWrkMastService;
import com.zy.asrs.task.core.ReturnT;
import com.zy.asrs.task.handler.AgvWrkMastHandler;
+import com.zy.common.entity.Parameter;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.io.IOException;
+import java.util.ArrayList;
import java.util.List;
/**
@@ -56,7 +60,7 @@
}
/*
- 瀹氭椂澶勭悊AGV宸ヤ綔妗d腑宸ヤ綔鐘舵�佷负206.瀹瑰櫒绂诲満瀹屾垚 涓� (101.鍑哄簱 || 110.绌烘澘鍑哄簱)
+ 瀹氭椂澶勭悊AGV宸ヤ綔妗d腑宸ヤ綔鐘舵�佷负206.鍑哄簱瀹屾垚 涓� (101.鍑哄簱 || 110.绌烘澘鍑哄簱)
*/
@Scheduled(cron = "0/10 * * * * ? ")
public void excuteCarryWrk(){
@@ -72,10 +76,27 @@
}
/*
+ 瀹氭椂澶勭悊AGV宸ヤ綔妗d腑宸ヤ綔鐘舵�佷负206.鍑哄簱瀹屾垚 涓� (101.鍑哄簱 || 110.绌烘澘鍑哄簱)
+ */
+ @Scheduled(cron = "0/10 * * * * ? ")
+ public void excuteCarryWrk2(){
+ List<AgvWrkMast> agvWrkMastList = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>()
+ .eq("wrk_sts", 208)
+ .andNew().eq("io_type",110)
+ .or().eq("io_type",101));
+ if(!Cools.isEmpty(agvWrkMastList)){
+ agvWrkMastList.stream().forEach(agvWrkMast -> {
+ ReturnT<String> returnT = agvWrkMastHandler.completedCarryWrk2(agvWrkMast);
+ });
+ }
+ }
+
+
+ /*
putaway锛氫笂鏋�
瀹氭椂澶勭悊AGV宸ヤ綔妗d腑宸ヤ綔鐘舵�佷负201.鐢熸垚鍏ュ簱浠诲姟ID 涓�(鍑哄簱绫诲瀷涓� 53.鎷f枡鍐嶅叆搴� || 1.鍏ュ簱 || 10.绌烘澘鍏ュ簱鏍� || 57.鐩樼偣鍐嶅叆搴�)鐨勬暟鎹�
*/
- //@Scheduled(cron = "0/10 * * * * ? ")
+ @Scheduled(cron = "0/10 * * * * ? ")
public void startPutwayWrk(){
List<AgvWrkMast> agvWrkMastList = agvWrkMastService.selectPage(new Page<>(1, 50)
,new EntityWrapper<AgvWrkMast>()
@@ -86,11 +107,13 @@
.or().eq("io_type", 57)).getRecords();
if(!Cools.isEmpty(agvWrkMastList)){
- try {
- ReturnT<String> returnT = agvWrkMastHandler.startPutWayWrk(agvWrkMastList);
- } catch (IOException e) {
- log.error(e.getMessage());
- }
+ agvWrkMastList.forEach(agvWrkMast -> {
+ try {
+ agvWrkMastHandler.startPutWayWrk(agvWrkMast);
+ } catch (IOException e) {
+ log.error(e.getMessage());
+ }
+ });
}
}
@@ -111,11 +134,30 @@
.or().eq("io_type", 107)).getRecords();
if(!Cools.isEmpty(agvWrkMastList)){
- try {
- ReturnT<String> returnT = agvWrkMastHandler.startCarryWrk(agvWrkMastList);
- } catch (IOException e) {
- log.error(e.getMessage());
- }
+ List<String> devNos = new ArrayList<>();
+ agvWrkMastList.forEach(agvWrkMast -> {
+ try {
+
+ //杩囨护璇ユ壒宸ヤ綔妗d腑閲嶅鐨勫嚭绔欑偣
+ if (devNos.contains(agvWrkMast.getLocNo())){
+ return;
+ }
+ devNos.add(agvWrkMast.getLocNo());
+
+ //妫�娴嬪綋鍓嶅伐浣滀换鍔′腑鐨勭珯鐐规槸鍚﹀凡鏈夋湁浣滀笟涓殑浠诲姟
+ AgvWrkMast agvWrkMastWorking = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>()
+ .eq("loc_no", agvWrkMast.getLocNo())
+ .ge("wrk_sts", 202L));
+
+ if(!Cools.isEmpty(agvWrkMastWorking)){
+ return;
+ }
+
+ agvWrkMastHandler.startPutWayWrk(agvWrkMast);
+ } catch (IOException e) {
+ log.error(e.getMessage());
+ }
+ });
}
}
@@ -133,4 +175,48 @@
}
}
}
+
+ /*
+ 鑷姩鐢熸垚绌烘澘鍑哄簱浠诲姟
+ */
+ @Scheduled(cron = "0/10 * * * * ? ")
+ public void autoEmptyOut(){
+ boolean packageEmptyAutoOUt = Cools.eq("Y",Parameter.get().getPackageEmptyAutoOUt());
+ boolean mateEmptyAutoOut = Cools.eq("Y",Parameter.get().getMateEmptyAutoOut());
+ boolean boxEmptyAutoOut = Cools.eq("Y",Parameter.get().getBoxEmptyAutoOut());
+
+ if(!packageEmptyAutoOUt && !mateEmptyAutoOut && !boxEmptyAutoOut){
+ return;
+ }
+
+ List<Integer> locType1Condition = new ArrayList<>();
+ if(packageEmptyAutoOUt){
+ locType1Condition.add(1);
+ }
+ if(mateEmptyAutoOut){
+ locType1Condition.add(2);
+ }
+ if(boxEmptyAutoOut){
+ locType1Condition.add(3);
+ }
+
+ //鎵惧嚭闇�瑕佽ˉ鏂欑殑绔欑偣
+ Wrapper<AgvBasDevp> wrapper = new EntityWrapper<AgvBasDevp>()
+ .eq("in_enable", "Y")
+ .eq("loc_sts", "O")
+ .in("loc_type1", locType1Condition);
+
+ List<AgvBasDevp> agvBasDevpList = agvBasDevpService.selectList(wrapper);
+ for (AgvBasDevp agvBasDevp : agvBasDevpList){
+ try {
+ agvWrkMastHandler.autoEmptyOut(agvBasDevp);
+ }catch (Exception e){
+ log.error(e.getMessage());
+ e.printStackTrace();
+ }
+
+ }
+
+ }
+
}
--
Gitblit v1.9.1