From 62b5e514154820ed41f0093c29e35b07224a2ba9 Mon Sep 17 00:00:00 2001
From: pan <antony1029@163.com>
Date: 星期二, 02 十二月 2025 09:11:55 +0800
Subject: [PATCH] 提交

---
 项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundPickingService.cs |   37 +++++++++---------
 项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs            |   10 ++--
 项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_BasicService/InvokeMESService.cs          |   40 ++++++++++---------
 3 files changed, 45 insertions(+), 42 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_BasicService/InvokeMESService.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_BasicService/InvokeMESService.cs"
index a500380..a4a8d8d 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_BasicService/InvokeMESService.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_BasicService/InvokeMESService.cs"
@@ -269,7 +269,7 @@
 
                                         };
 
-                                        var groupedData = lists.GroupBy(item => new { item.MaterielCode, item.SupplyCode, item.BatchNo, item.InboundOrderRowNo, item.BarcodeUnit, item.WarehouseCode })
+                                        var groupedData = lists.GroupBy(item => new { item.MaterielCode, item.InboundOrderRowNo, item.BarcodeUnit, item.WarehouseCode })
                                            .Select(group => new AllocateDtoDetail
                                            {
                                                MaterialCode = group.Key.MaterielCode,
@@ -596,25 +596,27 @@
                                        x.Status == (int)OutLockStockStatusEnum.鎷i�夊畬鎴�)
                             .ToListAsync();
 
-                        var detailModel = new FeedbackOutboundDetailsModel
-                        {
-                            materialCode = detail.MaterielCode,
-                            lineNo = detail.lineNo, // 娉ㄦ剰锛氳繖閲屽彲鑳介渶瑕佽皟鏁村瓧娈靛悕
-                            warehouseCode = detail.WarehouseCode,
-                            qty = detail.BarcodeQty,
-                            currentDeliveryQty = detail.BarcodeQty,
-                            unit = detail.BarcodeUnit,
-                            barcodes = detailLocks.Select(lockInfo => new WIDESEA_DTO.Outbound.BarcodesModel
-                            {
-                                barcode = lockInfo.CurrentBarcode,
-                                supplyCode = lockInfo.SupplyCode,
-                                batchNo = lockInfo.BatchNo,
-                                unit = lockInfo.BarcodeUnit,
-                                qty = lockInfo.BarcodeQty // 鏉$爜绾у埆鐨勬暟閲忎粛鐢ㄩ攣瀹氳褰�
-                            }).ToList()
-                        };
 
-                        feedmodel.details.Add(detailModel);
+                        var groupdata = detailLocks.GroupBy(item => new { item.MaterielCode,item.lineNo, item.BarcodeUnit, item.WarehouseCode })
+                                 .Select(group =>new FeedbackOutboundDetailsModel
+                                  {
+                                     
+                                      materialCode = group.Key.MaterielCode,
+                                      lineNo = group.Key.lineNo, // 娉ㄦ剰锛氳繖閲屽彲鑳介渶瑕佽皟鏁村瓧娈靛悕
+                                      warehouseCode = group.Key.WarehouseCode,
+                                      qty = group.Sum(x => x.BarcodeQty),
+                                      currentDeliveryQty = group.Sum(x => x.BarcodeQty),
+                                      unit = group.Key.BarcodeUnit,
+                                      barcodes = group.Select(lockInfo => new WIDESEA_DTO.Outbound.BarcodesModel
+                                      {
+                                          barcode = lockInfo.CurrentBarcode,
+                                          supplyCode = lockInfo.SupplyCode,
+                                          batchNo = lockInfo.BatchNo,
+                                          unit = lockInfo.BarcodeUnit,
+                                          qty = lockInfo.BarcodeQty // 鏉$爜绾у埆鐨勬暟閲忎粛鐢ㄩ攣瀹氳褰�
+                                      }).ToList()
+                                  }).ToList();
+                        feedmodel.details.AddRange(groupdata);
                     }
 
                     var result = await FeedbackOutbound(feedmodel);
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_OutboundService/OutboundPickingService.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_OutboundService/OutboundPickingService.cs"
index 0b032a3..e31d56d 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_OutboundService/OutboundPickingService.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_OutboundService/OutboundPickingService.cs"
@@ -2828,25 +2828,26 @@
                                        x.Status == (int)OutLockStockStatusEnum.鎷i�夊畬鎴�)
                             .ToListAsync();
 
