From 37184b1d1ac000a6ee40e397e2336b213e705902 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周四, 17 4月 2025 13:08:45 +0800
Subject: [PATCH] 包中只有一块板时,认定为 不齐包 【Editby shaocx,2025-04-01】

---
 CC/iWareCC_ASRS/Common/Helper/MyExtendHelper.cs |  107 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 106 insertions(+), 1 deletions(-)

diff --git a/CC/iWareCC_ASRS/Common/Helper/MyExtendHelper.cs b/CC/iWareCC_ASRS/Common/Helper/MyExtendHelper.cs
index b0fd52f..1461da0 100644
--- a/CC/iWareCC_ASRS/Common/Helper/MyExtendHelper.cs
+++ b/CC/iWareCC_ASRS/Common/Helper/MyExtendHelper.cs
@@ -11,11 +11,12 @@
 using System;
 using System.Collections.Generic;
 using System.Linq;
+using System.Reflection.Emit;
 using System.Text;
 using System.Threading;
 using System.Threading.Tasks;
 using XiGang.Core.Model;
-
+using LogType = iWareCommon.Utils.LogType;
 
 namespace iWareCC.Common.Helper
 {
@@ -24,6 +25,110 @@
     /// </summary>
     public class MyExtendHelper
     {
+        /// <summary>
+        /// 楠岃瘉鏌愪釜鍖� 鏄惁鍙湁涓�涓猆PI
+        /// </summary>
+        /// <param name="wmsDB"></param>
+        /// <param name="upi"></param>
+        /// <returns>true:鍙湁涓�涓� </returns>
+        public static bool IsOnlyOneInPackage(WmsDBModel wmsDB, string upi)
+        {
+            var upiObj = wmsDB.mes_batchOrderUPI_new.Where(x => x.UPI == upi).FirstOrDefault();
+            if (upiObj != null)
+            {
+                var num = wmsDB.mes_batchOrderUPI_new.Where(x => x.PackageCode == upiObj.PackageCode).Count();
+                if (num == 1)
+                {
+                    return true;
+                }
+            }
+            return false;
+        }
+
+      
+        /// <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>
         /// 鐢熸垚鏈�鏂扮殑浠诲姟鍙�

--
Gitblit v1.9.3