From 0a78e1b883668873f5fc4f33866fc4bb64a4f473 Mon Sep 17 00:00:00 2001
From: 18516761980 <56479841@qq.com>
Date: 星期四, 11 八月 2022 12:33:01 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |  100 ++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 92 insertions(+), 8 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 40fe286..e72a8fe 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -9,15 +9,13 @@
 import com.core.exception.CoolException;
 import com.zy.asrs.entity.*;
 import com.zy.asrs.mapper.BasCrnErrorMapper;
+import com.zy.asrs.mapper.TestMastMapper;
 import com.zy.asrs.mapper.WaitPakinMapper;
 import com.zy.asrs.mapper.WrkMastMapper;
 import com.zy.asrs.service.*;
 import com.zy.asrs.utils.Utils;
 import com.zy.asrs.utils.VersionUtils;
-import com.zy.common.model.LocTypeDto;
-import com.zy.common.model.MatDto;
-import com.zy.common.model.SearchLocParam;
-import com.zy.common.model.StartupDto;
+import com.zy.common.model.*;
 import com.zy.common.service.CommonService;
 import com.zy.common.utils.CollectionUtils;
 import com.zy.common.utils.HttpHandler;
@@ -87,9 +85,14 @@
     private BasErrLogService basErrLogService;
     @Autowired
     private BasCrnErrorMapper basCrnErrorMapper;
+    @Autowired
+    private TestMastService testMastService;
 
     @Value("${wms.url}")
     private String wmsUrl;
+
+    @Value("${test.url}")
+    private String testUrl;
 
     /**
      * 缁勬墭
@@ -561,7 +564,7 @@
             }
             // 搴撲綅绉昏浆
             this.locToLoc(crn, crnProtocol);
-            this.crnRebackHp(crnProtocol, crnThread);
+//            this.crnRebackHp(crnProtocol, crnThread);
 
         }
     }
@@ -601,6 +604,7 @@
                 if (wrkMastMapper.selectDevWorking(crnProtocol.getCrnNo()) == null) {
                     return;
                 }
+
                 log.info("鍫嗗灈鏈哄彫鍥炲師鐐�==>>" + crnProtocol.getCrnNo() + "鍙峰爢鍨涙満鏈夊叆搴撲换鍔�,鍙洖鍘熺偣");
                 // 鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
                 CrnCommand crnCommand = new CrnCommand();
@@ -1499,7 +1503,7 @@
                 }
             }
             // 鑾峰彇led绾跨▼
-            LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, led.getDevpPlcId());
+            LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, led.getId());
             // led鏄剧ず榛樿鍐呭
             if (reset && !ledThread.isLedMk()) {
                 ledThread.setLedMk(true);
@@ -1885,8 +1889,6 @@
         } catch (Exception e) {
             e.printStackTrace();
         }
-
-
     }
 
     public void outOfDevp() {
@@ -1902,5 +1904,87 @@
         }
     }
 
+    /**
+     * 鏍规嵁PLC鎸夐挳娴嬭瘯淇″彿锛屽彂閫佸惎鍔ㄧ敵璇峰埌娴嬭瘯绯荤粺
+     */
+    @Transactional
+    public void startTest() {
+        try {
+            // 鏍规嵁杈撻�佺嚎plc閬嶅巻
+            for (DevpSlave devp : slaveProperties.getDevp()) {
+                SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
+                if(null != devpThread){
+                    int channel = 0;
+                    for (int i = 0; i < 4; i++){
+                        switch (i){
+                            case 0:
+                                channel = devpThread.startSignal1;
+                                break;
+                            case 1:
+                                channel = devpThread.startSignal2;
+                                break;
+                            case 2:
+                                channel = devpThread.startSignal3;
+                                break;
+                            case 3:
+                                channel = devpThread.startSignal4;
+                                break;
+                        }
+                        if (channel == 1){
+                            TestMast testMast = testMastService.selectOne(new EntityWrapper<TestMast>()
+                                    .eq("channel",(i+1)).eq("status",0));
+                            if(null != testMast){
+                                Date now = new Date();
+                                //http璇锋眰娴嬭瘯
+                                TestDto testDto = new TestDto();
+                                testDto.setLocNo(testMast.getLocNo());
+                                testDto.setBarcode(testMast.getBarcode());
+                                testDto.setUserId(testMast.getUserId());
+                                testDto.setRequestTime(DateUtils.convert(now));
+                                String response = new HttpHandler.Builder()
+                                        .setUri(testUrl)
+                                        .setPath("/testUrlPath")
+                                        .setJson(JSON.toJSONString(testDto))
+                                        .build()
+                                        .doPost();
+                                JSONObject jsonObject = JSON.parseObject(response);
+                                if (jsonObject.getInteger("code").equals(200)) {
+                                    //鏇存柊娴嬭瘯琛ㄧ姸鎬�
+                                    testMast.setStatus(1);
+                                    testMast.setModiTime(now);
+                                    if(!testMastService.update(testMast,new EntityWrapper<TestMast>()
+                                            .eq("channel",1).eq("status",0))){
+                                        throw new CoolException("鏇存柊浜у搧娴嬭瘯鐘舵�佸け璐�");
+                                    }
+//                                    //鏇存柊搴撲綅鐘舵�侊紝閿佸畾pack鐘舵�侊紝绂佹鍏ュ嚭搴撲綔涓�
+//                                    LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no",testMast.getLocNo()));
+//                                    if(null != locMast){
+//                                        locMast.setPackStatus(2);//娴嬭瘯涓�
+//                                        locMast.setModiTime(now);
+//                                        if(!locMastService.update(locMast,new EntityWrapper<LocMast>().eq("loc_no",testMast.getLocNo()))){
+//                                            throw new CoolException("浜у搧寮�濮嬫祴璇曪紝鏇存柊鐩爣搴撲綅閿佸畾鐘舵�佸け璐�");
+//                                        }
+//                                    }
+                                    //澶嶄綅PLC淇″彿
+                                    boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, i*2));
+                                } else {
+                                    log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿},request锛歿},response锛歿}", testUrl+"/rpc/pakin/loc/v1", JSON.toJSONString(testDto), response);
+                                }
+
+                            }
+                        }
+
+                    }
+
+                }
+
+            }
+
+        } catch (Exception e) {
+            log.error("鍚姩娴嬭瘯  ===>> 鍚姩娴嬭瘯澶辫触", e);
+            e.printStackTrace();
+            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+        }
+    }
 
 }

--
Gitblit v1.9.1