From c862dd0756111a4264666f7e7636a5a062cce806 Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期五, 19 四月 2024 09:11:56 +0800 Subject: [PATCH] 修改MES接口,优化托盘更换逻辑 --- 代码管理/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/HandleTask_Mes.cs | 55 +++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 43 insertions(+), 12 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/HandleTask_Mes.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/HandleTask_Mes.cs" index fc4e4b0..dddca41 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/HandleTask_Mes.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/HandleTask_Mes.cs" @@ -1,13 +1,17 @@ 锘縰sing Confluent.Kafka; using Newtonsoft.Json; using OfficeOpenXml.FormulaParsing.Excel.Functions.Text; +using OfficeOpenXml.FormulaParsing.Excel.Operators; using WIDESEA_Comm.LogInfo; using WIDESEA_Comm.MES_Info; using WIDESEA_Comm.MES_Info.Request; using WIDESEA_Common; +using WIDESEA_Core.EFDbContext; using WIDESEA_Core.FreeDB; using WIDESEA_Entity.DomainModels; using WIDESEA_Entity.ToAGV; +using WIDESEA_WMS.IRepositories; +using WIDESEA_WMS.Repositories; using static WIDESEA_Comm.MES_Info.BasicSN; namespace WIDESEA_WMS.Common.AGVTask @@ -34,24 +38,45 @@ { throw new Exception("鏃犱换鍔℃暟鎹�"); } - + VOLContext context = new VOLContext(); + IVV_Mes_WorkinfoRepository workinfoRepository = new VV_Mes_WorkinfoRepository(context); if (task.agv_tasktype == AGVTaskTypeEnum.TaskType_Outbound.ToString() /*|| task.agv_tasktype == AGVTaskTypeEnum.TaskType_OutsourceOutbound.ToString()*/|| task.agv_tasktype == AGVTaskTypeEnum.TaskType_OutsourceCarry.ToString()) { - foreach (var item in task.bindSN.Split(",")) + if(task.agv_tasktype == AGVTaskTypeEnum.TaskType_Outbound.ToString()) { - detail detail = new detail(); - detail.sn = item; - list.Add(detail); + foreach (var item in task.bindSN.Split(",")) + { + var work = workinfoRepository.Find(x => x.SN == item && x.processCode == task.agv_worktype.ToString()).FirstOrDefault(); + detail detail = new detail(); + detail.sn = item; + detail.jobID = work.jobID; + detail.processCode = work.processCode; + list.Add(detail); + } } + else + { + foreach (var item in task.bindSN.Split(",")) + { + //var work = workinfoRepository.Find(x => x.SN == item && x.processCode == "28").FirstOrDefault(); + detail detail = new detail(); + detail.sn = item; + detail.jobID = task.jobID; + detail.processCode = task.agv_worktype.ToString(); + list.Add(detail); + } + } + agvInWarehousePara outWarehousePara = new agvInWarehousePara() { - JobID = task.jobID, + WorkOrder = task.jobID, zoneID = task.agv_fromaddress, - processCode = task.agv_worktype.ToString(), + //processCode = task.agv_worktype.ToString(), details = list, layerNo = 1, stackID = "1", warehouseName = "Agv搴�", + Operator="AGV鑷姩", }; obj = outWarehousePara; ActionName = "agvOutWarehouse";//AGV->MES杞﹁疆鍑哄簱 @@ -61,19 +86,23 @@ { foreach (var item in task.bindSN.Split(",")) { + var work = workinfoRepository.Find(x => x.SN == item && x.processCode == task.agv_worktype.ToString()).FirstOrDefault(); detail detail = new detail(); detail.sn = item; + detail.jobID = work.jobID; + detail.processCode = work.processCode; list.Add(detail); } agvInWarehousePara inWarehousePara = new agvInWarehousePara() { - JobID = task.jobID, + WorkOrder = task.jobID, zoneID = task.agv_toaddress, - processCode = task.agv_worktype.ToString(), + //processCode = task.agv_worktype.ToString(), details = list, layerNo = 1, stackID = "1", warehouseName = "Agv搴�", + Operator = "AGV鑷姩", }; obj = inWarehousePara; ActionName = "agvInWarehouse";//AGV->MES杞﹁疆鍏ュ簱 @@ -82,23 +111,25 @@ //else if (task.agv_tasktype == "Transfer") //绉诲簱鍖哄垎 搴撳唴绉诲簱 else if (task.agv_tasktype == AGVTaskTypeEnum.TaskType_Carry.ToString()) //绉诲簱鍖哄垎 搴撳唴绉诲簱 { + List<detail1> list1 = new List<detail1>(); //杞﹁疆淇℃伅 foreach (var item in task.bindSN.Split(",")) { - detail detail = new detail(); + detail1 detail = new detail1(); detail.sn = item; - list.Add(detail); + list1.Add(detail); } agvMoveWarehousePara moveWarehousePara = new agvMoveWarehousePara() { fromZoneID = task.agv_fromaddress, toZoneID = task.agv_toaddress, - details = list, + details = list1, fromLayerNo = "1", fromStackID = "1", fromWarehouseName = "Agv搴�", toLayerNo = "1", toStackID = "1", toWarehouseName = "Agv搴�", + Operator = "AGV鑷姩", }; obj = moveWarehousePara; ActionName = "agvMoveWarehouse";//AGV->MES杞﹁疆绉诲簱 -- Gitblit v1.9.3