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