From 02aefe4bc6808cce80964fcd939762e43828a312 Mon Sep 17 00:00:00 2001
From: pan <antony1029@163.com>
Date: 星期五, 12 十二月 2025 16:12:14 +0800
Subject: [PATCH] 提交
---
项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs | 105 +++++++++++++++++++++++++++-------------------------
1 files changed, 54 insertions(+), 51 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs"
index b65d4c3..07c7c45 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs"
@@ -1135,34 +1135,36 @@
allocatefeedmodel.Details.Add(detailModel);
- }
- var groupedResult = allocatefeedmodel.Details.GroupBy(item => new
- {
- item.WarehouseCode,
- item.MaterialCode,
- item.Unit,
- item.LineNo
- }).Select(group => new AllocateDtoDetail
- {
- WarehouseCode = group.Key.WarehouseCode,
- MaterialCode = group.Key.MaterialCode,
- LineNo = group.Key.LineNo,
- Qty = group.Sum(x => x.Qty),
- Unit = group.Key.Unit,
- Barcodes = group.SelectMany(x => x.Barcodes)
- .GroupBy(b => b.Barcode)
- .Select(b => new BarcodeInfo
- {
- Barcode = b.Key,
- BatchNo = b.First().BatchNo,
- SupplyCode = b.First().SupplyCode,
- Qty = b.Max(x => x.Qty),
- Unit = b.First().Unit
- }) .ToList()
- }) .ToList();
- allocatefeedmodel.Details = groupedResult;
+ }
+ var groupedResult = allocatefeedmodel.Details
+ .GroupBy(item => new { item.WarehouseCode, item.MaterialCode, item.Unit, item.LineNo })
+ .Select(group => {
+
+ var deduplicatedBarcodes = group.SelectMany(x => x.Barcodes)
+ .GroupBy(b => b.Barcode)
+ .Select(b => new BarcodeInfo
+ {
+ Barcode = b.Key,
+ BatchNo = b.First().BatchNo,
+ SupplyCode = b.First().SupplyCode,
+ Qty = b.Max(x => x.Qty),
+ Unit = b.First().Unit
+ }).ToList();
+ return new AllocateDtoDetail
+ {
+ WarehouseCode = group.Key.WarehouseCode,
+ MaterialCode = group.Key.MaterialCode,
+ LineNo = group.Key.LineNo,
+ Qty = deduplicatedBarcodes.Sum(b => b.Qty),
+ Unit = group.Key.Unit,
+ Barcodes = deduplicatedBarcodes
+ };
+ }).ToList();
- var result = await _invokeMESService.FeedbackAllocate(allocatefeedmodel);
+ allocatefeedmodel.Details = groupedResult;
+
+
+ var result = await _invokeMESService.FeedbackAllocate(allocatefeedmodel);
if (result != null && result.code == 200)
{
await _outboundOrderDetailService.Db.Updateable<Dt_OutboundOrderDetail>()
@@ -1247,30 +1249,31 @@
}
feedmodel.details.Add(detailModel);
}
- var groupedResult = feedmodel.details.GroupBy(item => new
- {
- item.warehouseCode,
- item.materialCode,
- item.unit,
- item.lineNo
- }).Select(group => new FeedbackOutboundDetailsModel
- {
- warehouseCode = group.Key.warehouseCode,
- materialCode = group.Key.materialCode,
- lineNo = group.Key.lineNo,
- qty = group.Sum(x => x.qty),
- unit = group.Key.unit,
- barcodes = group.SelectMany(x => x.barcodes)
- .GroupBy(b => b.barcode)
- .Select(b => new WIDESEA_DTO.Outbound.BarcodesModel
- {
- barcode = b.Key,
- batchNo = b.First().batchNo,
- supplyCode = b.First().supplyCode,
- qty = b.Max(x => x.qty),
- unit = b.First().unit
- }).ToList()
- }).ToList();
+
+ var groupedResult = feedmodel.details
+ .GroupBy(item => new { item.warehouseCode, item.materialCode, item.unit, item.lineNo })
+ .Select(group => {
+ var deduplicatedBarcodes = group.SelectMany(x => x.barcodes)
+ .GroupBy(b => b.barcode)
+ .Select(b =>new WIDESEA_DTO.Outbound.BarcodesModel
+ {
+ barcode = b.Key,
+ batchNo = b.First().batchNo,
+ supplyCode = b.First().supplyCode,
+ qty = b.Max(x => x.qty),
+ unit = b.First().unit
+ }).ToList();
+ return new FeedbackOutboundDetailsModel
+ {
+ warehouseCode = group.Key.warehouseCode,
+ materialCode = group.Key.materialCode,
+ lineNo = group.Key.lineNo,
+ qty = deduplicatedBarcodes.Sum(b => b.qty),
+ unit = group.Key.unit,
+ barcodes = deduplicatedBarcodes
+ };
+ }).ToList();
+
feedmodel.details = groupedResult;
var result = await _invokeMESService.FeedbackOutbound(feedmodel);
--
Gitblit v1.9.3