From b612510f2479cc7fc04fbf9c4982742bee9e2ceb Mon Sep 17 00:00:00 2001 From: wang <3597712270@qq.com> Date: 星期四, 18 四月 2024 16:55:46 +0800 Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/HangZhouMes --- hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/component/PlcStorageCage.java | 113 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 113 insertions(+), 0 deletions(-) diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/component/PlcStorageCage.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/component/PlcStorageCage.java new file mode 100644 index 0000000..a53fcde --- /dev/null +++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/component/PlcStorageCage.java @@ -0,0 +1,113 @@ +package com.mes.component; + +import cn.hutool.json.JSONObject; +import com.mes.bigstorage.entity.BigStorageCageDetails; +import com.mes.bigstorage.service.BigStorageCageDetailsService; +import com.mes.bigstorage.service.BigStorageCageService; +import com.mes.bigstoragetask.entity.BigStorageCageFeedTask; +import com.mes.bigstoragetask.service.BigStorageCageFeedTaskService; +import com.mes.bigstoragetask.service.BigStorageCageOutTaskService; +import com.mes.edgstoragetask.service.TaskCacheService; +import com.mes.glassinfo.entity.GlassInfo; +import com.mes.glassinfo.service.GlassInfoService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; + +import java.util.List; + +@Slf4j +public class PlcStorageCage extends Thread { + + @Autowired + private BigStorageCageService bigStorageCageService; + @Autowired + private BigStorageCageDetailsService bigStorageCageDetailsService; + @Autowired + private GlassInfoService glassInfoService; + @Autowired + private BigStorageCageFeedTaskService bigStorageCageFeedTaskService; + @Autowired + private BigStorageCageOutTaskService bigStorageCageOutTaskService; + @Autowired + private TaskCacheService taskCacheService; + + @Override + public void run() { + while (this != null) { + JSONObject jsonObject = new JSONObject(); + try { + Thread.sleep(300); + boolean bigStorageCageFullAlarm=false; + + String plcD01FeedReq = "0"; + String plcD04FeedReq = "0"; + String plcFeedGlassid = "111"; + String plcFeedReqLine="0"; + if("1".equals(plcD01FeedReq)){ + plcFeedReqLine="1"; + }else { + //plc浠诲姟鍙戦�佸瓧0 + } + if("1".equals(plcD04FeedReq)){ + plcFeedReqLine="2"; + }else { + //plc浠诲姟鍙戦�佸瓧0 + } + + if (!("0".equals(plcFeedReqLine))) { + log.info("1銆丳lc杩涚墖璇锋眰鏃�"); + BigStorageCageDetails bigStorageCageDetails = new BigStorageCageDetails(); + GlassInfo glassInfo = glassInfoService.getById(plcFeedGlassid); + log.info("2銆佹牴鎹幓鐠僫d鑾峰彇鐜荤拑淇℃伅"+glassInfo); + BigStorageCageDetails slotInfo = bigStorageCageService.feedGlass(glassInfo, bigStorageCageDetails); + if (slotInfo != null) { + int taskType=taskCacheService.judgeTasktype(); + log.info("3銆佹煡璇换鍔¤〃鍒ゆ柇褰撳墠浠诲姟绫诲瀷涓轰笂杞︾瓑鍒拌繕鏄笂杞﹀惎鍔�"+taskType); + bigStorageCageFeedTaskService.addFeedTask(slotInfo,Integer.parseInt(plcFeedReqLine),taskType); + log.info("4銆佹坊鍔犱换鍔″埌浠诲姟琛�"); + //plc浠诲姟鍙戦�佸瓧1 + bigStorageCageFullAlarm=false; + }else{ + //鐞嗙墖绗肩垎绗兼姤璀� + bigStorageCageFullAlarm=true; + } + }else{ + List<BigStorageCageFeedTask> bigStorageCageFeedTaskList=bigStorageCageFeedTaskService.querybigStorageCageFeedTask(1); + log.info("5銆佹煡璇换鍔¤〃鏄惁鏈夊凡缁忓畬鎴愮殑杩涚墖浠诲姟"+bigStorageCageFeedTaskList.size()); + for (BigStorageCageFeedTask bigStorageCageFeedTask:bigStorageCageFeedTaskList + ) { + BigStorageCageDetails bigStorageCageDetails=new BigStorageCageDetails(); + bigStorageCageDetails.setId(bigStorageCageFeedTask.getId()); + bigStorageCageDetails.setState(1); + bigStorageCageDetailsService.updateById(bigStorageCageDetails); + log.info("6銆佷慨鏀圭悊鐗囩璇︽儏鐜荤拑鐘舵��"); + bigStorageCageFeedTaskService.removeById(bigStorageCageFeedTask); + log.info("7銆佸垹闄ゅ凡缁忓畬鎴愮殑杩涚墖浠诲姟"); + } + } + + //鍑虹墖璇锋眰 + String plcOutReq = "0"; + boolean result = false; + if ("1".equals(plcOutReq)) { + result=bigStorageCageService.outGlass(); + log.info("8銆佸嚭鐗囪姹傛椂璋冪敤鍑虹墖鎺ュ彛"+result); + if (result) { + //plc浠诲姟鍙戦�佸瓧1 + } + }else{ + bigStorageCageOutTaskService.updateOutTask(); + //plc浠诲姟鍙戦�佸瓧0 + } + + //鏄剧ず鍓╀綑绌烘牸瀛� + + //鎶ヨ淇℃伅 + jsonObject.append("bigStorageCageFullAlarm", bigStorageCageFullAlarm); + } catch (Exception e) { + e.printStackTrace(); + } + } + + } +} \ No newline at end of file -- Gitblit v1.8.0