From bb929bd0809eefc1108dd779846ff07d997f7ef0 Mon Sep 17 00:00:00 2001 From: huanghongfeng <huanghongfeng@hnkhzn.com> Date: 星期五, 19 七月 2024 09:25:14 +0800 Subject: [PATCH] 反馈MES工单完成 --- 代码管理/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/ReplaceTray.cs | 106 +++++++++++++++++++++++++++++++--------------------- 1 files changed, 63 insertions(+), 43 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/ReplaceTray.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/ReplaceTray.cs" index a89959d..4962644 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/ReplaceTray.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/ReplaceTray.cs" @@ -7,6 +7,7 @@ using WIDESEA_Comm; using WIDESEA_Comm.LogInfo; using WIDESEA_Comm.TaskNo; +using WIDESEA_Common; using WIDESEA_Core.EFDbContext; using WIDESEA_Entity.DomainModels; using WIDESEA_WCS.IRepositories; @@ -48,7 +49,7 @@ #endregion /// <summary> - /// 鍒涘缓鏇存崲鎵樼洏浠诲姟 + /// 鍒涘缓鏇存崲鎵樼洏浠诲姟,闇�淇敼 /// </summary> public static void ReplaceTrayTask() { @@ -56,51 +57,70 @@ { VOLContext context = new VOLContext(); Idt_stationinfoRepository stationinfoRepository = new dt_stationinfoRepository(context); - Idt_agvtaskRepository agvtaskRepository = new dt_agvtaskRepository(context); - var stations = stationinfoRepository.Find(x => (x.stationCode.Contains("X")|| x.stationCode.Contains("W01001004") || x.stationCode.Contains("W01001005")) && x.location_state == "Abnormal" /*LocationStateEnum.Abnormal.ToString()*/ && (x.tray_type == "SmallTray/LargeTray" || x.tray_type == "LargeTray/SmallTray") && x.enable).ToList(); + Idt_agvtaskRepository agvtaskRepository = new dt_agvtaskRepository(context);//"Abnormal" + var stations = stationinfoRepository.Find(x => (x.stationCode.Contains("X") || x.stationCode.Contains("W01001004") || x.stationCode.Contains("W01001005")) && x.location_state == LocationStateEnum.Trayswitching.ToString() && x.enable).ToList(); foreach (var station in stations) { if (agvtaskRepository.Find(x => x.agv_fromaddress == station.stationCode || x.agv_toaddress == station.stationCode).Any()) continue; + #region MyRegion var types = station.tray_type.Split('/'); - var area = types[0] == "SmallTray" ? "11" : "10"; - //鎵�1搴撳尯鐨勭┖鎵樹綅 - var EmptyStation = GetStation.EmptyPalletStation(area); - //var EmptyStation = stationinfoRepository.Find(x => x.area == area && x.quantity < 5 && x.stationCode.Contains("A") /*&& x.location_state == "Empty"*/ && x.enable) - // .OrderBy(x => x.column).OrderBy(x => x.line).FirstOrDefault(); - //if (EmptyStation == null) - // EmptyStation = stationinfoRepository.Find(x => x.area == area && x.quantity < 5 && x.stationCode.Contains(area == "10" ? "D" : "C") /*&& x.location_state == "Empty"*/ && x.enable) - // .OrderBy(x => x.line).OrderBy(x => x.column).FirstOrDefault(); - if (EmptyStation != null) + dt_agvtask agvtask = new dt_agvtask() { - dt_agvtask agvtask = new dt_agvtask() - { - agv_fromaddress = station.stationCode, - agv_id = Guid.NewGuid(), - agv_tasknum = IdenxManager.GetTaskNo("KH-", "WMS"), - agv_grade = 2, - agv_createtime = DateTime.Now, - agv_taskstate = "Create", - //agv_materielid = station.stationType, - agv_qty = 1, - StarQuantity = 0, - EndQuantity = EmptyStation.quantity, - agv_tasktype = "TaskType_EmptyPallet", - agv_toaddress = EmptyStation.stationCode, - agv_userid = "绯荤粺", - agv_TrayStatus = station.tray_status, - //bindSN = station.bindSN, - //agv_worktype = Convert.ToInt32(mesinfo.processCode), - //agv_materbarcode = mesinfo.materialCode, - agv_Traytype = types[0] - }; - agvtaskRepository.Add(agvtask, true); - station.location_state = LocationStateEnum.Busy.ToString(); - stationinfoRepository.Update(EmptyStation, true); - EmptyStation.location_state = LocationStateEnum.Busy.ToString(); - stationinfoRepository.Update(EmptyStation, true); - WriteDBLog.Success("鍒涘缓鏇存崲绌虹洏浠诲姟", $"浠诲姟缂栧彿锛歿agvtask.agv_tasknum}", "PCS"); - CreatePartQueue(agvtaskRepository, agvtask, types[1]); - } + agv_fromaddress = station.stationCode, + agv_id = Guid.NewGuid(), + agv_tasknum = IdenxManager.GetTaskNo("KH-", "WMS"), + agv_grade = 1, + agv_createtime = DateTime.Now, + agv_taskstate = AGVTaskStateEnum.Queue.ToString(), + agv_qty = 1, + StarQuantity = 0, + EndQuantity = 0,//EmptyStation.quantity, + agv_tasktype = AGVTaskTypeEnum.TaskType_EmptyPallet.ToString(), + agv_toaddress = "",//EmptyStation.stationCode, + agv_userid = "绯荤粺", + agv_TrayStatus = station.tray_status, + agv_Traytype = types[0] + }; + agvtaskRepository.Add(agvtask, true); + station.location_state = LocationStateEnum.Busy.ToString(); + stationinfoRepository.Update(station, true); + WriteDBLog.Success("鍒涘缓鏇存崲绌虹洏浠诲姟", $"浠诲姟缂栧彿锛歿agvtask.agv_tasknum}", "PCS"); + CreatePartQueue(agvtaskRepository, agvtask, agvtask.agv_Traytype == "SmallTray" ? "LargeTray" : "SmallTray"); + #endregion + + #region MyRegion + //var types = station.tray_type.Split('/'); + //var area = types[0] == "SmallTray" ? "11" : "10"; + ////鎵�1搴撳尯鐨勭┖鎵樹綅 + //var EmptyStation = GetStation.EmptyPalletStation(area); + //if (EmptyStation != null) + //{ + // dt_agvtask agvtask = new dt_agvtask() + // { + // agv_fromaddress = station.stationCode, + // agv_id = Guid.NewGuid(), + // agv_tasknum = IdenxManager.GetTaskNo("KH-", "WMS"), + // agv_grade = 2, + // agv_createtime = DateTime.Now, + // agv_taskstate = "Create", + // agv_qty = 1, + // StarQuantity = 0, + // EndQuantity = EmptyStation.quantity, + // agv_tasktype = "TaskType_EmptyPallet", + // agv_toaddress = EmptyStation.stationCode, + // agv_userid = "绯荤粺", + // agv_TrayStatus = station.tray_status, + // agv_Traytype = types[0] + // }; + // agvtaskRepository.Add(agvtask, true); + // station.location_state = LocationStateEnum.Busy.ToString(); + // stationinfoRepository.Update(station, true); + // EmptyStation.location_state = LocationStateEnum.Busy.ToString(); + // stationinfoRepository.Update(EmptyStation, true); + // WriteDBLog.Success("鍒涘缓鏇存崲绌虹洏浠诲姟", $"浠诲姟缂栧彿锛歿agvtask.agv_tasknum}", "PCS"); + // CreatePartQueue(agvtaskRepository, agvtask, agvtask.agv_Traytype == "SmallTray" ? "LargeTray" : "SmallTray"); + //} + #endregion } } catch (Exception ex) @@ -121,7 +141,7 @@ agv_fromaddress = "", agv_id = Guid.NewGuid(), agv_tasknum = agvtask.agv_tasknum + "_1", - agv_grade = 2, + agv_grade = 1, agv_createtime = DateTime.Now, agv_taskstate = "Queue", agv_qty = 1, @@ -129,7 +149,7 @@ agv_toaddress = agvtask.agv_fromaddress, agv_userid = "绯荤粺", agv_TrayStatus = agvtask.agv_TrayStatus, - agv_Traytype = type == "" ? agvtask.agv_Traytype : type, + agv_Traytype = type, }; agvtaskRepository.Add(taskPart, true); WriteDBLog.Success("鍒涘缓鏇存崲绌虹洏浠诲姟", $"浠诲姟缂栧彿锛歿taskPart.agv_tasknum}", "PCS"); -- Gitblit v1.9.3