From c9e3a7f0c154892f2327e300e28af53f81e40ad0 Mon Sep 17 00:00:00 2001 From: schangxiang@126.com <schangxiang@126.com> Date: 周四, 20 2月 2025 11:03:24 +0800 Subject: [PATCH] 软件加密+ 修复 不断给plc报警的问题 --- CC/iWareCC_ASRS/Common/Helper/MyExtendHelper.cs | 86 ++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 85 insertions(+), 1 deletions(-) diff --git a/CC/iWareCC_ASRS/Common/Helper/MyExtendHelper.cs b/CC/iWareCC_ASRS/Common/Helper/MyExtendHelper.cs index b0fd52f..83cb7be 100644 --- a/CC/iWareCC_ASRS/Common/Helper/MyExtendHelper.cs +++ b/CC/iWareCC_ASRS/Common/Helper/MyExtendHelper.cs @@ -15,7 +15,7 @@ using System.Threading; using System.Threading.Tasks; using XiGang.Core.Model; - +using LogType = iWareCommon.Utils.LogType; namespace iWareCC.Common.Helper { @@ -26,6 +26,90 @@ { /// <summary> + /// 鍏叡鐨勬帶鍒惰姹傚璞″瓧鍏� + /// </summary> + public static IDictionary<string, ControlRequest> controlRequestDicts = new Dictionary<string, ControlRequest>(); + + /// <summary> + /// 鍏叡鐨勬帶鍒惰姹傚璞″瓧鍏歌祴鍊� + /// </summary> + /// <param name="placeNo"></param> + /// <param name="result"></param> + /// <param name="msg"></param> + public static void SetValueControlRequestDicts(string placeNo, bool result, string msg) + { + if (controlRequestDicts.ContainsKey(placeNo)) + { + controlRequestDicts[placeNo].IsSuccess = result; + controlRequestDicts[placeNo].LastTime = DateTime.Now; + controlRequestDicts[placeNo].PlaceNo = placeNo; + if (result) + { + controlRequestDicts[placeNo].Count = 0; + controlRequestDicts[placeNo].ErrMsg = ""; + } + else + { + controlRequestDicts[placeNo].Count++; + controlRequestDicts[placeNo].ErrMsg = msg; + } + } + else + { + if (result) + { + controlRequestDicts.Add(placeNo, new ControlRequest() + { + PlaceNo = placeNo, + Count = 0, + LastTime = DateTime.Now, + ErrMsg = msg, + IsSuccess = result + }); + } + else + { + controlRequestDicts.Add(placeNo, new ControlRequest() + { + PlaceNo = placeNo, + Count = 1, + LastTime = DateTime.Now, + ErrMsg = msg, + IsSuccess = result + }); + } + } + } + + /// <summary> + /// 楠岃瘉鏄惁鍏佽缁橮LC鍙戞姤璀� + /// </summary> + /// <param name="placeNo"></param> + /// <returns></returns> + public static bool ValidateIsAllowRequest(string placeNo, LogType logType) + { + if (controlRequestDicts.ContainsKey(placeNo)) + { + if (controlRequestDicts[placeNo].IsSuccess == false) + { + //var diff = DateTime.Now - controlRequestDicts[placeNo].LastTime; + //if (diff.Seconds <= 10) + //{//濡傛灉杩炵画璇锋眰鍦�10绉掑唴锛屽垯璁や负 涓嶉渶瑕佸啀娆¤姹� + // WZ.Useful.Commons.LogTextHelper.WriteLine("CommonControl", "ValidateIsAllowRequest", "濡傛灉杩炵画璇锋眰鍦�10绉掑唴锛屽垯璁や负 涓嶉渶瑕佸啀娆¤姹傦紝闂撮殧" + diff.Seconds + "绉�,placeNo:" + placeNo); + // return false; + //} + if (controlRequestDicts[placeNo].Count <= 5) + {//濡傛灉杩炵画璇锋眰鍦�5娆″唴锛屽垯璁や负 涓嶉渶瑕佸啀娆¤姹� + var msg = "濡傛灉杩炵画璇锋眰鍦�5娆″唴锛屽垯璁や负 涓嶉渶瑕佸啀娆¤姹傦紝闂撮殧" + controlRequestDicts[placeNo].Count + "涓�,placeNo:" + placeNo; + Log4NetHelper.WriteInfoLog(logType, msg); + return false; + } + } + } + return true; + } + + /// <summary> /// 鐢熸垚鏈�鏂扮殑浠诲姟鍙� /// </summary> /// <param name="wmsDB"></param> -- Gitblit v1.9.3