From 15ec20ac549bbb655e18bdc8592ba47fdab20890 Mon Sep 17 00:00:00 2001 From: liuwf Date: Sat, 10 Aug 2024 15:28:28 +0800 Subject: [PATCH 1/6] =?UTF-8?q?change-=E5=BF=BD=E7=95=A5=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 3 +- src/Khd.Core.Wcs/appsettings.json | 50 ------------------------------- 2 files changed, 2 insertions(+), 51 deletions(-) delete mode 100644 src/Khd.Core.Wcs/appsettings.json diff --git a/.gitignore b/.gitignore index 7afbb02..b8fd38f 100644 --- a/.gitignore +++ b/.gitignore @@ -339,4 +339,5 @@ ASALocalRun/ # BeatPulse healthcheck temp database healthchecksdb -appsettings.demo.json \ No newline at end of file +appsettings.demo.json +/src/Khd.Core.Wcs/appsettings.json diff --git a/src/Khd.Core.Wcs/appsettings.json b/src/Khd.Core.Wcs/appsettings.json deleted file mode 100644 index fb47994..0000000 --- a/src/Khd.Core.Wcs/appsettings.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "ConnectionStrings": { - //"DefaultConnection": "server=106.12.13.113;port=3336;database=khd_jyhb;uid=khd;pwd=khd@123;charset='utf8';persistsecurityinfo=True;SslMode=none;Allow User Variables=True", - //"DefaultConnection": "server=172.16.12.100;port=3306;database=hwjy-cloud;uid=kehaida;pwd=khdrkjy2024...;charset='utf8';persistsecurityinfo=True;SslMode=None;Allow User Variables=True" - //"DefaultConnection": "server=localhost;port=3306;database=jyhb;uid=root;pwd=root;charset='utf8';persistsecurityinfo=True;SslMode=None;Allow User Variables=True" - "DefaultConnection": "server=175.27.215.92;port=3306;database=hwjy-cloud;uid=kehaida;pwd=khd2024;charset='utf8';persistsecurityinfo=True;SslMode=None;Allow User Variables=True" - }, - "DeleteLogDays": 10,//删除日志的时间间隔,单位:天 - "PlcConfigs": [ - { - "IP": "192.168.2.30", - "Port": 102, //102是默认端口 - "CpuType": 40, - "Rack": 0, - "Slot": 1, - "Code": 0 - }, //提升机,接驳位 - { - "IP": "192.168.2.31", - "Port": 102, //102是默认端口 - "CpuType": 40, - "Rack": 0, - "Slot": 1, - "Code": 1 - }, //U型线 - { - "IP": "192.168.2.220", - "Port": 102, //102是默认端口 - "CpuType": 40, - "Rack": 0, - "Slot": 1, - "Code": 2 - } //二楼三楼设备,陈工提供。 - ], - "PLCSetting": { - "Mode": "0", - "EquipCode": "H61,H62,H63", - "Interval": "2000", - "AutoStart": "0", - "WaitTime": "60000", - "SiteCode": "999" - }, - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft": "Error", - "Microsoft.Hosting.Lifetime": "Information" - } - } -} From 67b328ce081e17fd436ca3b73702b25a9724a949 Mon Sep 17 00:00:00 2001 From: liuwf Date: Sun, 11 Aug 2024 16:48:49 +0800 Subject: [PATCH 2/6] . --- src/Khd.Core.Wcs/MainCentralControl.cs | 4 ++-- src/Khd.Core.Wcs/Wcs/CreateTaskByRecord.cs | 10 ++++++++-- src/Khd.Core.Wcs/Wcs/FiveFloorCTU.cs | 22 ++++++++++++++-------- src/Khd.Core.Wpf/Form/FormBoardT.xaml.cs | 9 ++++++--- 4 files changed, 30 insertions(+), 15 deletions(-) diff --git a/src/Khd.Core.Wcs/MainCentralControl.cs b/src/Khd.Core.Wcs/MainCentralControl.cs index b12a418..d424b42 100644 --- a/src/Khd.Core.Wcs/MainCentralControl.cs +++ b/src/Khd.Core.Wcs/MainCentralControl.cs @@ -84,11 +84,11 @@ namespace Khd.Core.Wcs SecondFloorLine secondFloorLine = new(_host, 2); secondFloorLine.StartPoint(); - //三层接驳位 + //三层接驳位 ThirdFloorPoint thirdFloorPoint = new(_host, 3); thirdFloorPoint.StartPoint(); - // 三层AGV + // 三层AGV ThirdFloorAGV thirdFloorAGV = new(_host, 3); thirdFloorAGV.StartPoint(); diff --git a/src/Khd.Core.Wcs/Wcs/CreateTaskByRecord.cs b/src/Khd.Core.Wcs/Wcs/CreateTaskByRecord.cs index 140c7bd..0994da3 100644 --- a/src/Khd.Core.Wcs/Wcs/CreateTaskByRecord.cs +++ b/src/Khd.Core.Wcs/Wcs/CreateTaskByRecord.cs @@ -1795,6 +1795,10 @@ namespace Khd.Core.Wcs.Wcs foreach (var item in rawOutStock) { + if (item.endStationCode == "BB_01") + { + + } decimal? RealOutNumber = item.realOutstockAmount; var endEquip = dbContext.BaseEquip.FirstOrDefault(t => t.equipNo == item.endStationCode); if (endEquip != null && endEquip.floorNo == 5) @@ -1988,6 +1992,7 @@ namespace Khd.Core.Wcs.Wcs .ToList(); decimal? needNumber = order.TotalAmount - order.realOutstockAmount; + // 寻找已经创建任务的料箱中的是否含有当前物料(A物料在料箱A\B中,然后找B物料的时候是否在料箱A\B中) foreach (var task in tasks) { var wmsRawStock = rawStock.Where(t => t.palletInfoCode == task.containerNo && t.materialId == order.MaterialId && t.saleOrderId == order.SaleOrderId).ToList(); @@ -2056,9 +2061,10 @@ namespace Khd.Core.Wcs.Wcs } else { - needNumber = 0; RealOutNumber += needNumber; qty = Convert.ToInt32(needNumber); + needNumber = 0; + stock.updateDate = DateTime.Now; } WmsRawOutstock? wmsRawOutstock = orderList.Where(t => t.materialId == order.MaterialId).FirstOrDefault(); @@ -2391,7 +2397,7 @@ namespace Khd.Core.Wcs.Wcs } } } - else if (endEquip.equipType == 13) + else if (endEquip.equipType == 13) //原材料到背板安装 { var stock = dbContext.WmsRawStock.Where(t => t.instockBatch == item.materialBatch).FirstOrDefault(); if (stock != null) diff --git a/src/Khd.Core.Wcs/Wcs/FiveFloorCTU.cs b/src/Khd.Core.Wcs/Wcs/FiveFloorCTU.cs index a94709f..da077b1 100644 --- a/src/Khd.Core.Wcs/Wcs/FiveFloorCTU.cs +++ b/src/Khd.Core.Wcs/Wcs/FiveFloorCTU.cs @@ -548,14 +548,20 @@ namespace Khd.Core.Wcs.Wcs } else if (item.taskType == StaticTaskType.FiveAccessoryIn)//入库任务 { - WmsBaseLocation wmsBaseLocation = dbContext.WmsBaseLocation - .First(t => t.locationId == item.endPointId && t.warehouseFloor == 5); - wmsBaseLocation.locationStatus = "1"; - wmsBaseLocation.ContainerStatus = "1"; - dbContext.Update(wmsBaseLocation); - dbContext.Remove(item); - dbContext.SaveChanges(); - dbContext.WcsTaskLog.Where(t => t.objid == item.objid).Update(t => new WcsTaskLog() { taskStatus = 6 }); + try + { + WmsBaseLocation wmsBaseLocation = dbContext.WmsBaseLocation + .First(t => t.locationId == item.endPointId && t.warehouseFloor == 5); + wmsBaseLocation.locationStatus = "1"; + wmsBaseLocation.ContainerStatus = "1"; + dbContext.Update(wmsBaseLocation); + dbContext.Remove(item); + dbContext.SaveChanges(); + dbContext.WcsTaskLog.Where(t => t.objid == item.objid).Update(t => new WcsTaskLog() { taskStatus = 6 }); + }catch (Exception ex) + { + _logger.Error($"入库异常捕捉:{ex.Message}"); + } } else if (item.taskType == StaticTaskType.FiveAccessoryStorage || item.taskType == StaticTaskType.FiveAccessoryRemove)//出库任务 { diff --git a/src/Khd.Core.Wpf/Form/FormBoardT.xaml.cs b/src/Khd.Core.Wpf/Form/FormBoardT.xaml.cs index 758839c..6a9f903 100644 --- a/src/Khd.Core.Wpf/Form/FormBoardT.xaml.cs +++ b/src/Khd.Core.Wpf/Form/FormBoardT.xaml.cs @@ -398,9 +398,10 @@ namespace Khd.Core.Wpf.Form List wcsTasks = dbContext.WcsTask.Where(t => t.taskType == 30).Where(t => orderIds.Contains(t.orderId)).ToList(); List containerNos = wcsTasks.Select(t => t.containerNo).ToList(); List wmsRawStocks = dbContext.WmsRawStock.Where(t => containerNos.Contains(t.palletInfoCode)).ToList(); - var thisOutList = wmsRawStocks.GroupBy(t => new { t.materialId, t.saleOrderId }) + var thisOutList = wmsRawStocks.GroupBy(t => new { t.materialId, t.saleOrderId,t.palletInfoCode }) .Select(t => new { + palletInfoCode = t.Key.palletInfoCode, materialId = t.Key.materialId, saleOrderId = t.Key.saleOrderId, thisOutAmount = t.Sum(x => x.totalAmount) - t.Sum(x => x.frozenAmount) @@ -420,17 +421,19 @@ namespace Khd.Core.Wpf.Form var orderNumber = from a in bill from b in thisOutList from c in mesBaseMaterialInfos - where a.materialId == b.materialId && a.saleOrderId == b.saleOrderId + where a.materialId == b.materialId && a.saleOrderId == b.saleOrderId && a.materialId ==c.MaterialId select new { + palletInfoCode = b.palletInfoCode, materialBatch = a.materialBatch, saleOrderId = b.saleOrderId, outstockAmount = a.outstockAmount, materialSpec = c.MaterialSpec, realOutstockAmount = a.realOutstockAmount, - thisOutAmount = b.thisOutAmount, + thisOutAmount = b.thisOutAmount, isSendOver = a.outstockAmount <= (a.realOutstockAmount + b.thisOutAmount) ? "已出完" : "未出完" }; + Dispatcher.Invoke(() => { this.OutTaskNumber.ItemsSource = orderNumber; From 4a81549e20e51e917ffb3e6d845bf50a05e19010 Mon Sep 17 00:00:00 2001 From: liuwf Date: Sun, 11 Aug 2024 16:55:09 +0800 Subject: [PATCH 3/6] . --- src/Khd.Core.Wpf/Form/FormBoardT.xaml.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Khd.Core.Wpf/Form/FormBoardT.xaml.cs b/src/Khd.Core.Wpf/Form/FormBoardT.xaml.cs index 6a9f903..63a1034 100644 --- a/src/Khd.Core.Wpf/Form/FormBoardT.xaml.cs +++ b/src/Khd.Core.Wpf/Form/FormBoardT.xaml.cs @@ -396,6 +396,7 @@ namespace Khd.Core.Wpf.Form if (!string.IsNullOrEmpty(baseEquip.endStationCode)) { List wcsTasks = dbContext.WcsTask.Where(t => t.taskType == 30).Where(t => orderIds.Contains(t.orderId)).ToList(); + List containerNos = wcsTasks.Select(t => t.containerNo).ToList(); List wmsRawStocks = dbContext.WmsRawStock.Where(t => containerNos.Contains(t.palletInfoCode)).ToList(); var thisOutList = wmsRawStocks.GroupBy(t => new { t.materialId, t.saleOrderId,t.palletInfoCode }) From cdb092d30613b699569bfea195bc349da2af285c Mon Sep 17 00:00:00 2001 From: liuwf Date: Sun, 11 Aug 2024 16:55:13 +0800 Subject: [PATCH 4/6] . --- src/Khd.Core.Wpf/Form/FormBoardT.xaml.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/Khd.Core.Wpf/Form/FormBoardT.xaml.cs b/src/Khd.Core.Wpf/Form/FormBoardT.xaml.cs index 63a1034..bad7804 100644 --- a/src/Khd.Core.Wpf/Form/FormBoardT.xaml.cs +++ b/src/Khd.Core.Wpf/Form/FormBoardT.xaml.cs @@ -408,6 +408,8 @@ namespace Khd.Core.Wpf.Form thisOutAmount = t.Sum(x => x.totalAmount) - t.Sum(x => x.frozenAmount) }); List endStationCodeOutRaw = wmsRawOutstocks.Where(t => t.endStationCode == baseEquip.endStationCode).ToList(); + + List materialIds = endStationCodeOutRaw.Select(t => t.materialId).ToList(); List mesBaseMaterialInfos = dbContext.MesBaseMaterialInfo.Where(t => materialIds.Contains(t.MaterialId)).ToList(); var bill = endStationCodeOutRaw.GroupBy(t => new { t.materialId, t.materialBatch, t.saleOrderId }) From 11be83bf640c60de09abfa6360c6deb430ecc185 Mon Sep 17 00:00:00 2001 From: liuwf Date: Mon, 12 Aug 2024 09:38:00 +0800 Subject: [PATCH 5/6] . --- src/Khd.Core.Wpf/Form/FormBoardT.xaml | 32 +++--- src/Khd.Core.Wpf/Form/FormBoardT.xaml.cs | 137 +++++++++++++++++------ 2 files changed, 123 insertions(+), 46 deletions(-) diff --git a/src/Khd.Core.Wpf/Form/FormBoardT.xaml b/src/Khd.Core.Wpf/Form/FormBoardT.xaml index 67970a0..68dd193 100644 --- a/src/Khd.Core.Wpf/Form/FormBoardT.xaml +++ b/src/Khd.Core.Wpf/Form/FormBoardT.xaml @@ -2154,10 +2154,14 @@ + + - - + />--> + + +