From 71f890c1c7f40d2605f9eabfe787e5ac287162fc Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周一, 23 12月 2024 18:58:48 +0800
Subject: [PATCH] 333

---
 CC/iWareSql/DataAccess/TaskHandler.cs |   63 +++++++++++++++++++++++++++++--
 1 files changed, 58 insertions(+), 5 deletions(-)

diff --git a/CC/iWareSql/DataAccess/TaskHandler.cs b/CC/iWareSql/DataAccess/TaskHandler.cs
index c55d91b..c1607a4 100644
--- a/CC/iWareSql/DataAccess/TaskHandler.cs
+++ b/CC/iWareSql/DataAccess/TaskHandler.cs
@@ -18,15 +18,28 @@
         /// </summary>
         /// <param name="wmsDB"></param>
         /// <returns></returns>
-        public static bool ValidateIssueTaskForNoFinishTaskByUpi(WmsDBModel.WmsDBModel wmsDB, string UPI)
+        public static bool ValidateIssueTaskForNoFinishTaskByUpi(WmsDBModel.WmsDBModel wmsDB, string UPI, bool isNeedAutoFinishTak)
         {
             var isExist = wmsDB.wms_rbline_task.Where(x => x.TaskStatus != (int)TaskStatusEnum.宸插畬鎴�
                  && x.TaskStatus != (int)TaskStatusEnum.宸插彇娑�
-                 && x.UPI == UPI
+                 && x.Upi == UPI
               ).ToList();
 
             if (isExist?.Count() > 0)
             {
+                if (isNeedAutoFinishTak)
+                {
+                    using (WmsDBModel.WmsDBModel new_wmsDB = new WmsDBModel.WmsDBModel())
+                    {
+                        var updateTask = new_wmsDB.wms_rbline_task.Where(x => x.Id == isExist.First().Id).FirstOrDefault();
+                        if (updateTask != null)
+                        {
+                            updateTask.TaskStatus = (int)TaskStatusEnum.宸插畬鎴�;
+                            updateTask.TaskMsg = "浠诲姟琚郴缁熷湪鍚堝寘宸ヤ綅鑷姩瀹屾垚(1)";
+                            new_wmsDB.SaveChanges();
+                        }
+                    }
+                }
                 return false;
             }
             return true;
@@ -44,7 +57,7 @@
                   x.RbTaskType == (int)RbTaskTypeEnum.鍏ュ簱浠诲姟
                   ||
                   (x.RbTaskType == (int)RbTaskTypeEnum.榻愬寘鍑哄簱浠诲姟 || x.RbTaskType == (int)RbTaskTypeEnum.寮哄埗鍑哄簱浠诲姟)
-                ) && x.UPI == UPI
+                ) && x.Upi == UPI
               ).ToList();
 
             if (isExist?.Count() > 0)
@@ -74,6 +87,29 @@
             }
             return true;
         }
+
+        /// <summary>
+        /// 楠岃瘉 鏄惁瀛樺湪鏈粨鏉熺殑 鍑哄簱 浠诲姟
+        /// </summary>
+        /// <param name="wmsDB"></param>
+        /// <returns></returns>
+        public static bool ValidateIssueTaskForNoFinishTaskByOutStore(WmsDBModel.WmsDBModel wmsDB)
+        {
+            var isExist = wmsDB.wms_rbline_task.Where(x => x.TaskStatus != (int)TaskStatusEnum.宸插畬鎴�
+                 && x.TaskStatus != (int)TaskStatusEnum.宸插彇娑�
+                  && (
+                   (x.RbTaskType == (int)RbTaskTypeEnum.榻愬寘鍑哄簱浠诲姟 || x.RbTaskType == (int)RbTaskTypeEnum.寮哄埗鍑哄簱浠诲姟)
+                )
+              ).ToList();
+
+            if (isExist?.Count() > 0)
+            {
+                return false;
+            }
+            return true;
+        }
+
+
         /// <summary>
         /// 楠岃瘉 鐮佹澘鏄惁鏈夋墽琛屼腑浠诲姟
         /// </summary>
@@ -82,7 +118,7 @@
         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.鐮佹澘浠诲姟 && x.UPI == UPI).ToList();
+                && x.RbTaskType == (int)RbTaskTypeEnum.鐮佹澘浠诲姟 && x.Upi == UPI).ToList();
             if (isExist?.Count() > 0)
             {
                 return false;
@@ -92,7 +128,7 @@
         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();
+                && x.RbTaskType == (int)RbTaskTypeEnum.鍚堝寘浠诲姟 && x.Upi == str).ToList();
             if (isExist?.Count() > 0)
             {
                 return false;
@@ -120,6 +156,23 @@
             return true;
         }
 
+        /// <summary>
+        /// 楠岃瘉 鐮佹澘浠诲姟鏄惁瀛樺湪 鏈粨鏉�  鐨勪换鍔�
+        /// </summary>
+        /// <param name="wmsDB"></param>
+        /// <returns>true:涓嶅瓨鍦� false锛氬瓨鍦�</returns>
+        public static bool ValidateNoFinishOutTaskFor鐮佹澘浠诲姟(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)
+            {
+                return false;
+            }
+            return true;
+        }
     }
 }
\ No newline at end of file

--
Gitblit v1.9.3