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 | 131 ++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 127 insertions(+), 4 deletions(-) diff --git a/CC/iWareSql/DataAccess/TaskHandler.cs b/CC/iWareSql/DataAccess/TaskHandler.cs index 19a4fbf..c1607a4 100644 --- a/CC/iWareSql/DataAccess/TaskHandler.cs +++ b/CC/iWareSql/DataAccess/TaskHandler.cs @@ -14,17 +14,70 @@ public class TaskHandler { /// <summary> + /// 楠岃瘉 鏄惁瀛樺湪鏌愪釜UPI鐨勬湭缁撴潫鐨勭殑浠诲姟 + /// </summary> + /// <param name="wmsDB"></param> + /// <returns></returns> + 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 + ).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; + } + + /// <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.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.宸蹭笅鍙� + && ( + x.RbTaskType == (int)RbTaskTypeEnum.鍏ュ簱浠诲姟 + || + (x.RbTaskType == (int)RbTaskTypeEnum.榻愬寘鍑哄簱浠诲姟 || x.RbTaskType == (int)RbTaskTypeEnum.寮哄埗鍑哄簱浠诲姟) ) ).ToList(); @@ -36,14 +89,84 @@ } /// <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> /// <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.榻愬寘鍑哄簱浠诲姟 || x.RbTaskType == (int)RbTaskTypeEnum.寮哄埗鍑哄簱浠诲姟) + ) + ).ToList(); + + if (isExist?.Count() > 0) + { + return false; + } + 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) { -- Gitblit v1.9.3