From 2972d6852385b3c3efb64e10a736657833a39e53 Mon Sep 17 00:00:00 2001 From: lsh <lsh@163.com> Date: 星期二, 11 六月 2024 12:51:45 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 133 ++++++++++++++++++++++++++++--------------- 1 files changed, 86 insertions(+), 47 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java index 64ccc7f..d595267 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -32,6 +32,7 @@ import com.zy.core.model.command.CrnCommand; import com.zy.core.model.command.LedCommand; import com.zy.core.model.command.RgvCommand; +import com.zy.core.model.cpmmandParam.CrnCommandParam; import com.zy.core.model.protocol.CrnProtocol; import com.zy.core.model.protocol.RgvProtocol; import com.zy.core.model.protocol.StaProtocol; @@ -1697,8 +1698,6 @@ && crnProtocol.getTaskNo() == 0 && crnProtocol.getLoaded() == 0 && crnProtocol.getForkPos() == 0) { -// sign[0] = 1; -// sign[1] = 1; /* * 浠诲姟鎷嗗垎鐗规畩澶勭悊 * */ @@ -1709,16 +1708,10 @@ sign[0] = 1; sign[1] = 1; } - }else if (crnProtocol.getStatusTypeTwo() == CrnStatusType.IDLE - && crnProtocol.getTaskNoTwo() == 0 - && crnProtocol.getLoadedTwo() == 0 - && crnProtocol.getForkPosTwo() == 0){ - sign[0] = 1; - sign[1] = 2; } } - if (sign[0]==1 && sign[1] == 1){ + if (sign[0]==1){ // 濡傛灉鏈�杩戜竴娆℃槸鍏ュ簱妯″紡 if (crnProtocol.getLastIo().equals("I")) { if (basCrnp.getInEnable().equals("Y")) { @@ -3073,47 +3066,93 @@ // return; } - // 1.鍫嗗灈鏈哄紑濮嬬Щ鍔� - CrnCommand crnCommand = new CrnCommand(); - crnCommand.setCrnNo(slave.getId()); // 鍫嗗灈鏈虹紪鍙� - crnCommand.setTaskNo(wrkMast.getWrkNo().shortValue()); // 宸ヤ綔鍙� - crnCommand.setAckFinish((short) 0); // 浠诲姟瀹屾垚纭浣� - crnCommand.setTaskMode(CrnTaskModeType.SEPARATE_TAKE); // 浠诲姟妯″紡: 鍗曞彇璐� - crnCommand.setSourcePosX(sourceSta.getRow1().shortValue()); // 婧愬簱浣嶆帓 - crnCommand.setSourcePosY(sourceSta.getBay1().shortValue()); // 婧愬簱浣嶅垪 - crnCommand.setSourcePosZ(sourceSta.getLev1().shortValue()); // 婧愬簱浣嶅眰 - crnCommand.setDestinationPosX((short)0); // 鐩爣搴撲綅鎺� - crnCommand.setDestinationPosY((short)0); // 鐩爣搴撲綅鍒� - crnCommand.setDestinationPosZ((short)0); // 鐩爣搴撲綅灞� - if (!MessageQueue.offer(SlaveType.Crn, wrkMast.getCrnNo(), new Task(crnStation==1? 2:5, crnCommand))) { - log.error("鍫嗗灈鏈哄懡浠や笅鍙戝け璐ワ紝鍫嗗灈鏈哄彿={}锛屼换鍔℃暟鎹�={}", wrkMast.getCrnNo(), JSON.toJSON(crnCommand)); - } else { - // 淇敼宸ヤ綔妗g姸鎬� 11.鐢熸垚鍑哄簱ID => 12.鍚婅溅鍑哄簱涓� - Date now = new Date(); - wrkMast.setWrkSts(12L); - wrkMast.setCrnStrTime(now); - wrkMast.setModiTime(now); - WrkMastSplitTwin wrkMastSplitTwin = new WrkMastSplitTwin(wrkMast,crnStation,now); - wrkMastSplitTwin.setWrkSts(1); - wrkMastSplitTwin.setWrkStart(wrkMast.getSourceLocNo()); - wrkMastSplitTwin.setWrkEnd(wrkMast.getSourceStaNo().toString()); - wrkMastSplitTwin.setStartRow(sourceSta.getRow1()); - wrkMastSplitTwin.setStartBay(sourceSta.getBay1()); - wrkMastSplitTwin.setStartLev(sourceSta.getLev1()); - wrkMastSplitTwin.setEndRow(crnStn.getRow()); - wrkMastSplitTwin.setEndBay(crnStn.getBay()); - wrkMastSplitTwin.setEndLev(crnStn.getLev()); - wrkMastSplitTwin.setWrkType(1); - wrkMastSplitTwin.setIoType(2); - if (wrkMastMapper.updateById(wrkMast) == 0) { - log.error("淇敼宸ヤ綔妗g姸鎬� 11.鐢熸垚鍑哄簱ID => 12.鍚婅溅鍑哄簱涓� 澶辫触锛侊紒锛屽伐浣滃彿={}", wrkMast.getWrkNo()); - } + if (true){ + // 1.鍫嗗灈鏈哄紑濮嬬Щ鍔� + CrnCommand crnCommand = new CrnCommand(); + crnCommand.setCrnNo(slave.getId()); // 鍫嗗灈鏈虹紪鍙� + crnCommand.setTaskNo(wrkMast.getWrkNo().shortValue()); // 宸ヤ綔鍙� + crnCommand.setAckFinish((short) 0); // 浠诲姟瀹屾垚纭浣� + crnCommand.setTaskMode(CrnTaskModeType.SEPARATE_TAKE); // 浠诲姟妯″紡: 鍗曞彇璐� + crnCommand.setSourcePosX(sourceSta.getRow1().shortValue()); // 婧愬簱浣嶆帓 + crnCommand.setSourcePosY(sourceSta.getBay1().shortValue()); // 婧愬簱浣嶅垪 + crnCommand.setSourcePosZ(sourceSta.getLev1().shortValue()); // 婧愬簱浣嶅眰 + crnCommand.setDestinationPosX((short)0); // 鐩爣搴撲綅鎺� + crnCommand.setDestinationPosY((short)0); // 鐩爣搴撲綅鍒� + crnCommand.setDestinationPosZ((short)0); // 鐩爣搴撲綅灞� + if (!MessageQueue.offer(SlaveType.Crn, wrkMast.getCrnNo(), new Task(crnStation==1? 2:5, crnCommand))) { + log.error("鍫嗗灈鏈哄懡浠や笅鍙戝け璐ワ紝鍫嗗灈鏈哄彿={}锛屼换鍔℃暟鎹�={}", wrkMast.getCrnNo(), JSON.toJSON(crnCommand)); + } else { + // 淇敼宸ヤ綔妗g姸鎬� 11.鐢熸垚鍑哄簱ID => 12.鍚婅溅鍑哄簱涓� + Date now = new Date(); + wrkMast.setWrkSts(12L); + wrkMast.setCrnStrTime(now); + wrkMast.setModiTime(now); + WrkMastSplitTwin wrkMastSplitTwin = new WrkMastSplitTwin(wrkMast,crnStation,now); + wrkMastSplitTwin.setWrkSts(1); + wrkMastSplitTwin.setWrkStart(wrkMast.getSourceLocNo()); + wrkMastSplitTwin.setWrkEnd(wrkMast.getSourceStaNo().toString()); + wrkMastSplitTwin.setStartRow(sourceSta.getRow1()); + wrkMastSplitTwin.setStartBay(sourceSta.getBay1()); + wrkMastSplitTwin.setStartLev(sourceSta.getLev1()); + wrkMastSplitTwin.setEndRow(crnStn.getRow()); + wrkMastSplitTwin.setEndBay(crnStn.getBay()); + wrkMastSplitTwin.setEndLev(crnStn.getLev()); + wrkMastSplitTwin.setWrkType(1); + wrkMastSplitTwin.setIoType(2); + if (wrkMastMapper.updateById(wrkMast) == 0) { + log.error("淇敼宸ヤ綔妗g姸鎬� 11.鐢熸垚鍑哄簱ID => 12.鍚婅溅鍑哄簱涓� 澶辫触锛侊紒锛屽伐浣滃彿={}", wrkMast.getWrkNo()); + } - if (wrkMastSplitTwinMapper.insert(wrkMastSplitTwin)==0){ - log.error("鍒涘缓 鍫嗗灈鏈烘墽琛屼换鍔� 澶辫触锛侊紒锛屽伐浣滃彿={}锛屽爢鍨涙満鍙�={}", wrkMast.getWrkNo(),wrkMast.getCrnNo()); + if (wrkMastSplitTwinMapper.insert(wrkMastSplitTwin)==0){ + log.error("鍒涘缓 鍫嗗灈鏈烘墽琛屼换鍔� 澶辫触锛侊紒锛屽伐浣滃彿={}锛屽爢鍨涙満鍙�={}", wrkMast.getWrkNo(),wrkMast.getCrnNo()); + } + break; } - break; } +// else { +// // 1.鍫嗗灈鏈哄紑濮嬬Щ鍔� +// CrnCommandParam crnCommandParam = new CrnCommandParam(); +// CrnCommand crnCommand = new CrnCommand(); +// crnCommand.setCrnNo(slave.getId()); // 鍫嗗灈鏈虹紪鍙� +// crnCommand.setTaskNo(wrkMast.getWrkNo().shortValue()); // 宸ヤ綔鍙� +// crnCommand.setAckFinish((short) 0); // 浠诲姟瀹屾垚纭浣� +// crnCommand.setTaskMode(CrnTaskModeType.SEPARATE_TAKE); // 浠诲姟妯″紡: 鍗曞彇璐� +// crnCommand.setSourcePosX(sourceSta.getRow1().shortValue()); // 婧愬簱浣嶆帓 +// crnCommand.setSourcePosY(sourceSta.getBay1().shortValue()); // 婧愬簱浣嶅垪 +// crnCommand.setSourcePosZ(sourceSta.getLev1().shortValue()); // 婧愬簱浣嶅眰 +// crnCommand.setDestinationPosX((short)0); // 鐩爣搴撲綅鎺� +// crnCommand.setDestinationPosY((short)0); // 鐩爣搴撲綅鍒� +// crnCommand.setDestinationPosZ((short)0); // 鐩爣搴撲綅灞� +// if (!MessageQueue.offer(SlaveType.Crn, wrkMast.getCrnNo(), new Task(crnStation==1? 2:5, crnCommand))) { +// log.error("鍫嗗灈鏈哄懡浠や笅鍙戝け璐ワ紝鍫嗗灈鏈哄彿={}锛屼换鍔℃暟鎹�={}", wrkMast.getCrnNo(), JSON.toJSON(crnCommand)); +// } else { +// // 淇敼宸ヤ綔妗g姸鎬� 11.鐢熸垚鍑哄簱ID => 12.鍚婅溅鍑哄簱涓� +// Date now = new Date(); +// wrkMast.setWrkSts(12L); +// wrkMast.setCrnStrTime(now); +// wrkMast.setModiTime(now); +// WrkMastSplitTwin wrkMastSplitTwin = new WrkMastSplitTwin(wrkMast,crnStation,now); +// wrkMastSplitTwin.setWrkSts(1); +// wrkMastSplitTwin.setWrkStart(wrkMast.getSourceLocNo()); +// wrkMastSplitTwin.setWrkEnd(wrkMast.getSourceStaNo().toString()); +// wrkMastSplitTwin.setStartRow(sourceSta.getRow1()); +// wrkMastSplitTwin.setStartBay(sourceSta.getBay1()); +// wrkMastSplitTwin.setStartLev(sourceSta.getLev1()); +// wrkMastSplitTwin.setEndRow(crnStn.getRow()); +// wrkMastSplitTwin.setEndBay(crnStn.getBay()); +// wrkMastSplitTwin.setEndLev(crnStn.getLev()); +// wrkMastSplitTwin.setWrkType(1); +// wrkMastSplitTwin.setIoType(2); +// if (wrkMastMapper.updateById(wrkMast) == 0) { +// log.error("淇敼宸ヤ綔妗g姸鎬� 11.鐢熸垚鍑哄簱ID => 12.鍚婅溅鍑哄簱涓� 澶辫触锛侊紒锛屽伐浣滃彿={}", wrkMast.getWrkNo()); +// } +// +// if (wrkMastSplitTwinMapper.insert(wrkMastSplitTwin)==0){ +// log.error("鍒涘缓 鍫嗗灈鏈烘墽琛屼换鍔� 澶辫触锛侊紒锛屽伐浣滃彿={}锛屽爢鍨涙満鍙�={}", wrkMast.getWrkNo(),wrkMast.getCrnNo()); +// } +// break; +// } +// } } } -- Gitblit v1.9.1