From dca06cb013a8312dc37feec69a79165e11ffea63 Mon Sep 17 00:00:00 2001 From: pjb <pjb123456> Date: 星期五, 18 七月 2025 10:48:58 +0800 Subject: [PATCH] 空闲10秒有入库任务回原点,空闲两分钟回原点 --- src/main/java/com/zy/service/impl/MainServiceImpl.java | 24 ++++++++++++++++++------ 1 files changed, 18 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/zy/service/impl/MainServiceImpl.java b/src/main/java/com/zy/service/impl/MainServiceImpl.java index 552e0e1..8325cee 100644 --- a/src/main/java/com/zy/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/service/impl/MainServiceImpl.java @@ -819,6 +819,11 @@ */ public synchronized void locToCrnStn(CrnSlave slave, CrnProtocol crnProtocol,Integer mark) { News.warnNoLog(""+mark+" - 2"+" - 0"+" - 鍫嗗灈鏈哄叆鍑哄簱浣滀笟涓嬪彂锛氭墽琛屽嚭搴�"); + boolean crnAvailableOut = false; + Config config = configService.selectOne(new EntityWrapper<Config>().eq("code","removeCrnAvailableOut")); + if (config != null && config.getStatus() == 1) { + crnAvailableOut = true; + } for (CrnSlave.CrnStn crnStn : slave.getCrnOutStn()) { // 鑾峰彇宸ヤ綔鐘舵�佷负11锛堢敓鎴愬嚭搴揑D锛夌殑鍑哄簱宸ヤ綔妗� List<WrkMast> wrkMasts = wrkMastMapper.selectPakOutStep11(slave.getId(), crnStn.getStaNo()); @@ -855,9 +860,8 @@ } // 鍒ゆ柇鍫嗗灈鏈哄嚭搴撶珯鐘舵�� - if ((staProtocol.isAutoing() && !staProtocol.isLoading() && staDetl.getCanouting() != null && staDetl.getCanouting().equals("Y") - && staProtocol.getWorkNo() == 0 && staProtocol.isOutEnable()) - || (staProtocol.getSiteId() == 1056 && staProtocol.isAutoing() && staDetl.getCanouting() != null && staDetl.getCanouting().equals("Y"))) { + if (staProtocol.isAutoing() && staDetl.getCanouting() != null && staDetl.getCanouting().equals("Y") && + (crnAvailableOut || !staProtocol.isLoading() && staProtocol.getWorkNo() == 0 && staProtocol.isOutEnable())) { // 鍫嗗灈鏈烘帶鍒惰繃婊� if (!crnProtocol.getStatusType().equals(CrnStatusType.IDLE) || crnProtocol.getTaskNo() != 0) { break; @@ -1189,6 +1193,9 @@ // 鑾峰彇鍫嗗灈鏈轰俊鎭� CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, crn.getId()); CrnProtocol crnProtocol = crnThread.getCrnProtocol(); + if(crnProtocol == null) { + continue; + } if (crnProtocol.getStatusType() == CrnStatusType.IDLE && crnProtocol.getTaskNo() == 0 && crnProtocol.getModeType() == CrnModeType.AUTO && crnProtocol.getLoaded() == 0 && crnProtocol.getForkPos() == 0) { // 鍒ゆ柇鏄笉鏄凡鍦ㄥ師鐐� @@ -1203,8 +1210,13 @@ Date now = new Date(); Date modiTime = basCrnp.getModiTime(); long diffInMillis = now.getTime()-modiTime.getTime(); - if(diffInMillis < 3 * 60 * 1000) { + if(diffInMillis < 10 * 1000) { // 绌洪棽灏忎簬10绉掑垯璺宠繃 continue; + } else { // 鏈夊叆搴撲换鍔℃垨澶т簬2鍒嗛挓锛屽洖鍘熺偣 + int count = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("io_type", 1).eq("crn_no", crn.getId()).in("wrk_sts", 2, 9, 10)); + if(count == 0 && diffInMillis < 2 * 60 * 1000) { + continue; + } } // 鏈夊悐杞﹀叆搴撴垨鍚婅溅鍑哄簱浠诲姟 @@ -2032,7 +2044,7 @@ if (wantBucket.getWantBucketCount() == 1) { // 鏈�鍚庡墿涓�鎷栫殑鏃跺�� log.info("{}鑷姩琛ョ┖妗跺墿鏈�鍚庝竴鎵橈紝缃愯绾胯妗跺瀷淇℃伅锛歿},姝e湪鎵ц浠诲姟鏁帮細{}", wantBucket.getSite(), wantBucket.getBucketType(), count); - if (wantBucket.getSite() == 1071 && count <= 3 || wantBucket.getSite() == 1064 && count == 1 || wantBucket.getSite() == 1078 && count <= 3) { // 鍙互鍑轰竴涓� + if (wantBucket.getSite() == 1071 && count <= 3 || wantBucket.getSite() == 1064 && count <= 1 || wantBucket.getSite() == 1078 && count <= 3) { // 鍙互鍑轰竴涓� List<LocDetl> locDetlList = locDetlService.selectListByMatnr(wantBucket.getBucketType()); if (locDetlList.size() == 0) { log.warn("鑷姩鍑虹┖妗舵渶鍚庝竴涓紝搴撳瓨鏃犳暟鎹�"); @@ -2190,8 +2202,8 @@ } } } - log.info("娌℃湁鎴愬鐨勭┖妗剁粍锛屽彧鑳戒竴涓竴涓嚭"); if (locDetlList.size() > 0) { + log.info("娌℃湁鎴愬鐨勭┖妗剁粍锛屽彧鑳戒竴涓竴涓嚭"); try { LocDetl locDetl = locDetlList.get(0); StockOutParam param = new StockOutParam(); -- Gitblit v1.9.1