diff --git a/web/src/main/java/com/zhehekeji/web/service/PlcCmdInfo.java b/web/src/main/java/com/zhehekeji/web/service/PlcCmdInfo.java index 76a183f..eed0c36 100644 --- a/web/src/main/java/com/zhehekeji/web/service/PlcCmdInfo.java +++ b/web/src/main/java/com/zhehekeji/web/service/PlcCmdInfo.java @@ -34,6 +34,8 @@ public class PlcCmdInfo { */ private Integer row1; + private Integer separation1; + /** * 后两个命令 库内?苦口? 1:库内 2:库口 */ @@ -54,11 +56,13 @@ public class PlcCmdInfo { */ private Integer row2; + private Integer separation2; + private String orderNum; private String plcId; - public PlcCmdInfo(String plcId, String taskId, Integer inOut1, Integer leftRight1, Integer column1, Integer row1, Integer inOut2, Integer leftRight2, Integer column2, Integer row2) { + public PlcCmdInfo(String plcId, String taskId, Integer inOut1, Integer leftRight1, Integer column1, Integer row1,Integer separation1, Integer inOut2, Integer leftRight2, Integer column2, Integer row2, Integer separation2) { this.taskId = taskId; this.inOut1 = inOut1; this.leftRight1 = leftRight1; @@ -70,6 +74,8 @@ public class PlcCmdInfo { this.row2 = row2; this.plcId = plcId; this.orderNum = plcId + "_" + taskId; + this.separation1 = separation1; + this.separation2 = separation2; } public String getLeftRightStr(int times) { 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 6bd27a9..0a64af5 100644 --- a/web/src/main/java/com/zhehekeji/web/service/PlcService.java +++ b/web/src/main/java/com/zhehekeji/web/service/PlcService.java @@ -132,9 +132,9 @@ public class PlcService { } - public void orderStopByWarn(String orderNum){ + public void orderStopByWarn(String orderNum) { Order order = orderMapper.getOneByOrderNum(orderNum); - if(order == null){ + if (order == null) { return; } Order upd = new Order(); @@ -146,7 +146,6 @@ public class PlcService { orderMapper.updateById(upd); } - public String cameraVideo(Integer cameraId, LocalDateTime startTime, LocalDateTime endTime) { String path = PathUtil.createFileName("mp4",cameraId); String realPath = configProperties.getSavePath().getMp4Path() + path; @@ -209,6 +208,16 @@ public class PlcService { } } + public void warnAction(PlcCmdInfo plcCmdInfo,String warnCode){ + Street street = streetService.getStreetByPlcId(plcCmdInfo.getPlcId()); + if(street.getCamera1Id() != null){ + gyrateCameraByCode(street.getCamera1Id(),warnCode); + } + if(street.getCamera2Id() != null){ + gyrateCameraByCode(street.getCamera2Id(),warnCode); + } + } + /** * need take a photo ?? * diff --git a/web/src/main/java/com/zhehekeji/web/service/ksec/KsecDataInfo.java b/web/src/main/java/com/zhehekeji/web/service/ksec/KsecDataInfo.java index 9436151..e2d1e68 100644 --- a/web/src/main/java/com/zhehekeji/web/service/ksec/KsecDataInfo.java +++ b/web/src/main/java/com/zhehekeji/web/service/ksec/KsecDataInfo.java @@ -7,29 +7,33 @@ public class KsecDataInfo { private String SRMNumber; - private String CmdName; + private String cmdName; - private String TaskId; + private String taskId; - private Integer FromAddrType; + private Integer fromColumn; - private Integer FromRow; + private Integer fromRow; - private Integer FromBay; + private Integer fromDirection; - private Integer FromLevel; + private Integer fromSide; - private Integer ToAddrType; + private Integer fromSeparation; - private Integer ToRow; + private Integer toColumn; - private Integer ToBay; + private Integer toRow; - private Integer ToLevel; + private Integer toDirection; + + private Integer toSide; + + private Integer toSeparation; private String code; - private String WarnCode; + private String warnCode; - private Integer AckStatus; + private Integer ackStatus; } diff --git a/web/src/main/java/com/zhehekeji/web/service/ksec/KsecDecoder.java b/web/src/main/java/com/zhehekeji/web/service/ksec/KsecDecoder.java index 5f9d063..731d80c 100644 --- a/web/src/main/java/com/zhehekeji/web/service/ksec/KsecDecoder.java +++ b/web/src/main/java/com/zhehekeji/web/service/ksec/KsecDecoder.java @@ -43,7 +43,7 @@ public class KsecDecoder extends DelimiterBasedFrameDecoder { String srmNumber = null; String cmdName = null; if(dataInfo != null){ - plcCmdInfo = new PlcCmdInfo(dataInfo.getSRMNumber(), dataInfo.getTaskId(), dataInfo.getFromAddrType(), dataInfo.getFromRow(), dataInfo.getFromBay(), dataInfo.getFromLevel(), dataInfo.getToAddrType(), dataInfo.getToRow(), dataInfo.getToBay(), dataInfo.getToLevel()); + plcCmdInfo = new PlcCmdInfo(dataInfo.getSRMNumber(), dataInfo.getTaskId(), dataInfo.getFromSide(), dataInfo.getFromDirection(), dataInfo.getFromColumn(), dataInfo.getFromRow(), dataInfo.getFromSeparation(),dataInfo.getToSide(), dataInfo.getToDirection(), dataInfo.getToColumn(), dataInfo.getToRow(),dataInfo.getToSeparation()); srmNumber = dataInfo.getSRMNumber(); cmdName = dataInfo.getCmdName(); } @@ -74,7 +74,8 @@ public class KsecDecoder extends DelimiterBasedFrameDecoder { String code = dataInfo.getCmdName(); if(code.equals("D1")){ log.info("plcId:{},warn start",plcCmdInfo.getPlcId()); - plcService.action(plcCmdInfo,1,code); + //根据告警code转动camera + plcService.warnAction(plcCmdInfo,dataInfo.getWarnCode()); plcService.warnStart(plcCmdInfo.getPlcId(),dataInfo.getWarnCode()); }else if(code.equals("D2")){ log.info("plcId:{},warn stop",plcCmdInfo.getPlcId()); diff --git a/web/src/main/java/com/zhehekeji/web/service/robotic/ProtocolDecoder.java b/web/src/main/java/com/zhehekeji/web/service/robotic/ProtocolDecoder.java index 1fea5d2..17fd8dc 100644 --- a/web/src/main/java/com/zhehekeji/web/service/robotic/ProtocolDecoder.java +++ b/web/src/main/java/com/zhehekeji/web/service/robotic/ProtocolDecoder.java @@ -66,7 +66,7 @@ public class ProtocolDecoder extends FixedLengthFrameDecoder { short short6 = in.readShort(); short short7 = in.readShort(); short short8 = in.readShort(); - PlcCmdInfo plcCmdInfo = new PlcCmdInfo(plcId, String.valueOf(taskId), (int) short1, (int) short2, (int) short3, (int) short4, (int) short5, (int) short6, (int) short7, (int) short8); + PlcCmdInfo plcCmdInfo = new PlcCmdInfo(plcId, String.valueOf(taskId), (int) short1, (int) short2, (int) short3, (int) short4,1, (int) short5, (int) short6, (int) short7, (int) short8,1); byte maohao = in.readByte(); byte leixing = in.readByte();