From e8734db76fbbb3149ba663beff3b4f7451012b03 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周二, 03 12月 2024 13:28:34 +0800
Subject: [PATCH] 11

---
 CC/iWareSql/DataAccess/TaskHandler.cs |   78 +++++++++++++++++++++++++++++++++++++--
 1 files changed, 74 insertions(+), 4 deletions(-)

diff --git a/CC/iWareSql/DataAccess/TaskHandler.cs b/CC/iWareSql/DataAccess/TaskHandler.cs
index 19a4fbf..cc87064 100644
--- a/CC/iWareSql/DataAccess/TaskHandler.cs
+++ b/CC/iWareSql/DataAccess/TaskHandler.cs
@@ -14,11 +14,51 @@
     public class TaskHandler
     {
         /// <summary>
+        /// 楠岃瘉 鏄惁瀛樺湪鏌愪釜UPI鐨勬湭缁撴潫鐨勭殑浠诲姟
+        /// </summary>
+        /// <param name="wmsDB"></param>
+        /// <returns></returns>
+        public static bool ValidateIssueTaskForNoFinishTaskByUpi(WmsDBModel.WmsDBModel wmsDB, string UPI)
+        {
+            var isExist = wmsDB.wms_rbline_task.Where(x => x.TaskStatus != (int)TaskStatusEnum.宸插畬鎴�
+                 && x.TaskStatus != (int)TaskStatusEnum.宸插彇娑�
+                 && x.UPI == UPI
+              ).ToList();
+
+            if (isExist?.Count() > 0)
+            {
+                return false;
+            }
+            return true;
+        }
+
+        /// <summary>
         /// 楠岃瘉 鏈哄櫒浜虹紦瀛樺矝鏄惁瀛樺湪宸蹭笅鍙戠殑浠诲姟
         /// </summary>
         /// <param name="wmsDB"></param>
         /// <returns></returns>
-        public static bool ValidateIssueTaskForRobotBuffer(WmsDBModel.WmsDBModel wmsDB)
+        public static bool ValidateIssueTaskForRobotBuffer(WmsDBModel.WmsDBModel wmsDB, string UPI)
+        {
+            var isExist = wmsDB.wms_rbline_task.Where(x => x.TaskStatus == (int)TaskStatusEnum.宸蹭笅鍙�
+                && (
+                  x.RbTaskType == (int)RbTaskTypeEnum.鍏ュ簱浠诲姟
+                  ||
+                   x.RbTaskType == (int)RbTaskTypeEnum.鍑哄簱浠诲姟
+                ) && x.UPI == UPI
+              ).ToList();
+
+            if (isExist?.Count() > 0)
+            {
+                return false;
+            }
+            return true;
+        }
+        /// <summary>
+        /// 楠岃瘉 鏈哄櫒浜虹紦瀛樺矝鏄惁瀛樺湪宸蹭笅鍙戠殑浠诲姟
+        /// </summary>
+        /// <param name="wmsDB"></param>
+        /// <returns></returns>
+        public static bool ValidateIssueOutTaskForRobotBuffer(WmsDBModel.WmsDBModel wmsDB)
         {
             var isExist = wmsDB.wms_rbline_task.Where(x => x.TaskStatus == (int)TaskStatusEnum.宸蹭笅鍙�
                 && (
@@ -34,16 +74,44 @@
             }
             return true;
         }
-
         /// <summary>
         /// 楠岃瘉 鐮佹澘鏄惁鏈夋墽琛屼腑浠诲姟
         /// </summary>
         /// <param name="wmsDB"></param>
         /// <returns></returns>
-        public static bool ValidateIssueTaskForBZ12(WmsDBModel.WmsDBModel wmsDB)
+        public static bool ValidateIssueTaskForBZ12(WmsDBModel.WmsDBModel wmsDB, string UPI)
         {
             var isExist = wmsDB.wms_rbline_task.Where(x => x.TaskStatus == (int)TaskStatusEnum.宸蹭笅鍙�
-                && x.RbTaskType == (int)RbTaskTypeEnum.鐮佹澘浠诲姟).ToList();
+                && x.RbTaskType == (int)RbTaskTypeEnum.鐮佹澘浠诲姟 && x.UPI == UPI).ToList();
+            if (isExist?.Count() > 0)
+            {
+                return false;
+            }
+            return true;
+        }
+        public static bool ValidateIssueTaskForBZ21(WmsDBModel.WmsDBModel wmsDB, string str)
+        {
+            var isExist = wmsDB.wms_rbline_task.Where(x => x.TaskStatus == (int)TaskStatusEnum.宸蹭笅鍙�
+                && x.RbTaskType == (int)RbTaskTypeEnum.澶规澘浠诲姟 && x.UPI == str).ToList();
+            if (isExist?.Count() > 0)
+            {
+                return false;
+            }
+            return true;
+        }
+        /// <summary>
+        /// 楠岃瘉 鏈哄櫒浜虹紦瀛樺矝鏄惁瀛樺湪 鏈粨鏉�  鐨勫嚭搴撲换鍔�
+        /// </summary>
+        /// <param name="wmsDB"></param>
+        /// <returns>true:涓嶅瓨鍦� false锛氬瓨鍦�</returns>
+        public static bool ValidateNoFinishOutTaskForRobotBuffer(WmsDBModel.WmsDBModel wmsDB)
+        {
+            var isExist = wmsDB.wms_rbline_task.Where(x => x.TaskStatus != (int)TaskStatusEnum.宸插畬鎴�
+                && x.TaskStatus != (int)TaskStatusEnum.宸插彇娑�
+                && (
+                   x.RbTaskType == (int)RbTaskTypeEnum.鍑哄簱浠诲姟
+                )
+              ).ToList();
 
             if (isExist?.Count() > 0)
             {
@@ -51,5 +119,7 @@
             }
             return true;
         }
+
+
     }
 }
\ No newline at end of file

--
Gitblit v1.9.3