From 7be8a254765a2b0635e35e0fccfbde248c40c091 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8C=83?= <15095123350@163.com> Date: Wed, 31 Jul 2024 15:45:20 +0800 Subject: [PATCH 1/3] 20240731 --- src/Khd.Core.Domain/Models/BaseEquip.cs | 3 +- src/Khd.Core.Wcs/Wcs/CreateTaskByRecord.cs | 37 +-- src/Khd.Core.Wcs/Wcs/FiveFloorAGV.cs | 14 +- src/Khd.Core.Wcs/Wcs/SystemTimer.cs | 54 +++- src/Khd.Core.Wpf/App.xaml.cs | 1 - src/Khd.Core.Wpf/Form/FormBoardT.xaml | 8 +- src/Khd.Core.Wpf/Form/FormBoardT.xaml.cs | 353 ++++++++++++--------- src/Khd.Core.Wpf/appsettings.json | 4 +- 8 files changed, 272 insertions(+), 202 deletions(-) diff --git a/src/Khd.Core.Domain/Models/BaseEquip.cs b/src/Khd.Core.Domain/Models/BaseEquip.cs index 60ec406..86c866c 100644 --- a/src/Khd.Core.Domain/Models/BaseEquip.cs +++ b/src/Khd.Core.Domain/Models/BaseEquip.cs @@ -133,7 +133,8 @@ namespace Khd.Core.Domain.Models /// [Column("remark")] public string remark { get; set; } - + [Column("is_out")] + public int? IsOut { get; set; } } } diff --git a/src/Khd.Core.Wcs/Wcs/CreateTaskByRecord.cs b/src/Khd.Core.Wcs/Wcs/CreateTaskByRecord.cs index 983fcbd..b533581 100644 --- a/src/Khd.Core.Wcs/Wcs/CreateTaskByRecord.cs +++ b/src/Khd.Core.Wcs/Wcs/CreateTaskByRecord.cs @@ -771,26 +771,26 @@ namespace Khd.Core.Wcs.Wcs nextPointNo = agvEquip.equipNo, materialBarcode = wmsProductInstock.productBatch, }; - WmsProductInstockDetail wmsProductInstockDetail = new WmsProductInstockDetail() - { - erpAmount = 0, - productId = wmsProductInstock.productId, - executeStatus = "1", - productInstockDetailId = StaticData.SnowId.NextId(), - instockAmount = 1, - instockBy = "WCS", - instockDate = DateTime.Now, - instockWay = "2", - locationCode = wmsBaseLocation.locationCode, - planAmount = 1, - productBarcode = wmsProductInstock.productBatch, - productBatch = wmsProductInstock.productBatch, - productInstockId = wmsProductInstock.productInstockId, - }; + //WmsProductInstockDetail wmsProductInstockDetail = new WmsProductInstockDetail() + //{ + // erpAmount = 0, + // productId = wmsProductInstock.productId, + // executeStatus = "1", + // productInstockDetailId = StaticData.SnowId.NextId(), + // instockAmount = 1, + // instockBy = "WCS", + // instockDate = DateTime.Now, + // instockWay = "2", + // locationCode = wmsBaseLocation.locationCode, + // planAmount = 1, + // productBarcode = wmsProductInstock.productBatch, + // productBatch = wmsProductInstock.productBatch, + // productInstockId = wmsProductInstock.productInstockId, + //}; WcsTaskLog wcsTaskLog = CoreMapper.Map(wcsTask); wmsProductInstock.executeStatus = "1"; wmsBaseLocation.locationStatus = "2"; - dbContext.Add(wmsProductInstockDetail); + //dbContext.Add(wmsProductInstockDetail); dbContext.Update(wmsProductInstock); dbContext.Update(wmsBaseLocation); dbContext.Add(wcsTask); @@ -1821,7 +1821,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)) + if (!string.IsNullOrEmpty(endStationCodeEquip.endStationCode) && endStationCodeEquip.IsOut == 1) { if (item.endStationCode != endStationCodeEquip.endStationCode) { @@ -1981,6 +1981,7 @@ namespace Khd.Core.Wcs.Wcs } if (CreateSuccess) { + endStationCodeEquip.IsOut = 0; foreach (var orderItem in orderList) { if (orderItem.beginTime == null) diff --git a/src/Khd.Core.Wcs/Wcs/FiveFloorAGV.cs b/src/Khd.Core.Wcs/Wcs/FiveFloorAGV.cs index 741e77d..b05d7cc 100644 --- a/src/Khd.Core.Wcs/Wcs/FiveFloorAGV.cs +++ b/src/Khd.Core.Wcs/Wcs/FiveFloorAGV.cs @@ -567,9 +567,9 @@ namespace Khd.Core.Wcs.Wcs .FirstOrDefault(); if (mesBasePalletInfo != null && wmsProductInstock != null) { - WmsProductInstockDetail? wmsProductInstockDetail = dbContext.WmsProductInstockDetail.Where(t => t.productInstockId == wmsProductInstock.productInstockId).FirstOrDefault(); - if (wmsProductInstockDetail != null) - { + //WmsProductInstockDetail? wmsProductInstockDetail = dbContext.WmsProductInstockDetail.Where(t => t.productInstockId == wmsProductInstock.productInstockId).FirstOrDefault(); + //if (wmsProductInstockDetail != null) + //{ wmsProductInstock.executeStatus = "2"; wmsProductInstock.endTime = DateTime.Now; dbContext.Update(wmsProductInstock); @@ -599,17 +599,17 @@ namespace Khd.Core.Wcs.Wcs warehouseId = 512 }; BaseEquip startEquip = StaticData.BaseEquip.First(t => t.objid == item.currPointId); - wmsProductInstockDetail.executeStatus = "2"; - wmsProductInstockDetail.instockDate = DateTime.Now; + //wmsProductInstockDetail.executeStatus = "2"; + //wmsProductInstockDetail.instockDate = DateTime.Now; startEquip.emptyCount = 0; - dbContext.Update(wmsProductInstockDetail); + //dbContext.Update(wmsProductInstockDetail); dbContext.Update(startEquip); dbContext.Add(wmsProductStock); dbContext.Update(wmsBaseLocation); dbContext.WcsTask.Remove(item); dbContext.WcsTaskLog.Where(t => t.objid == item.objid).Update(t => new WcsTaskLog { taskStatus = 6 }); dbContext.SaveChanges(); - } + //} } } diff --git a/src/Khd.Core.Wcs/Wcs/SystemTimer.cs b/src/Khd.Core.Wcs/Wcs/SystemTimer.cs index fd9fd1d..9d182a9 100644 --- a/src/Khd.Core.Wcs/Wcs/SystemTimer.cs +++ b/src/Khd.Core.Wcs/Wcs/SystemTimer.cs @@ -127,22 +127,52 @@ namespace Khd.Core.Wcs.Wcs BaseEquip agvEquip = StaticData.BaseEquip.First(t => t.objid == item.nextPointId); if (!string.IsNullOrEmpty(item.taskCode) && !string.IsNullOrEmpty(agvEquip.serverIp)) { - dbContext.WcsTask.Remove(item); - var cancelTask = new + if(item.endPointId== 11) { - reqCode = StaticData.SnowId.NextId().ToString(), - taskCode = item.taskCode - }; - string reponse = HttpHelper.SendPostMessage(agvEquip.serverIp, agvEquip.serverPort.Value, "rcms/services/rest/hikRpcService/cancelTask", cancelTask.ToJsonString()); - var result = JsonConvert.DeserializeObject(reponse); - if (result != null && result.code == "0") - { - dbContext.SaveChanges(); - _logger.Info($"任务{item.taskCode}已删除"); + dbContext.WcsTask.Remove(item); + if (item.taskStatus == 6) + { + dbContext.SaveChanges(); + } + else + { + var cancelTask = new + { + reqCode = StaticData.SnowId.NextId().ToString(), + taskCode = item.taskCode + }; + string reponse = HttpHelper.SendPostMessage(agvEquip.serverIp, agvEquip.serverPort.Value, "rcms/services/rest/hikRpcService/cancelTask", cancelTask.ToJsonString()); + var result = JsonConvert.DeserializeObject(reponse); + if (result != null && result.code == "0") + { + dbContext.SaveChanges(); + _logger.Info($"任务{item.taskCode}已删除"); + } + else + { + _logger.Error($"任务{item.taskCode}删除失败,原因:{result?.message}"); + } + } } else { - _logger.Error($"任务{item.taskCode}删除失败,原因:{result?.message}"); + dbContext.WcsTask.Remove(item); + var cancelTask = new + { + reqCode = StaticData.SnowId.NextId().ToString(), + taskCode = item.taskCode + }; + string reponse = HttpHelper.SendPostMessage(agvEquip.serverIp, agvEquip.serverPort.Value, "rcms/services/rest/hikRpcService/cancelTask", cancelTask.ToJsonString()); + var result = JsonConvert.DeserializeObject(reponse); + if (result != null && result.code == "0") + { + dbContext.SaveChanges(); + _logger.Info($"任务{item.taskCode}已删除"); + } + else + { + _logger.Error($"任务{item.taskCode}删除失败,原因:{result?.message}"); + } } } else diff --git a/src/Khd.Core.Wpf/App.xaml.cs b/src/Khd.Core.Wpf/App.xaml.cs index 3844b9c..32dff5e 100644 --- a/src/Khd.Core.Wpf/App.xaml.cs +++ b/src/Khd.Core.Wpf/App.xaml.cs @@ -27,7 +27,6 @@ namespace Khd.Core.Wpf .Build(); SystemData.PlcConfigs = configuration.GetSection("PlcConfigs").Get>(); - ConnectionStrings.ConnectionString = configuration["ConnectionStrings:DefaultConnection"].ToString(); ////配置文件 加载 Thrift 推送端口 //ThriftConfig.ThriftIpAddress = configuration["ThriftConfig:ThriftIpAddress"].ToString(); diff --git a/src/Khd.Core.Wpf/Form/FormBoardT.xaml b/src/Khd.Core.Wpf/Form/FormBoardT.xaml index e7af08a..96315e2 100644 --- a/src/Khd.Core.Wpf/Form/FormBoardT.xaml +++ b/src/Khd.Core.Wpf/Form/FormBoardT.xaml @@ -1,4 +1,4 @@ - - + @@ -1754,6 +1754,7 @@ - - - - - + + + + +