From a3c02cce59d7dfa56f8725ac0510609edd554e22 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?LAPTOP-S9HJSOEB=5C=E6=98=8A=E5=A4=A9?= Date: Fri, 19 Jan 2024 14:58:09 +0800 Subject: [PATCH] =?UTF-8?q?1.=E9=80=86=E5=BA=8F=E6=8E=92=E5=88=97=E7=9B=98?= =?UTF-8?q?=E7=82=B9=E4=BF=A1=E6=81=AF=202.=E4=BF=AE=E6=94=B9=E7=9B=98?= =?UTF-8?q?=E7=82=B9=E4=BF=A1=E6=81=AF=EF=BC=8C=E5=88=A0=E9=99=A4sc?= =?UTF-8?q?=E6=94=B9=E4=B8=BAe=203.=E5=8D=B3=E4=BD=BF=E7=AE=97=E6=B3=95?= =?UTF-8?q?=E6=9C=AA=E8=BF=94=E5=9B=9E=E4=B9=9F=E6=9C=89=E8=BF=94=E5=9B=9E?= =?UTF-8?q?=E7=BB=99=E6=98=86=E8=88=B9=E7=9A=84=E4=BB=A3=E7=A0=81=204.?= =?UTF-8?q?=E5=93=81=E8=A7=84=E5=8F=AA=E4=BD=BF=E7=94=A8=E5=89=8D=E9=83=A8?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=205.=E8=87=AA=E5=8A=A8=E9=87=8D=E8=BF=9E?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zhehekeji/web/service/CheckLogService.java | 3 ++- .../com/zhehekeji/web/service/PlcService.java | 2 +- .../zhehekeji/web/service/client/Decoder.java | 7 ++----- .../service/client/GetPhotoDelayExecutor.java | 18 ++++++++++++++++-- .../web/service/client/TransmissionPojo.java | 2 +- .../web/service/ksec/KsecNettyClient.java | 7 +------ 6 files changed, 23 insertions(+), 16 deletions(-) diff --git a/web/src/main/java/com/zhehekeji/web/service/CheckLogService.java b/web/src/main/java/com/zhehekeji/web/service/CheckLogService.java index a28069b..e29982e 100644 --- a/web/src/main/java/com/zhehekeji/web/service/CheckLogService.java +++ b/web/src/main/java/com/zhehekeji/web/service/CheckLogService.java @@ -39,7 +39,8 @@ public class CheckLogService { .eq(search.getLeftRight() != null && search.getLeftRight() > 0, "`direction`", search.getLeftRight()) .eq(search.getSide() != null && search.getSide() > 0, "`side`", search.getSide()) .eq(search.getRow() != null && search.getRow() > 0, "`row`", search.getRow()) - .eq(search.getColumn() != null && search.getColumn() > 0, "`column`", search.getColumn()); + .eq(search.getColumn() != null && search.getColumn() > 0, "`column`", search.getColumn()) + .orderByDesc("create_time"); List stockChecks = checkLogMapper.selectList(wrapper); for (CheckLog checkLog :stockChecks){ diff --git a/web/src/main/java/com/zhehekeji/web/service/PlcService.java b/web/src/main/java/com/zhehekeji/web/service/PlcService.java index a7c5f54..4586cd8 100644 --- a/web/src/main/java/com/zhehekeji/web/service/PlcService.java +++ b/web/src/main/java/com/zhehekeji/web/service/PlcService.java @@ -732,7 +732,7 @@ public class PlcService { ksecDataInfo.setLotnum(checkLog.getLotnum()); - KsecInfo ksecInfo = new KsecInfo("KC", "SC", ksecDataInfo); + KsecInfo ksecInfo = new KsecInfo("KC", "E", ksecDataInfo); return ksecInfo; } } diff --git a/web/src/main/java/com/zhehekeji/web/service/client/Decoder.java b/web/src/main/java/com/zhehekeji/web/service/client/Decoder.java index a2dc126..cead4f4 100644 --- a/web/src/main/java/com/zhehekeji/web/service/client/Decoder.java +++ b/web/src/main/java/com/zhehekeji/web/service/client/Decoder.java @@ -107,8 +107,6 @@ public class Decoder extends DelimiterBasedFrameDecoder { } //发送给上位机 - KsecInfo ksecInfo = plcService.getKsecDataInfo(transmissionPojo,"SC03"); - KsecNettyClient.write(ksecInfo); CameraDelayTask cameraDelayTask = GetPhotoDelayExecutor.getNext(transmissionPojo.getStreetNumber()); if (cameraDelayTask != null) { TransmissionPojo pojo = new TransmissionPojo(cameraDelayTask.getCommand()); @@ -119,16 +117,15 @@ public class Decoder extends DelimiterBasedFrameDecoder { else if(RETURN_CHECK.equals(transmissionPojo.getHeader())){ //保存数据 plcService.visualCalculationResults(transmissionPojo); - //发送给上位机 - KsecInfo ksecInfo = plcService.getKsecDataInfo(transmissionPojo,"SC04"); + KsecInfo ksecInfo = plcService.getKsecDataInfo(transmissionPojo,"E"); ksecInfo.getData().setTypeNum(transmissionPojo.getCategory()); ksecInfo.getData().setQuantity(transmissionPojo.getCount()); ksecInfo.getData().setCheckRlt(transmissionPojo.getResult()); - KsecNettyClient.write(ksecInfo); + } } } diff --git a/web/src/main/java/com/zhehekeji/web/service/client/GetPhotoDelayExecutor.java b/web/src/main/java/com/zhehekeji/web/service/client/GetPhotoDelayExecutor.java index c7b600d..b5f6ed6 100644 --- a/web/src/main/java/com/zhehekeji/web/service/client/GetPhotoDelayExecutor.java +++ b/web/src/main/java/com/zhehekeji/web/service/client/GetPhotoDelayExecutor.java @@ -1,7 +1,12 @@ package com.zhehekeji.web.service.client; +import com.zhehekeji.common.util.SpringContextUtil; +import com.zhehekeji.web.lib.CameraControlModule; import com.zhehekeji.web.lib.CameraDelayTask; import com.zhehekeji.web.lib.TaskDelayExecutor; +import com.zhehekeji.web.service.PlcService; +import com.zhehekeji.web.service.ksec.KsecInfo; +import com.zhehekeji.web.service.ksec.KsecNettyClient; import java.util.Map; import java.util.concurrent.*; @@ -47,12 +52,21 @@ public class GetPhotoDelayExecutor { private static class Consumer implements Runnable { + + @Override public void run() { while (true) { try { - - cameraDelayTasks.remove(cameraDelayTasks.take()); + PlcService plcService = SpringContextUtil.getBean(PlcService.class); + CameraDelayTask cameraDelayTask = cameraDelayTasks.take(); + TransmissionPojo transmissionPojo = new TransmissionPojo(cameraDelayTask.getCommand()); + //发送给上位机 + KsecInfo ksecInfo = plcService.getKsecDataInfo(transmissionPojo,"E"); + ksecInfo.getData().setTypeNum(transmissionPojo.getCategory()); + ksecInfo.getData().setQuantity(transmissionPojo.getCount()); + ksecInfo.getData().setCheckRlt(0); + KsecNettyClient.write(ksecInfo); } catch (InterruptedException e) { e.printStackTrace(); } diff --git a/web/src/main/java/com/zhehekeji/web/service/client/TransmissionPojo.java b/web/src/main/java/com/zhehekeji/web/service/client/TransmissionPojo.java index 28b372c..faa2c54 100644 --- a/web/src/main/java/com/zhehekeji/web/service/client/TransmissionPojo.java +++ b/web/src/main/java/com/zhehekeji/web/service/client/TransmissionPojo.java @@ -29,7 +29,7 @@ public class TransmissionPojo { this.taskId = checkLog.getLotnum(); this.direction = checkLog.getDirection(); this.count = checkLog.getCount(); - this.category = checkLog.getCategory(); + this.category = checkLog.getCategory().split("/")[0]; } public String toString(TransmissionType type) { diff --git a/web/src/main/java/com/zhehekeji/web/service/ksec/KsecNettyClient.java b/web/src/main/java/com/zhehekeji/web/service/ksec/KsecNettyClient.java index 9571bd7..9cfb14a 100644 --- a/web/src/main/java/com/zhehekeji/web/service/ksec/KsecNettyClient.java +++ b/web/src/main/java/com/zhehekeji/web/service/ksec/KsecNettyClient.java @@ -67,7 +67,7 @@ public class KsecNettyClient { } catch (InterruptedException e) { e.printStackTrace(); } - while (ksec.getReconnectNum() == -1 || num < ksec.getReconnectNum() && !isConnected) { + while ((ksec.getReconnectNum() == -1 || num < ksec.getReconnectNum()) && !isConnected) { if (channel != null) { channel.close(); } @@ -87,11 +87,6 @@ public class KsecNettyClient { log.error("reconnect error num:{}", num); //关闭当前链接 num++; -// try{ -// Thread.sleep(ksec.getReconnectInterval()); -// }catch (Exception ex){ -// throw new RuntimeException(ex); -// } continue; } isConnected = true;