From 8c6fd742db249ad4cc819cf041eb98d880a3ef73 Mon Sep 17 00:00:00 2001 From: hutongqing <hutongqing@hnkhzn.com> Date: 星期四, 02 一月 2025 15:09:07 +0800 Subject: [PATCH] 1 --- WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/OtherDevices/OtherDevice.cs | 50 +++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 47 insertions(+), 3 deletions(-) diff --git a/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/OtherDevices/OtherDevice.cs b/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/OtherDevices/OtherDevice.cs index ab69a34..7632609 100644 --- a/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/OtherDevices/OtherDevice.cs +++ b/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/OtherDevices/OtherDevice.cs @@ -10,6 +10,9 @@ namespace WIDESEAWCS_QuartzJob { + /// <summary> + /// 鍏朵粬璁惧瀹炵幇瀵硅薄 + /// </summary> public class OtherDevice : IOtherDevice { #region Private Member @@ -42,16 +45,34 @@ #endregion Private Member #region Public Member + /// <summary> + /// 閫氳瀵硅薄 + /// </summary> public BaseCommunicator Communicator => _communicator; + /// <summary> + /// 閫氳鍗忚淇℃伅 + /// </summary> public List<DeviceProDTO> DeviceProDTOs => _deviceProDTOs; + /// <summary> + /// 閫氳鍗忚鏄庣粏淇℃伅 + /// </summary> public List<DeviceProtocolDetailDTO> DeviceProtocolDetailDTOs => _deviceProtocolDetailDTOs; + /// <summary> + /// 璁惧缂栧彿 + /// </summary> public string DeviceCode => _deviceCode; + /// <summary> + /// 璁惧鍚嶇О + /// </summary> public string DeviceName => _deviceName; + /// <summary> + /// 璁惧閫氳鏄惁宸茶繛鎺� + /// </summary> public bool IsConnected => Communicator.IsConnected && _isConnected; #endregion @@ -59,9 +80,9 @@ /// <summary> /// 鏋勯�犲嚱鏁� /// </summary> - /// <param name="communicator">鍫嗗灈鏈洪�氳瀵硅薄</param> - /// <param name="deviceProDTOs">鍫嗗灈鏈哄崗璁俊鎭�</param> - /// <param name="deviceProtocolDetailDTOs">鍫嗗灈鏈哄崗璁槑缁嗕俊鎭�</param> + /// <param name="communicator">璁惧閫氳瀵硅薄</param> + /// <param name="deviceProDTOs">璁惧鍗忚淇℃伅</param> + /// <param name="deviceProtocolDetailDTOs">璁惧鍗忚鏄庣粏淇℃伅</param> /// <param name="deviceCode">璁惧缂栧彿</param> /// <param name="deviceName">璁惧鍚嶇О</param> public OtherDevice(BaseCommunicator communicator, List<DeviceProDTO> deviceProDTOs, List<DeviceProtocolDetailDTO> deviceProtocolDetailDTOs, string deviceCode, string deviceName) @@ -128,12 +149,20 @@ #endregion #region Public Method + /// <summary> + /// 鑾峰彇璁惧鐘舵�� + /// </summary> + /// <typeparam name="T">鐘舵�佹灇涓�</typeparam> + /// <returns></returns> public T GetStatus<T>() where T : notnull, Enum { return (T)GetStatus(typeof(T).Name); } + /// <summary> + /// 閲婃斁瀵硅薄 + /// </summary> public void Dispose() { _heartStatr = false; @@ -141,6 +170,13 @@ GC.SuppressFinalize(this); } + /// <summary> + /// 璇诲彇PLC鍗忚鍦板潃鐨勬暟鎹� + /// </summary> + /// <typeparam name="TEnum">鍗忚淇℃伅鐨勬灇涓惧璞′俊鎭��</typeparam> + /// <typeparam name="TResult">璇诲彇鏁版嵁鐨勭被鍨嬪璞′俊鎭��</typeparam> + /// <param name="value">鏋氫妇鍊�</param> + /// <returns>璇诲彇鍒扮殑鏁版嵁</returns> public TResult GetValue<TEnum, TResult>(TEnum value) where TEnum : Enum { if (!IsConnected) throw new Exception($"閫氳杩炴帴閿欒锛岃妫�鏌ョ綉缁�"); @@ -163,6 +199,14 @@ return devicePro == null ? throw new Exception() : (TResult)Communicator.ReadAsObj(devicePro.DeviceProAddress, devicePro.DeviceDataType); } + /// <summary> + /// 鏍规嵁鍙傛暟鍚嶇О鍐欏叆鍫嗗灈鏈哄搴旂殑鏁版嵁銆� + /// </summary> + /// <typeparam name="TEnum">鍙傛暟鍚嶇О鏋氫妇绫诲瀷銆�</typeparam> + /// <typeparam name="TValue">瑕佸啓鍏ョ殑鏁版嵁绫诲瀷銆�</typeparam> + /// <param name="enum">鍙傛暟鍚嶇О銆�</param> + /// <param name="value">瑕佸啓鍏ョ殑鏁版嵁銆�</param> + /// <returns>杩斿洖鍐欏叆鎴愬姛鎴栧け璐�</returns> public bool SetValue<TEnum, TValue>(TEnum @enum, TValue value) where TEnum : Enum where TValue : notnull -- Gitblit v1.9.3