From cbd78ef6650440fcaa2f9eb8b47d16ad76cb4d77 Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期四, 23 五月 2024 10:26:07 +0800 Subject: [PATCH] 添加叠盘区超时未使用空托入库 --- 代码管理/WMS/WMS_Server/WIDESEA_WMS/Common/GetStation/EmptyTrayIn.cs | 34 ++++++++++++++++++++++++++++++---- 1 files changed, 30 insertions(+), 4 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/GetStation/EmptyTrayIn.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/GetStation/EmptyTrayIn.cs" index f8a976b..f7ddcc4 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/GetStation/EmptyTrayIn.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/GetStation/EmptyTrayIn.cs" @@ -36,6 +36,32 @@ } } /// <summary> + /// 鑾峰彇鍙叆绌烘墭璐т綅 + /// </summary> + public static dt_stationinfo GetEmptyTrayStation(Idt_stationinfoRepository stationinfoRepository, dt_agvtask agv_task) + { + dt_stationinfo EmptyStation = null; + #region 妫�娴嬩笂鏂欑殑绌烘墭鍙犵洏 + if (agv_task.agv_fromaddress.Contains("S")) + { + var EmptyStations = stationinfoRepository.Find(x => x.stationCode.Contains("DD") && x.quantity < 5 && x.enable).ToList(); + EmptyStation = EmptyStations.Where(x => x.tray_type == agv_task.agv_Traytype && x.quantity < 5 && x.location_state == LocationStateEnum.Stroge.ToString()).FirstOrDefault(); + if (EmptyStation == null) + EmptyStation = EmptyStations.Where(x => x.location_state == LocationStateEnum.Empty.ToString() && x.quantity == 0).FirstOrDefault(); + if (EmptyStation == null) + { + var EmptyD = EmptyStations.Where(x => x.location_state == LocationStateEnum.Stroge.ToString() && x.quantity > 0).OrderByDescending(x => x.quantity).FirstOrDefault(); + if (EmptyD != null) CreateEmptyTrayIn(stationinfoRepository, EmptyD); + } + } + #endregion + else + { + EmptyStation = GetStation.EmptyPalletStation1(agv_task.agv_Traytype == "SmallTray" ? "11" : "10"); + } + return EmptyStation; + } + /// <summary> /// 鍒涘缓绌烘墭鍙犵洏鍏ュ簱浠诲姟 /// </summary> /// <param name="stationinfoRepository"></param> @@ -48,13 +74,13 @@ { if (agvtaskRepository.Find(x => x.agv_fromaddress == EmptyStation.stationCode || x.agv_toaddress == EmptyStation.stationCode).Any()) return; var area = EmptyStation.tray_type == "SmallTray" ? "11" : "10"; - var toEmptyStation = GetStation.EmptyPalletStation(area); + var toEmptyStation = GetStation.EmptyPalletStation1(area); if (toEmptyStation != null) { #region 鍚屼竴涓┖鎵樹綅鍙兘鍚屾椂鐢熸垚涓�涓┖鎵樹换鍔� if (agvtaskRepository.Find(x => x.agv_fromaddress == toEmptyStation.stationCode || x.agv_toaddress == toEmptyStation.stationCode).Any()) return; #endregion - + var quantity = 5 - toEmptyStation.quantity; dt_agvtask agvtask = new dt_agvtask() { agv_fromaddress = EmptyStation.stationCode, @@ -63,8 +89,8 @@ agv_grade = 3, agv_createtime = DateTime.Now, agv_taskstate = "Create", - //agv_materielid = station.stationType, - agv_qty = EmptyStation.quantity - toEmptyStation.quantity, + agv_qty = EmptyStation.quantity <= quantity ? EmptyStation.quantity : quantity, + //agv_qty = EmptyStation.quantity - toEmptyStation.quantity, StarQuantity = toEmptyStation.quantity, EndQuantity = toEmptyStation.quantity, agv_tasktype = "TaskType_EmptyPallet", -- Gitblit v1.9.3