-                        var detailModel = new FeedbackOutboundDetailsModel
-                        {
-                            materialCode = detail.MaterielCode,
-                            lineNo = detail.lineNo,
-                            warehouseCode = detail.WarehouseCode,
-                            qty = detail.BarcodeQty, // 浣跨敤璁㈠崟鏄庣粏鐨勫凡鍑哄簱鏁伴噺
-                            currentDeliveryQty = detail.BarcodeQty,
-                            unit = detail.BarcodeUnit,
-                            barcodes = detailLocks.Select(lockInfo => new WIDESEA_DTO.Outbound.BarcodesModel
-                            {
-                                barcode = lockInfo.CurrentBarcode,
-                                supplyCode = lockInfo.SupplyCode,
-                                batchNo = lockInfo.BatchNo,
-                                unit = lockInfo.BarcodeUnit,
-                                qty = lockInfo.BarcodeQty //  
-                            }).ToList()
-                        };
+                        var groupdata = detailLocks.GroupBy(item => new { item.MaterielCode, item.lineNo, item.BarcodeUnit, item.WarehouseCode })
+                              .Select(group => new FeedbackOutboundDetailsModel
+                              {
 
-                        feedmodel.details.Add(detailModel);
+                                  materialCode = group.Key.MaterielCode,
+                                  lineNo = group.Key.lineNo,  
+                                  warehouseCode = group.Key.WarehouseCode,
+                                  qty = group.Sum(x => x.BarcodeQty),
+                                  currentDeliveryQty = group.Sum(x => x.BarcodeQty),
+                                  unit = group.Key.BarcodeUnit,
+                                  barcodes = group.Select(lockInfo => new WIDESEA_DTO.Outbound.BarcodesModel
+                                  {
+                                      barcode = lockInfo.CurrentBarcode,
+                                      supplyCode = lockInfo.SupplyCode,
+                                      batchNo = lockInfo.BatchNo,
+                                      unit = lockInfo.BarcodeUnit,
+                                      qty = lockInfo.BarcodeQty  
+                                  }).ToList()
+                              }).ToList();
+                        feedmodel.details.AddRange(groupdata);
                     }
                     var result = await _invokeMESService.FeedbackOutbound(feedmodel);
                     if (result != null && result.code == 200)
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 8962cac..0a09b2d 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"
@@ -297,7 +297,7 @@
 
                             };
 
-                            var groupedData = inboundOrder.Details.GroupBy(item => new { item.MaterielCode, item.SupplyCode, item.BatchNo, item.lineNo, item.BarcodeUnit, item.WarehouseCode })
+                            var groupedData = inboundOrder.Details.GroupBy(item => new { item.MaterielCode, item.lineNo, item.BarcodeUnit, item.WarehouseCode })
                                .Select(group => new AllocateDtoDetail
                                {
                                    MaterialCode = group.Key.MaterielCode,
@@ -353,7 +353,7 @@
 
                             };
 
-                            var groupedData = inboundOrder.Details.GroupBy(item => new { item.MaterielCode, item.SupplyCode, item.BatchNo, item.lineNo, item.BarcodeUnit, item.WarehouseCode })
+                            var groupedData = inboundOrder.Details.GroupBy(item => new { item.MaterielCode, item.lineNo, item.BarcodeUnit, item.WarehouseCode })
                                .Select(group => new AllocateDtoDetail
                                {
                                    MaterialCode = group.Key.MaterielCode,
@@ -703,10 +703,9 @@
                             var detailModel = new AllocateDtoDetail
                             {
                                 MaterialCode = detail.MaterielCode,
-                                LineNo = detail.lineNo, // 娉ㄦ剰锛氳繖閲屽彲鑳介渶瑕佽皟鏁村瓧娈靛悕
+                                LineNo = detail.lineNo,  
                                 WarehouseCode = detail.WarehouseCode,
-                                Qty = detail.OverOutQuantity, // 浣跨敤璁㈠崟鏄庣粏鐨勫凡鍑哄簱鏁伴噺
-                                //currentDeliveryQty = detail.OverOutQuantity,
+                                Qty = detailLocks.Sum(x=>x.BarcodeQty),                           
                                 Unit = detail.Unit,
                                 Barcodes = detailLocks.Select(lockInfo => new BarcodeInfo
                                 {
@@ -720,6 +719,7 @@
 
                             allocatefeedmodel.Details.Add(detailModel);
                         }
+                        
                         var result = await _invokeMESService.FeedbackAllocate(allocatefeedmodel);
                         if (result != null && result.code == 200)
                         {

--
Gitblit v1.9.3