From 101cfc49ea24c1e340bed920f411b7fd30b71554 Mon Sep 17 00:00:00 2001 From: pang.jiabao <pang_jiabao@163.com> Date: 星期四, 25 七月 2024 19:12:21 +0800 Subject: [PATCH] 屏蔽中扬logo --- src/main/java/com/zy/service/impl/MainServiceImpl.java | 212 ++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 184 insertions(+), 28 deletions(-) diff --git a/src/main/java/com/zy/service/impl/MainServiceImpl.java b/src/main/java/com/zy/service/impl/MainServiceImpl.java index 786003a..3562bc7 100644 --- a/src/main/java/com/zy/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/service/impl/MainServiceImpl.java @@ -127,7 +127,13 @@ // 灏哄妫�娴嬪紓甯� boolean back = false; String errMsg = ""; - if (staProtocol.isFrontErr()) { + if ((staProtocol.getSiteId() == 101 && devpThread.ioModeOf101 == IoModeType.PAKOUT_MODE) + ||(staProtocol.getSiteId() == 103 && devpThread.ioModeOf103 == IoModeType.PAKOUT_MODE) + ||(staProtocol.getSiteId() == 305 && devpThread.ioModeOf305 == IoModeType.PAKOUT_MODE)) { + errMsg = "褰撳墠涓哄嚭搴撴ā寮�"; + back = true; + } + if (!back && staProtocol.isFrontErr()) { errMsg = "鍓嶈秴闄�"; back = true; } @@ -289,7 +295,7 @@ } // // 鍏ュ嚭搴撴ā寮忓垽鏂� - if (inSta.getStaNo() == 203 && devpThread.ioModeOf2F != IoModeType.PAKIN_MODE) { + if (inSta.getStaNo() == 203 && devpThread.ioModeOf101 != IoModeType.PAKIN_MODE) { continue; } @@ -687,6 +693,9 @@ // 鏇存柊宸ヤ綔妗g姸鎬佷负14澶辫触 wrkMast.setWrkSts(14L); + if (wrkMast.getStaNo() == 104 && wrkMast.getWrkSts() == 12L) { + wrkMast.setWrkSts(16L); + } wrkMast.setCrnEndTime(new Date()); if (wrkMastMapper.updateById(wrkMast) != 0) { // 澶嶄綅鍫嗗灈鏈� @@ -859,7 +868,7 @@ continue; } // 鑾峰彇宸ヤ綔鐘舵�佷负2锛堣澶囦笂璧帮級鐨勫叆搴撳伐浣滄。 - WrkMast wrkMast = wrkMastMapper.selectPakInStep2(slave.getId(), staProtocol.getWorkNo().intValue(), crnStn.getStaNo()); + WrkMast wrkMast = wrkMastMapper.selectPakInStep2(slave.getId(), staProtocol.getWorkNo(), crnStn.getStaNo()); if (null == wrkMast) { News.infoNoLog(""+mark+" - 1"+" - 4"+" - 鏌ヨ鏃犲緟鍏ュ簱鏁版嵁--wrk_sts=2, 宸ヤ綔鍙�={}", staProtocol.getWorkNo()); // log.error("鏌ヨ鏃犲緟鍏ュ簱鏁版嵁--wrk_sts=2, 宸ヤ綔鍙�={}", staProtocol.getWorkNo()); @@ -1017,6 +1026,12 @@ // News.infoNoLog(""+mark+" - 2"+" - 4"+" - 鍏ュ嚭搴撴ā寮忥紙姝ゅ鍑哄簱鏂规硶锛屽嚭搴撴ā寮忕户缁�=="+devpThread.ioModeOf2F); // continue; // } + // 鍏ュ嚭搴撴ā寮忓垽鏂� + if ((staProtocol.getSiteId() == 101 && devpThread.ioModeOf101 != IoModeType.PAKOUT_MODE) + || (staProtocol.getSiteId() == 103 && devpThread.ioModeOf103 != IoModeType.PAKOUT_MODE) + || (staProtocol.getSiteId() == 305 && devpThread.ioModeOf305 != IoModeType.PAKOUT_MODE)) { + continue; + } // 鏌ヨ绔欑偣璇︾粏淇℃伅 BasDevp staDetl = basDevpService.selectById(crnStn.getStaNo()); @@ -1089,6 +1104,9 @@ if (wrkMastMapper.selectWorking(slave.getId()) != null) { break; // return; + } + if(crnStn.getStaNo() == 105) { + continue; } News.warnNoLog(""+mark+" - 2"+" - 12"+" - 鍛戒护涓嬪彂 : 宸ヤ綔鍙�={},婧愭帓={},婧愬垪={},婧愬眰={},鐩爣鎺�={},鐩爣鍒�={},鐩爣灞�={}",wrkMast.getWrkNo().shortValue() @@ -2119,47 +2137,61 @@ // 鏍规嵁杈撻�佺嚎plc閬嶅巻 for (DevpSlave devp : slaveProperties.getDevp()) { SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId()); - - for (DevpSlave.Sta inSta : devp.getInSta()) { - if (inSta.getStaNo() == 2) { - continue; - } - WrkMast pakout = wrkMastMapper.selectWorkingPakout(inSta.getStaNo()); - switch (inSta.getStaNo()) { - case 203://1F + Integer[] staNos; + if (devp.getId() == 1) { + staNos = new Integer[]{101, 103}; + }else { + staNos = new Integer[]{305}; + } + for (Integer staNo : staNos) { + WrkMast pakout = wrkMastMapper.selectWorkingPakout(staNo); + switch (staNo) { + case 101://1F if (pakout != null) { - if (devpThread.ioModeOf2F != IoModeType.PAKOUT_MODE) { + if (devpThread.ioModeOf101 != IoModeType.PAKOUT_MODE) { // 鍑哄簱鍒囨崲涓� - devpThread.ioModeOf2F = IoModeType.PAKOUT_BOOTING; - WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo()); - if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading() - && !devpThread.getStation().get(inSta.getStaNo() + 1).isLoading() - && devpThread.getStation().get(inSta.getStaNo() + 1).getWorkNo() == 0) { + devpThread.ioModeOf101 = IoModeType.PAKOUT_BOOTING; + WrkMast pakin = wrkMastMapper.selectWorkingPakin(staNo); + if (pakin == null) { // 鍑哄簱妯″紡 - devpThread.ioModeOf2F = IoModeType.PAKOUT_MODE; + devpThread.ioModeOf101 = IoModeType.PAKOUT_MODE; } } } else { // 鍏ュ簱妯″紡 - devpThread.ioModeOf2F = IoModeType.PAKIN_MODE; + devpThread.ioModeOf101 = IoModeType.PAKIN_MODE; } break; - case 401://1F + case 103://1F if (pakout != null) { - if (devpThread.ioModeOf4F != IoModeType.PAKOUT_MODE) { + if (devpThread.ioModeOf103 != IoModeType.PAKOUT_MODE) { // 鍑哄簱鍒囨崲涓� - devpThread.ioModeOf4F = IoModeType.PAKOUT_BOOTING; - WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo()); - if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading() - && !devpThread.getStation().get(inSta.getStaNo() + 1).isLoading() - && devpThread.getStation().get(inSta.getStaNo() + 1).getWorkNo() == 0) { + devpThread.ioModeOf103 = IoModeType.PAKOUT_BOOTING; + WrkMast pakin = wrkMastMapper.selectWorkingPakin(staNo); + if (pakin == null) { // 鍑哄簱妯″紡 - devpThread.ioModeOf4F = IoModeType.PAKOUT_MODE; + devpThread.ioModeOf103 = IoModeType.PAKOUT_MODE; } } } else { // 鍏ュ簱妯″紡 - devpThread.ioModeOf4F = IoModeType.PAKIN_MODE; + devpThread.ioModeOf103 = IoModeType.PAKIN_MODE; + } + break; + case 305://1F + if (pakout != null) { + if (devpThread.ioModeOf305 != IoModeType.PAKOUT_MODE) { + // 鍑哄簱鍒囨崲涓� + devpThread.ioModeOf305 = IoModeType.PAKOUT_BOOTING; + WrkMast pakin = wrkMastMapper.selectWorkingPakin(staNo); + if (pakin == null) { + // 鍑哄簱妯″紡 + devpThread.ioModeOf305 = IoModeType.PAKOUT_MODE; + } + } + } else { + // 鍏ュ簱妯″紡 + devpThread.ioModeOf305 = IoModeType.PAKIN_MODE; } break; } @@ -2174,6 +2206,10 @@ } + /** + * 骞舵澘锛屾嫞鏂欙紝鐩樼偣鍑哄簱锛岀姸鎬佷负14.宸插嚭搴撴湭纭锛屾洿鏂癱tnNo涓篩 + * @param mark 鏍囪瘑 + */ public synchronized void outOfDevp(Integer mark) { List<WrkMast> wrkMasts = wrkMastMapper.selectPick(); @@ -2962,4 +2998,124 @@ } } + /** + * 鍒ゆ柇106绔欑偣鐘舵�侊紝鏈夌墿+鏈変换鍔″彿锛屽垯鐢熸垚绉诲簱浠诲姟 + */ + public synchronized void generateOutbound() { + WrkMast wrkMast = wrkMastMapper.selectBy104(); + if (wrkMast == null) { + return; + } + BasCrnp basCrnp = basCrnpService.selectById(1); + if (!basCrnp.getInEnable().equals("Y") && !basCrnp.getOutEnable().equals("Y")) { + return; + } + CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, 1); + CrnProtocol crnProtocol = crnThread.getCrnProtocol(); + if (crnProtocol == null) { + return; + } + // 鍫嗗灈鏈烘帶鍒惰繃婊� + if (!crnProtocol.getStatusType().equals(CrnStatusType.IDLE) || crnProtocol.getTaskNo() != 0) { + return; + } + + // 宸茬粡瀛樺湪鍚婅溅鎵ц浠诲姟鏃讹紝鍒欒繃婊� + if (wrkMastMapper.selectWorking(1) != null) { + return; + } + + LocMast sourceSta = locMastService.selectById(wrkMast.getSourceLocNo()); + // 1.鍫嗗灈鏈哄紑濮嬬Щ鍔� + CrnCommand crnCommand = new CrnCommand(); + crnCommand.setCrnNo(1); // 鍫嗗灈鏈虹紪鍙� + crnCommand.setTaskNo(wrkMast.getWrkNo().shortValue()); // 宸ヤ綔鍙� +// crnCommand.setAckFinish((short) 0); // 浠诲姟瀹屾垚纭浣� + crnCommand.setTaskMode(CrnTaskModeType.LOC_MOVE); // 浠诲姟妯″紡: 搴撲綅绉昏浆 + crnCommand.setSourcePosX(sourceSta.getRow1().shortValue()); // 婧愬簱浣嶆帓 + crnCommand.setSourcePosY(sourceSta.getBay1().shortValue()); // 婧愬簱浣嶅垪 + crnCommand.setSourcePosZ(sourceSta.getLev1().shortValue()); // 婧愬簱浣嶅眰 + crnCommand.setDestinationPosX((short) 3); // 鐩爣搴撲綅鎺� + crnCommand.setDestinationPosY((short) 3); // 鐩爣搴撲綅鍒� + crnCommand.setDestinationPosZ((short) 1); // 鐩爣搴撲綅灞� + crnCommand.setTraySize(sourceSta.getLocType1() == 2); //搴撲綅绫诲瀷 + if (!MessageQueue.offer(SlaveType.Crn, wrkMast.getCrnNo(), new Task(2, crnCommand))) { + News.error("鍒�106绔欑偣鍫嗗灈鏈哄懡浠や笅鍙戝け璐ワ紝鍫嗗灈鏈哄彿={}锛屼换鍔℃暟鎹�={}", wrkMast.getCrnNo(), JSON.toJSON(crnCommand)); + } else { + // 淇敼宸ヤ綔妗g姸鎬� 11.鐢熸垚鍑哄簱ID => 12.鍚婅溅鍑哄簱涓� + Date now = new Date(); + wrkMast.setWrkSts(12L); + wrkMast.setCrnStrTime(now); + wrkMast.setModiTime(now); + if (wrkMastMapper.updateById(wrkMast) == 0) { + News.error("鍒�106绔欑偣淇敼宸ヤ綔妗g姸鎬� 11.鐢熸垚鍑哄簱ID => 12.鍚婅溅鍑哄簱涓� 澶辫触锛侊紒锛屽伐浣滃彿={}", wrkMast.getWrkNo()); + } + } + + } + + public synchronized void autoMoveLoc() { + WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_sts", 16L)); + + // 鍒ゆ柇婧愮珯鐐规儏鍐� 鏈変换鍔″彿锛屾湁鐗╋紝鑷姩 + SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1); + StaProtocol staProtocol106 = devpThread.getStation().get(106); + StaProtocol staProtocol105 = devpThread.getStation().get(105); + if (staProtocol106 == null) { + return; + } else { + staProtocol106 = staProtocol106.clone(); + } + if (staProtocol105 == null) { + return; + } else { + staProtocol105 = staProtocol105.clone(); + } + + + // 鍒ゆ柇鍑哄簱绔欑偣鎯呭喌 + + + // 鑾峰彇鍫嗗灈鏈轰俊鎭� 骞� 鍒ゆ柇鏄惁鍙叆鍑� + CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, 2); + CrnProtocol crnProtocol = crnThread.getCrnProtocol(); + if (crnProtocol == null) { + return; + } + BasCrnp basCrnp = basCrnpService.selectById(2); + if (!basCrnp.getInEnable().equals("Y") && !basCrnp.getOutEnable().equals("Y")) { + return; + } + + // 鍫嗗灈鏈烘帶鍒惰繃婊� + if (!crnProtocol.getStatusType().equals(CrnStatusType.IDLE) || crnProtocol.getTaskNo() != 0) { + return; + } + + // 宸茬粡瀛樺湪鍚婅溅鎵ц浠诲姟鏃讹紝鍒欒繃婊� + if (wrkMastMapper.selectWorking(2) != null) { + return; + } + // 鍛戒护涓嬪彂鍖� -------------------------------------------------------------------------- + CrnCommand crnCommand = new CrnCommand(); + crnCommand.setCrnNo(2); // 鍫嗗灈鏈虹紪鍙� + crnCommand.setTaskNo(wrkMast.getWrkNo().shortValue()); // 宸ヤ綔鍙� + crnCommand.setAckFinish((short) 0); // 浠诲姟瀹屾垚纭浣� + crnCommand.setTaskMode(CrnTaskModeType.LOC_MOVE); // 浠诲姟妯″紡: 搴撲綅绉昏浆 + crnCommand.setSourcePosX((short) 6); // 婧愬簱浣嶆帓 + crnCommand.setSourcePosY((short) 3); // 婧愬簱浣嶅垪 + crnCommand.setSourcePosZ((short) 1); // 婧愬簱浣嶅眰 + crnCommand.setDestinationPosX((short) 7); // 鐩爣搴撲綅鎺� + crnCommand.setDestinationPosY((short) 28); // 鐩爣搴撲綅鍒� + crnCommand.setDestinationPosZ((short) 1); // 鐩爣搴撲綅灞� + crnCommand.setTraySize(true); //搴撲綅绫诲瀷 + if (!MessageQueue.offer(SlaveType.Crn, wrkMast.getCrnNo(), new Task(2, crnCommand))) { + News.error("106绉诲簱2鍙峰爢鍨涙満鍛戒护涓嬪彂澶辫触锛屽爢鍨涙満鍙�={}锛屼换鍔℃暟鎹�={}", wrkMast.getCrnNo(), JSON.toJSON(crnCommand)); + } +// else { +// wrkMast.setCrnNo(2); +// wrkMastMapper.updateById(wrkMast); +// } + News.infoNoLog("106绉诲簱2鍙峰爢鍨涙満鍏ュ嚭搴撲綔涓氫笅鍙戯細搴撲綅绉昏浆瀹屾垚"); + } } -- Gitblit v1.9.1