From 3ad10a6c23f8a0d8bcf7401cff20c563b21aa461 Mon Sep 17 00:00:00 2001 From: LSH Date: 星期日, 17 九月 2023 18:13:08 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 120 +++++++++++++++++++++++++++++++++++++++ src/main/java/com/zy/asrs/mapper/WrkMastMapper.java | 6 ++ src/main/resources/mapper/WrkMastMapper.xml | 8 ++ src/main/java/com/zy/core/MainProcess.java | 4 + 4 files changed, 136 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java b/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java index 40b002b..887a810 100644 --- a/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java +++ b/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java @@ -248,6 +248,12 @@ // int updateConfig10468Y(); /*=========================================== 鑷姩琛ョ┖鏉跨浉鍏� ========================================*/ + /** + * 鏌ユ壘鏄惁瀛樺湪鎷嗗灈鍗曟瀹屾垚鐨勫伐浣滄。 + */ + WrkMast selectWrkMastUnstackingOne202(@Param("sourceStaNo")Integer sourceStaNo); + + WrkMast selectWrkMastLabelingOne54(); 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 d218b19..5cb274b 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -3277,7 +3277,7 @@ */ public synchronized void stackingCompletionDriveTray() { try { - int[] staNos=new int[]{216,220}; + int[] staNos=new int[]{216,220,123};//(3涓叆搴撶珯鐐癸紝1妤�1涓��璐х爜鍨涚珯锛�2妤间袱涓叆搴撶爜鍨涚珯) for (int staNo : staNos){ BasDevp basDevp = basDevpService.selectById(staNo); if (basDevp.getWrkNo()!=9992 || Cools.isEmpty(basDevp.getBarcode())){ @@ -3303,7 +3303,7 @@ // } if (!staProtocol.isLoading()){ - log.info("绔欑偣鏃犵墿锛屾鍦ㄨ嚜鍔ㄨ皟鍑虹┖鏉匡紒"); + log.info("{}绔欑偣鏃犵墿锛屾鍦ㄨ嚜鍔ㄨ皟鍑虹┖鏉匡紒",staNo); continue; } // 鍒ゆ柇鏄惁婊¤冻鍏ュ簱鏉′欢 @@ -3330,4 +3330,120 @@ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); } } + /** + * 鍏朵粬 ===>> 鐮佸灈瀹屾垚椹卞姩鎵樼洏杩涘叆涓嬩竴姝� + */ + public synchronized void stackingCompletionDriveTray2() { + try { + int[] staNos=new int[]{133,135};//(2涓叆搴撶珯鐐癸紝1妤�2涓嚭搴撶爜鍨涚珯,鏍规嵁鐜板満淇敼) + for (int staNo : staNos){ + BasDevp basDevp = basDevpService.selectById(staNo); + if (basDevp.getWrkNo()<9990){ + continue; + } + WrkMast wrkMast = wrkMastMapper.selectWrkMastUnstackingOne202(staNo); + if (Cools.isEmpty(wrkMast)){ + continue; + } + // 鑾峰彇绔欑偣淇℃伅 + SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1); + StaProtocol staProtocol = devpThread.getStation().get(staNo); + if (staProtocol == null) { + continue; + } else { + staProtocol = staProtocol.clone(); + } + + // 鍏ュ嚭搴撴ā寮忓垽鏂� +// if ( inSta.getStaNo()==203 && devpThread.ioModeOf2F != IoModeType.PAKIN_MODE) { continue; } +// if (inSta.getStaNo() == 203 && devpThread.ioModeOf2F == IoModeType.PAKOUT_MODE) { +// continue; +// } + + if (!staProtocol.isLoading()){ + log.info("{}绔欑偣鏃犵墿锛屽紓甯革紒",staNo); + continue; + } + // 鍒ゆ柇鏄惁婊¤冻鍏ュ簱鏉′欢 + if (staProtocol.isAutoing() + && staProtocol.isLoading() + && staProtocol.getWorkNo() >= 9990 + ) {//&& staProtocol.isPakMk() && !Cools.isEmpty(barcode)) { + + staProtocol.setWorkNo(wrkMast.getWrkNo().shortValue()); + staProtocol.setStaNo(wrkMast.getStaNo().shortValue()); + devpThread.setPakMk(staProtocol.getSiteId(), false); + boolean result = MessageQueue.offer(SlaveType.Devp, devpThread.getSlave().getId(), new Task(2, staProtocol)); + if (!result) { + throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触==>椹卞姩鐮佸灈浣嶆墭鐩樺墠杩涘け璐ワ紒"); + } + wrkMast.setWrkSts(52L); + wrkMastMapper.updateById(wrkMast); + + } + } + }catch (Exception e){ + e.printStackTrace(); + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + } + } + /** + * 鍏朵粬 ===>> 璐存爣瀹屾垚椹卞姩鎵樼洏杩涘叆涓嬩竴姝� + */ + public synchronized void stackingCompletionDriveTray3() { + try { + int[] staNos=new int[]{144};//(1妤�1涓创鏍囦綅,鏍规嵁鐜板満淇敼) + for (int staNo : staNos){ + BasDevp basDevp = basDevpService.selectById(staNo); + if (basDevp.getWrkNo()<9990){ + continue; + } + WrkMast wrkMast = wrkMastMapper.selectWrkMastUnstackingOne202(staNo); + if (Cools.isEmpty(wrkMast)){ + continue; + } + // 鑾峰彇绔欑偣淇℃伅 + SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1); + StaProtocol staProtocol = devpThread.getStation().get(staNo); + if (staProtocol == null) { + continue; + } else { + staProtocol = staProtocol.clone(); + } + + // 鍏ュ嚭搴撴ā寮忓垽鏂� +// if ( inSta.getStaNo()==203 && devpThread.ioModeOf2F != IoModeType.PAKIN_MODE) { continue; } +// if (inSta.getStaNo() == 203 && devpThread.ioModeOf2F == IoModeType.PAKOUT_MODE) { +// continue; +// } + + if (!staProtocol.isLoading()){ + log.info("{}绔欑偣鏃犵墿锛屽紓甯革紒",staNo); + continue; + } + if (!staProtocol.getWorkNo().equals(wrkMast.getWrkNo().shortValue())){ + log.info("绔欑偣宸ヤ綔鍙�={} 涓庤创鏍囧伐浣滃彿={} 涓嶄竴鑷达紝寮傚父锛�",staProtocol.getWorkNo(),wrkMast.getWrkNo().shortValue()); + } + // 鍒ゆ柇鏄惁婊¤冻鍏ュ簱鏉′欢 + if (staProtocol.isAutoing() + && staProtocol.isLoading() + ) {//&& staProtocol.isPakMk() && !Cools.isEmpty(barcode)) { + + staProtocol.setWorkNo(wrkMast.getWrkNo().shortValue()); + staProtocol.setStaNo(wrkMast.getStaNo().shortValue()); + devpThread.setPakMk(staProtocol.getSiteId(), false); + boolean result = MessageQueue.offer(SlaveType.Devp, devpThread.getSlave().getId(), new Task(2, staProtocol)); + if (!result) { + throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触==>椹卞姩鐮佸灈浣嶆墭鐩樺墠杩涘け璐ワ紒"); + } + wrkMast.setWrkSts(55L); + wrkMastMapper.updateById(wrkMast); + + } + } + }catch (Exception e){ + e.printStackTrace(); + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + } + } } diff --git a/src/main/java/com/zy/core/MainProcess.java b/src/main/java/com/zy/core/MainProcess.java index 521ba99..ab1cb60 100644 --- a/src/main/java/com/zy/core/MainProcess.java +++ b/src/main/java/com/zy/core/MainProcess.java @@ -112,6 +112,10 @@ //鐮佸灈瀹屾垚椹卞姩鎵樼洏涓嬩竴姝ユ壂鐮佸叆搴� mainService.stackingCompletionDriveTray(); + //鎷嗗灈瀹屾垚缁х画涓嬩竴姝� + mainService.stackingCompletionDriveTray2(); + //璐存爣瀹屾垚缁х画涓嬩竴姝� + mainService.stackingCompletionDriveTray3(); } catch (Exception e) { diff --git a/src/main/resources/mapper/WrkMastMapper.xml b/src/main/resources/mapper/WrkMastMapper.xml index 3c6872e..3b7c168 100644 --- a/src/main/resources/mapper/WrkMastMapper.xml +++ b/src/main/resources/mapper/WrkMastMapper.xml @@ -300,4 +300,12 @@ <!-- ==============================================鑷姩琛ョ┖鏉跨浉鍏� ============================================== --> + <select id="selectWrkMastUnstackingOne202" resultMap="BaseResultMap"> + SELECT top 1 * FROM dbo.asr_wrk_mast Where 1=1 and io_type=202 and wrk_sts =51 and source_sta_no = #{sourceStaNo} + </select> + + <select id="selectWrkMastLabelingOne54" resultMap="BaseResultMap"> + SELECT top 1 * FROM dbo.asr_wrk_mast Where 1=1 and io_type=202 and wrk_sts =54 + </select> + </mapper> -- Gitblit v1.9.1