From 850105e8cdf0d048ef843d87520513ac77a64200 Mon Sep 17 00:00:00 2001 From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com> Date: 星期三, 23 七月 2025 21:21:53 +0800 Subject: [PATCH] 代码提交 --- 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/RGV/ICommonRGV.cs | 74 ++++++++++++++++++++++++++++++++++++- 1 files changed, 72 insertions(+), 2 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/RGV/ICommonRGV.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/RGV/ICommonRGV.cs" index b901996..990bc6e 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/RGV/ICommonRGV.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/RGV/ICommonRGV.cs" @@ -1,13 +1,83 @@ -锘縰sing System; +锘縰sing HslCommunication; +using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; +using WIDESEAWCS_Communicator; using WIDESEAWCS_QuartzJob.DeviceBase; +using WIDESEAWCS_QuartzJob.DTO; +using WIDESEAWCS_QuartzJob.StackerCrane; -namespace WIDESEAWCS_QuartzJob.RGV +namespace WIDESEAWCS_QuartzJob { public interface ICommonRGV: IDevice { + /// <summary> + /// 鍫嗗灈鏈洪�氳瀵硅薄 + /// </summary> + BaseCommunicator Communicator { get; } + + /// <summary> + /// 鍫嗗灈鏈哄崗璁俊鎭� + /// </summary> + List<DeviceProDTO> DeviceProDTOs { get; } + + /// <summary> + /// 鍫嗗灈鏈哄崗璁槑缁嗕俊鎭� + /// </summary> + List<DeviceProtocolDetailDTO> DeviceProtocolDetailDTOs { get; } + + /// <summary> + /// 涓婁竴娆℃墽琛岀殑浠诲姟 + /// </summary> + int LastTaskNum { get; } + + /// <summary> + /// 褰撳墠姝e湪鎵ц鐨勪换鍔� + /// </summary> + int CurrentTaskNum { get; } + + /// <summary> + /// 涓婁竴娆′换鍔$被鍨� + /// </summary> + int? LastTaskType { get; set; } + + /// <summary> + /// 涓庤澶囩殑蹇冭烦 + /// </summary> + void Heartbeat(); + + /// <summary> + /// 鍙戦�佷换鍔″懡浠� + /// </summary> + /// <param name="command">浠诲姟鍛戒护</param> + /// <returns></returns> + bool SendCommand<T>(T command) where T : IDataTransfer, new(); + + /// <summary> + /// 鍫嗗灈鏈轰换鍔″畬鎴愪簨浠� + /// </summary> + event EventHandler<StackerCraneTaskCompletedEventArgs> StackerCraneTaskCompletedEventHandler; + + /// <summary> + /// 璇诲彇PLC鍗忚鍦板潃鐨勬暟鎹� + /// </summary> + /// <typeparam name="TEnum">鍗忚淇℃伅鐨勬灇涓惧璞′俊鎭��</typeparam> + /// <typeparam name="TRsult">璇诲彇鏁版嵁鐨勭被鍨嬪璞′俊鎭��</typeparam> + /// <param name="value">鏋氫妇鍊�</param> + /// <returns>璇诲彇鍒扮殑鏁版嵁</returns> + TRsult GetValue<TEnum, TRsult>(TEnum value) where TEnum : Enum; + + /// <summary> + /// 鏍规嵁鍙傛暟鍚嶇О鍐欏叆鍫嗗灈鏈哄搴旂殑鏁版嵁銆� + /// </summary> + /// <typeparam name="TEnum">鍙傛暟鍚嶇О鏋氫妇绫诲瀷銆�</typeparam> + /// <typeparam name="TValue">瑕佸啓鍏ョ殑鏁版嵁绫诲瀷銆�</typeparam> + /// <param name="enum">鍙傛暟鍚嶇О銆�</param> + /// <param name="value">瑕佸啓鍏ョ殑鏁版嵁銆�</param> + /// <returns>杩斿洖鍐欏叆鎴愬姛鎴栧け璐�</returns> + /// <exception cref="Exception"></exception> + bool SetValue<TEnum, TValue>(TEnum @enum, TValue value) where TEnum : Enum where TValue : notnull; } } -- Gitblit v1.9.3