From 26748f9d2337faa40e7ed59a29d58dad161cd8a3 Mon Sep 17 00:00:00 2001 From: xxyy <cathay_xy@163.com> Date: 星期六, 15 二月 2025 13:01:09 +0800 Subject: [PATCH] Merge branch 'master' of http://115.159.85.185:8098/r/HuaYiZhongHeng/BaiBuLiKu --- Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/Service/DeviceProtocolService.cs | 70 ++++++++++++++++++++++++++++++++++ 1 files changed, 69 insertions(+), 1 deletions(-) diff --git a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/Service/DeviceProtocolService.cs b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/Service/DeviceProtocolService.cs index 82c0830..dbdaa48 100644 --- a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/Service/DeviceProtocolService.cs +++ b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/Service/DeviceProtocolService.cs @@ -79,5 +79,73 @@ //saveModel.MainData[""] return base.AddData(saveModel); } + + //public WebResponseContent InsertProtocol_Line(int PLCid, string ChildCode,decimal ProOffsetStart) + //{ + // Type type = typeof(); + //} + + + // 灏佽妫�鏌ラ�昏緫 + private bool DeviceProtocolExists(int DeviceID, string DeviceChildCode, decimal DeviceProOffset) + { + return BaseDal.QueryFirst(x => x.DeviceId == DeviceID && x.DeviceChildCode == DeviceChildCode && x.DeviceProOffset == DeviceProOffset) != null; + } + + // 灏佽瀵硅薄鍒涘缓閫昏緫 + private Dt_DeviceProtocol CreateDeviceProtocol(int DeviceID, string DeviceChildCode, decimal DeviceProOffset, int additionalOffset, string dataType, int dataLength, string paramName) + { + decimal DeviceProOffsets = DeviceProOffset + additionalOffset; + return new Dt_DeviceProtocol + { + DeviceId = DeviceID, + DeviceChildCode = DeviceChildCode, + DeviceProDataBlock = "DB1000", + DeviceProOffset = DeviceProOffsets, + DeviceProDataLength = dataLength, + DeviceProDataType = dataType, + DeviceProParamName = paramName, + DeviceProParamType = "DeviceCommand", + DeviceProParamDes = "1", + DeviceProRemark = "", + Creater = "admin", + CreateDate = DateTime.Now, + }; + } + + public WebResponseContent AddDeviceProtocol(int DeviceID, string DeviceChildCode, decimal DeviceProOffset) + { + WebResponseContent content = new WebResponseContent(); + try + { + if (DeviceProtocolExists(DeviceID, DeviceChildCode, DeviceProOffset)) + { + throw new InvalidOperationException("宸插瓨鍦ㄨ鑺傜偣鏄庣粏"); + } + + var protocols = new List<Dt_DeviceProtocol> + { + CreateDeviceProtocol(DeviceID, DeviceChildCode, DeviceProOffset, 0, "int", 1, "ConveyorLineTargetAddress"), + CreateDeviceProtocol(DeviceID, DeviceChildCode, DeviceProOffset, 2, "int", 1, "ConveyorLineTaskNum"), + CreateDeviceProtocol(DeviceID, DeviceChildCode, DeviceProOffset, 6, "string", 25, "ConveyorLineBarcode"), + CreateDeviceProtocol(DeviceID, DeviceChildCode, DeviceProOffset, 34, "int", 1, "Reserve1"), + CreateDeviceProtocol(DeviceID, DeviceChildCode, DeviceProOffset, 36, "int", 1, "Reserve2"), + CreateDeviceProtocol(DeviceID, DeviceChildCode, DeviceProOffset, 38, "int", 1, "Reserve3"), + CreateDeviceProtocol(DeviceID, DeviceChildCode, DeviceProOffset, 40, "byte", 1, "InteractiveSignal"), + CreateDeviceProtocol(DeviceID, DeviceChildCode, DeviceProOffset, 42, "int", 1, "HasPallet"), + CreateDeviceProtocol(DeviceID, DeviceChildCode, DeviceProOffset, 44, "int", 1, "ConveyorLineAlarm"), + CreateDeviceProtocol(DeviceID, DeviceChildCode, DeviceProOffset, 46, "int", 1, "ResponState"), + CreateDeviceProtocol(DeviceID, DeviceChildCode, DeviceProOffset, 48, "int", 1, "Reserve5") + + }; + var result=BaseDal.AddData(protocols); + return content.OK(data:result); + } + catch (Exception ex) + { + return content.Error(ex.Message); + } + + } } -} +} \ No newline at end of file -- Gitblit v1.9.3