From b351d323da4f1893afed9954a1e3601c32e4ee2d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8C=83?= <15095123350@163.com> Date: Mon, 5 Aug 2024 10:25:32 +0800 Subject: [PATCH] 20240805 --- src/Khd.Core.Domain/Models/BaseEquip.cs | 4 +- src/Khd.Core.Domain/Models/WmsRawOutstock.cs | 2 +- src/Khd.Core.Domain/Models/WmsRawReturn.cs | 2 +- src/Khd.Core.Wcs/Wcs/CreateTaskByRecord.cs | 60 ++++++++------ src/Khd.Core.Wcs/Wcs/FiveFloorCTU.cs | 78 +++++++++---------- src/Khd.Core.Wpf/Form/FormBoardT.xaml | 2 +- src/Khd.Core.Wpf/Form/FormBoardT.xaml.cs | 68 +++++++++++----- .../TaskForm/SelectOutRawForm.xaml.cs | 5 +- 8 files changed, 131 insertions(+), 90 deletions(-) diff --git a/src/Khd.Core.Domain/Models/BaseEquip.cs b/src/Khd.Core.Domain/Models/BaseEquip.cs index bfd6342..86c866c 100644 --- a/src/Khd.Core.Domain/Models/BaseEquip.cs +++ b/src/Khd.Core.Domain/Models/BaseEquip.cs @@ -133,8 +133,8 @@ namespace Khd.Core.Domain.Models /// [Column("remark")] public string remark { get; set; } - //[Column("is_out")] - //public int? IsOut { get; set; } + [Column("is_out")] + public int? IsOut { get; set; } } } diff --git a/src/Khd.Core.Domain/Models/WmsRawOutstock.cs b/src/Khd.Core.Domain/Models/WmsRawOutstock.cs index dd4a303..3e49031 100644 --- a/src/Khd.Core.Domain/Models/WmsRawOutstock.cs +++ b/src/Khd.Core.Domain/Models/WmsRawOutstock.cs @@ -22,7 +22,7 @@ namespace Khd.Core.Domain.Models [Key] [Column("raw_outstock_id")] - public long rawOutstockId { get; set; } + public long? rawOutstockId { get; set; } /// /// 任务编号 diff --git a/src/Khd.Core.Domain/Models/WmsRawReturn.cs b/src/Khd.Core.Domain/Models/WmsRawReturn.cs index df49622..dd10f35 100644 --- a/src/Khd.Core.Domain/Models/WmsRawReturn.cs +++ b/src/Khd.Core.Domain/Models/WmsRawReturn.cs @@ -20,7 +20,7 @@ namespace Khd.Core.Domain.Models [Key] [Column("raw_return_id")] - public long rawReturnId { get; set; } + public long? rawReturnId { get; set; } /// /// 任务编号 diff --git a/src/Khd.Core.Wcs/Wcs/CreateTaskByRecord.cs b/src/Khd.Core.Wcs/Wcs/CreateTaskByRecord.cs index 0e1e790..c4b3a77 100644 --- a/src/Khd.Core.Wcs/Wcs/CreateTaskByRecord.cs +++ b/src/Khd.Core.Wcs/Wcs/CreateTaskByRecord.cs @@ -672,31 +672,44 @@ namespace Khd.Core.Wcs.Wcs try { dbContext.ChangeTracker.Entries().ToList().ForEach(e => e.Reload()); - WcsTask? wcsTask = dbContext.WcsTask.Where(t => t.taskType == 28).FirstOrDefault(); - if (wcsTask != null) + BaseEquip baseEquip = dbContext.BaseEquip.First(t => t.objid == 10); + if (baseEquip.IsOut == 2 && !string.IsNullOrEmpty(baseEquip.endStationCode)) { - WmsRawInstock? wmsRawInstock = dbContext.WmsRawInstock.Where(t => t.instockType == "2" && t.warehouseId == 511 && t.executeStatus == "0").FirstOrDefault(); - if (wmsRawInstock != null) + bool hasTask = dbContext.WcsTask.Where(t => t.nextPointId == 10).Any(); + if (!hasTask) { - wcsTask.useFlag = 1; - wcsTask.createTime = DateTime.Now; - wmsRawInstock.executeStatus = "1"; - wmsRawInstock.beginTime = DateTime.Now; - WmsRawInstockDetail wmsRawInstockDetail = new WmsRawInstockDetail() + BaseEquip startEquip = StaticData.BaseEquip.First(t => t.endStationCode == baseEquip.endStationCode); + List wmsRawReturns = dbContext.WmsRawReturn.Where(t => t.endStationCode == baseEquip.endStationCode) + .Where(t => t.auditStatus == "1") + .Where(t => t.executeStatus == "0" || t.executeStatus == "1") + .ToList(); + wmsRawReturns.ForEach(t => t.executeStatus = "1"); + dbContext.UpdateRange(wmsRawReturns); + BaseEquip endEquip = StaticData.BaseEquip.First(t=>t.objid==21); + var wcsTask = new WcsTask() { - rawInstockDetailId = StaticData.SnowId.NextId(), - rawInstockId = wmsRawInstock.rawInstockId, - instockWay = "2", - activeFlag = "1", - stackAmount = 1, - createBy = "WCS", - createDate = DateTime.Now, - materialId = wmsRawInstock.materialId, - instockAmount = 1, - executeStatus = "0", + objid=StaticData.SnowId.NextId(), + serialNo=SystemData.GetSerialNo(dbContext), + taskType=48, + nextPointId=baseEquip.objid, + nextPointNo=baseEquip.equipNo, + currPointId=startEquip.objid, + currPointNo=startEquip.equipNo, + endPointId=endEquip.objid, + endPointNo=endEquip.equipNo, + equipmentNo=baseEquip.equipNo, + useFlag=1, + qty=1, + taskStatus=0, + containerNo="", + IsDelete=0, + createTime=DateTime.Now, }; - dbContext.Update(wmsRawInstock); - dbContext.Update(wcsTask); + baseEquip.IsOut = 0; + dbContext.Update(baseEquip); + WcsTaskLog wcsTaskLog = CoreMapper.Map(wcsTask); + dbContext.Add(wcsTask); + dbContext.Add(wcsTaskLog); dbContext.SaveChanges(); } } @@ -1832,8 +1845,7 @@ namespace Khd.Core.Wcs.Wcs if (endEquip.equipType == 10)//CTU出库到装配区 { BaseEquip endStationCodeEquip = dbContext.BaseEquip.First(t => t.objid == 10); - if (!string.IsNullOrEmpty(endStationCodeEquip.endStationCode) && endStationCodeEquip.ud3 != "1") - //if (!string.IsNullOrEmpty(endStationCodeEquip.endStationCode) && endStationCodeEquip.IsOut == 1) + if (!string.IsNullOrEmpty(endStationCodeEquip.endStationCode) && endStationCodeEquip.IsOut == 1) { if (item.endStationCode != endStationCodeEquip.endStationCode) { @@ -1993,7 +2005,7 @@ namespace Khd.Core.Wcs.Wcs } if (CreateSuccess) { - //endStationCodeEquip.IsOut = 0; + endStationCodeEquip.IsOut = 0; foreach (var orderItem in orderList) { if (orderItem.beginTime == null) diff --git a/src/Khd.Core.Wcs/Wcs/FiveFloorCTU.cs b/src/Khd.Core.Wcs/Wcs/FiveFloorCTU.cs index 26768e4..577b6ce 100644 --- a/src/Khd.Core.Wcs/Wcs/FiveFloorCTU.cs +++ b/src/Khd.Core.Wcs/Wcs/FiveFloorCTU.cs @@ -476,45 +476,45 @@ namespace Khd.Core.Wcs.Wcs } } } - //else if (item.taskType == 100)//盘库 - //{ - // BaseEquip endEquip = StaticData.BaseEquip.First(t => t.objid == item.endPointId); - // WmsBaseLocation wmsBaseLocation = dbContext.WmsBaseLocation.First(t => t.locationId == item.currPointId); - // var agvTask = new RequestAGVTaskDto - // { - // reqCode = StaticData.SnowId.NextId().ToString(), - // positionCodePath = new List - // { - // new() - // { - // positionCode =wmsBaseLocation.agvPositionCode, - // type = "05" - // }, - // new() - // { - // positionCode =endEquip.agvPositionCode, - // type = "00" - // }, - // }, - // ctnrTyp = "1", - // taskTyp = "F504" - // }; - // string message = JsonConvert.SerializeObject(agvTask); - // string result = HttpHelper.SendPostMessage(baseEquip.serverIp, baseEquip.serverPort.Value, "rcms/services/rest/hikRpcService/genAgvSchedulingTask", message); - // var reponseMessage = JsonConvert.DeserializeObject(result); - // if (reponseMessage != null && reponseMessage.code == "0") - // { - // item.taskCode = reponseMessage.data; - // item.taskStatus = 1; - // dbContext.Update(item); - // dbContext.WcsTaskLog.Where(t => t.objid == item.objid).Update(t => new WcsTaskLog() { taskStatus = 1 }); - // dbContext.SaveChanges(); - // } - // else - // { - // _logger.Info("CTU下发出库任务失败:" + reponseMessage?.message); - // } - //} + else if (item.taskType == 100)//盘库 + { + BaseEquip endEquip = StaticData.BaseEquip.First(t => t.objid == item.endPointId); + WmsBaseLocation wmsBaseLocation = dbContext.WmsBaseLocation.First(t => t.locationId == item.currPointId); + var agvTask = new RequestAGVTaskDto + { + reqCode = StaticData.SnowId.NextId().ToString(), + positionCodePath = new List + { + new() + { + positionCode =wmsBaseLocation.agvPositionCode, + type = "05" + }, + new() + { + positionCode =endEquip.agvPositionCode, + type = "00" + }, + }, + ctnrTyp = "1", + taskTyp = "F504" + }; + string message = JsonConvert.SerializeObject(agvTask); + string result = HttpHelper.SendPostMessage(baseEquip.serverIp, baseEquip.serverPort.Value, "rcms/services/rest/hikRpcService/genAgvSchedulingTask", message); + var reponseMessage = JsonConvert.DeserializeObject(result); + if (reponseMessage != null && reponseMessage.code == "0") + { + item.taskCode = reponseMessage.data; + item.taskStatus = 1; + dbContext.Update(item); + dbContext.WcsTaskLog.Where(t => t.objid == item.objid).Update(t => new WcsTaskLog() { taskStatus = 1 }); + dbContext.SaveChanges(); + } + else + { + _logger.Info("CTU下发出库任务失败:" + reponseMessage?.message); + } + } } else { diff --git a/src/Khd.Core.Wpf/Form/FormBoardT.xaml b/src/Khd.Core.Wpf/Form/FormBoardT.xaml index a020292..8b5c8b4 100644 --- a/src/Khd.Core.Wpf/Form/FormBoardT.xaml +++ b/src/Khd.Core.Wpf/Form/FormBoardT.xaml @@ -2254,7 +2254,7 @@