From f0e2d9d2c7c41b311217bdb2c4d114ff53f6a146 Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期二, 16 四月 2024 07:47:17 +0800 Subject: [PATCH] 优化空托逻辑 --- 代码管理/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/HandleTask.cs | 20 ++++++++++++++++---- 1 files changed, 16 insertions(+), 4 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/HandleTask.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/HandleTask.cs" index 71cfa50..d2a3af3 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/HandleTask.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/HandleTask.cs" @@ -67,7 +67,18 @@ /// <param name="task"></param> public static void Updateinventory(dt_agvtask task) { - if (task.agv_tasktype == AGVTaskTypeEnum.TaskType_Outbound.ToString() || task.agv_tasktype == AGVTaskTypeEnum.TaskType_OutsourceCarry.ToString()) + VOLContext context = new VOLContext(); + Idt_inventoryRepository inventoryRepository = new dt_inventoryRepository(context); + if (task.agv_tasktype == AGVTaskTypeEnum.TaskType_Carry.ToString()) + { + var inventorys = inventoryRepository.Find(x => x.stationCode == task.agv_fromaddress).ToList(); + foreach (var inventory in inventorys) + { + inventory.stationCode = task.agv_toaddress; + inventoryRepository.Update(inventory, true); + } + } + else if (task.agv_tasktype == AGVTaskTypeEnum.TaskType_Outbound.ToString() || task.agv_tasktype == AGVTaskTypeEnum.TaskType_OutsourceCarry.ToString()) { string[] bindSNs = task.bindSN.Split(","); int count = 0; @@ -160,7 +171,7 @@ ////绌烘墭浠诲姟闇�淇敼閫昏緫 if (station2.stationCode.Contains("X")) station2.quantity = 0;// task.agv_tasktype.Contains("TaskType_EmptyPallet") ? 0 : task.agv_qty; //task.agv_qty; - else if (station2.area == "10" || station2.area == "11") //鍏ュ簱绌烘墭浠诲姟 + else if (station2.area == "10" || station2.area == "11" || (station2.stationCode.Contains("C") && task.agv_tasktype == "TaskType_EmptyPallet")) //鍏ュ簱绌烘墭浠诲姟 station2.quantity = station2.quantity + task.agv_qty; else station2.quantity = task.agv_qty; @@ -171,7 +182,7 @@ station2.stationType = task.agv_materielid; station2.tray_status = task.agv_TrayStatus;//妯斁/绔栨斁 station2.tray_type = task.agv_Traytype; - station2.lastUpdateTime=DateTime.Now; + station2.lastUpdateTime = DateTime.Now; stationinfoRepository.Update(station2, true); } else if (task.agv_taskstate == AGVTaskStateEnum.Complete.ToString()) @@ -188,7 +199,7 @@ // station1.quantity = 0; #endregion - if (station1.area == "10" || station1.area == "11") //鍑哄簱绌烘墭浠诲姟 + if (station1.area == "10" || station1.area == "11" || (station1.stationCode.Contains("C") && task.agv_tasktype == "TaskType_EmptyPallet")) //鍑哄簱绌烘墭浠诲姟 { station1.location_state = LocationStateEnum.Stroge.ToString(); station1.quantity = station1.quantity - 1; @@ -201,6 +212,7 @@ { station1.location_state = LocationStateEnum.Empty.ToString(); station1.Number = string.Empty; + station1.billetID = string.Empty; station1.heatNumber = string.Empty; station1.stationType = string.Empty; station1.tray_status = string.Empty; -- Gitblit v1.9.3