From baf4037cd0078c6ba1e30dfb949e0a6287f1b022 Mon Sep 17 00:00:00 2001 From: zyx <zyx123456> Date: 星期五, 08 十二月 2023 15:11:55 +0800 Subject: [PATCH] 增加自动补货开关 --- src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java | 97 ++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 89 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java b/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java index c59778d..efcdff9 100644 --- a/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java +++ b/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java @@ -1,8 +1,10 @@ package com.zy.asrs.task; import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.plugins.Page; import com.core.common.Cools; 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; @@ -15,7 +17,12 @@ import java.util.List; /** - * 瀹氭椂澶勭悊AGV宸ヤ綔妗d腑宸ヤ綔鐘舵�佷负205.宸ヤ綔瀹屾垚鐨勬暟鎹� + * 浠诲姟绫诲瀷锛� + * 飦� putaway锛氫笂鏋躲�� + * 飦� carry锛氭惉杩愶紝缁熸寚鍑哄簱銆佺Щ搴撱�佺偣鍒扮偣鎼繍绛夈�� + * 飦� scan锛氭壂鎻忕洏鐐广�� + * 飦� weight锛氱О閲嶇洏鐐广�� + * 飦� rfid锛歳fid鐩樼偣銆� */ @Slf4j @Component @@ -25,25 +32,59 @@ AgvWrkMastHandler agvWrkMastHandler; @Autowired AgvWrkMastService agvWrkMastService; + @Autowired + AgvBasDevpService agvBasDevpService; - @Scheduled(cron = "0/5 * * * * ? ") + + /* + 瀹氭椂澶勭悊AGV宸ヤ綔妗d腑宸ヤ綔鐘舵�佷负205.宸ヤ綔瀹屾垚 涓� 锛�1.鍏ュ簱 || 53锛屾嫞鏂欏叆搴� || 57.鐩樼偣鍏ュ簱 || 10.绌烘澘鍏ュ簱 || 11.搴撴牸绉昏浇)鐨勬暟鎹� + */ + @Scheduled(cron = "0/10 * * * * ? ") public void excutePutwayWrk(){ List<AgvWrkMast> agvWrkMastList = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>() .eq("wrk_sts", 205) - .eq("io_type",1)); + .andNew().eq("io_type",53) + .or().eq("io_type",1) + .or().eq("io_type",57) + .or().eq("io_type",10) + .or().eq("io_type",11)); if(!Cools.isEmpty(agvWrkMastList)){ agvWrkMastList.stream().forEach(agvWrkMast -> { - ReturnT<String> returnT = agvWrkMastHandler.completedPutWayWrk(agvWrkMast); + agvWrkMastHandler.completedPutWayWrk(agvWrkMast); }); } } - @Scheduled(cron = "0/5 * * * * ? ") - public void startPutwayWrk(){ + /* + 瀹氭椂澶勭悊AGV宸ヤ綔妗d腑宸ヤ綔鐘舵�佷负206.瀹瑰櫒绂诲満瀹屾垚 涓� (101.鍑哄簱 || 110.绌烘澘鍑哄簱) + */ + @Scheduled(cron = "0/10 * * * * ? ") + public void excuteCarryWrk(){ List<AgvWrkMast> agvWrkMastList = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>() + .eq("wrk_sts", 206) + .andNew().eq("io_type",110) + .or().eq("io_type",101)); + if(!Cools.isEmpty(agvWrkMastList)){ + agvWrkMastList.stream().forEach(agvWrkMast -> { + ReturnT<String> returnT = agvWrkMastHandler.completedCarryWrk(agvWrkMast); + }); + } + } + + /* + putaway锛氫笂鏋� + 瀹氭椂澶勭悊AGV宸ヤ綔妗d腑宸ヤ綔鐘舵�佷负201.鐢熸垚鍏ュ簱浠诲姟ID 涓�(鍑哄簱绫诲瀷涓� 53.鎷f枡鍐嶅叆搴� || 1.鍏ュ簱 || 10.绌烘澘鍏ュ簱鏍� || 57.鐩樼偣鍐嶅叆搴�)鐨勬暟鎹� + */ + @Scheduled(cron = "0/10 * * * * ? ") + public void startPutwayWrk(){ + List<AgvWrkMast> agvWrkMastList = agvWrkMastService.selectPage(new Page<>(1, 50) + ,new EntityWrapper<AgvWrkMast>() .eq("wrk_sts", 201) - .eq("io_type",1) - .last("limit 0,50")); + .andNew().eq("io_type", 53) + .or().eq("io_type", 1) + .or().eq("io_type", 10) + .or().eq("io_type", 57)).getRecords(); + if(!Cools.isEmpty(agvWrkMastList)){ try { ReturnT<String> returnT = agvWrkMastHandler.startPutWayWrk(agvWrkMastList); @@ -52,4 +93,44 @@ } } } + + /* + carry锛氭惉杩愶紝缁熸寚鍑哄簱銆佺Щ搴撱�佺偣鍒扮偣鎼繍绛� + 瀹氭椂澶勭悊AGV宸ヤ綔妗d腑宸ヤ綔鐘舵�佷负21.鐢熸垚鍑哄簱浠诲姟 涓�(鍑哄簱绫诲瀷涓� 101.鍑哄簱 || 103.鎷f枡鍑哄簱 || 11.搴撴牸绉绘牻 || 110.绌烘澘鍑哄簱 || 107.鐩樼偣鍑哄簱)鐨勬暟鎹� + */ + @Scheduled(cron = "0/10 * * * * ? ") + public void startCarryWrk(){ + List<AgvWrkMast> agvWrkMastList = agvWrkMastService.selectPage(new Page<>(1, 50) + ,new EntityWrapper<AgvWrkMast>() + .eq("wrk_sts", 21) + //.like("loc_no","@") + .andNew().eq("io_type", 101) + .or().eq("io_type", 103) + .or().eq("io_type", 11) + .or().eq("io_type", 110) + .or().eq("io_type", 107)).getRecords(); + + if(!Cools.isEmpty(agvWrkMastList)){ + try { + ReturnT<String> returnT = agvWrkMastHandler.startCarryWrk(agvWrkMastList); + } catch (IOException e) { + log.error(e.getMessage()); + } + } + } + + /* + 瀹氭椂澶勭悊绛夊緟鎵ц鐨勪换鍔� 宸ヤ綔鐘舵�佷负21.鐢熸垚鍑哄簱浠诲姟 涓旂洰鏍囧簱浣嶄腑涓嶅惈@瀛楃 + */ + //@Scheduled(cron = "0/10 * * * * ? ") + public void dealWatiWrk(){ + List<AgvWrkMast> agvWrkMastList = agvWrkMastService.selectReadyAgvWrkMast(); + if(!Cools.isEmpty(agvWrkMastList)){ + try { + ReturnT<String> returnT = agvWrkMastHandler.dealWatiWrk(agvWrkMastList); + } catch (IOException e) { + log.error(e.getMessage()); + } + } + } } -- Gitblit v1.9.1