From 8f45f14bda4601c6d65ce33d7052c9b2682306fd Mon Sep 17 00:00:00 2001
From: pan <antony1029@163.com>
Date: 星期五, 28 十一月 2025 21:22:04 +0800
Subject: [PATCH] Merge branch 'master' of http://115.159.85.185:8098/r/ZhongRui/ALDbanyunxiangmu

---
 项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Allocate/AllocateOrderController.cs |    4 +-
 项目代码/WIDESEA_WMSClient/src/extension/inbound/allocateinboundOrder.js                             |    7 +--
 项目代码/WIDESEA_WMSClient/src/extension/outbound/outboundOrder.js                                   |    1 
 项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_AllocateService/AllocateService.cs                        |   47 +++++++++++++++++------
 项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService_Inbound.cs                    |    2 
 项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_Common/OrderEnum/InboundOrderMenu.cs                      |    5 +-
 项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs                            |    2 
 项目代码/WIDESEA_WMSClient/src/views/inbound/allocateinboundOrder.vue                                |   10 ++--
 8 files changed, 50 insertions(+), 28 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEA_WMSClient/src/extension/inbound/allocateinboundOrder.js" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEA_WMSClient/src/extension/inbound/allocateinboundOrder.js"
index 7d594ea..76c131e 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEA_WMSClient/src/extension/inbound/allocateinboundOrder.js"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEA_WMSClient/src/extension/inbound/allocateinboundOrder.js"
@@ -40,7 +40,7 @@
 
           const targetRow = selectedRows[0];
      
-          this.$emit('openPalletDialog', targetRow.inboundOrderNo);
+          this.$emit('openPalletDialog', targetRow.orderNo);
         }
       },
       {
@@ -71,9 +71,8 @@
                         // 鍙戣捣鎾ら攢缁勭洏璇锋眰
                         try {
                             //console.log('鍙戣捣鎾ら攢缁勭洏璇锋眰锛屾墭鐩樺彿锛�', formData.palletCode.trim());
-                            const response = await http.post('/api/InboundOrder/UndoPalletGroup', {
-                                palletCode: formData.palletCode.trim()
-                            });
+                            const response = await http.post('/api/InboundOrder/UndoPalletGroup?palletCode='+formData.palletCode.trim());
+                              
 
                             const { status, message, data } = response;
                             if (status) {
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEA_WMSClient/src/extension/outbound/outboundOrder.js" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEA_WMSClient/src/extension/outbound/outboundOrder.js"
index e8aff0e..82ab294 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEA_WMSClient/src/extension/outbound/outboundOrder.js"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEA_WMSClient/src/extension/outbound/outboundOrder.js"
@@ -335,6 +335,7 @@
     searchBefore(param) {
       //鐣岄潰鏌ヨ鍓�,鍙互缁檖aram.wheres娣诲姞鏌ヨ鍙傛暟
       //杩斿洖false锛屽垯涓嶄細鎵ц鏌ヨ
+      this.searchFormFields.orderType=[0]; //鍑哄簱鍗�
       return true;
     },
     searchAfter(result) {
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEA_WMSClient/src/views/inbound/allocateinboundOrder.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEA_WMSClient/src/views/inbound/allocateinboundOrder.vue"
index 3acaf44..33c7454 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEA_WMSClient/src/views/inbound/allocateinboundOrder.vue"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEA_WMSClient/src/views/inbound/allocateinboundOrder.vue"
@@ -44,7 +44,7 @@
     });
     const editFormFields = ref({
       orderType: "",
-      inboundOrderNo: "",
+      orderNo: "",
       upperOrderNo: "",
       remark: "",
     });
@@ -59,7 +59,7 @@
           data: [],
         },
         {
-          field: "inboundOrderNo",
+          field: "orderNo",
           title: "鍗曟嵁缂栧彿",
           type: "string",
         },
@@ -76,7 +76,7 @@
       ],
     ]);
     const searchFormFields = ref({
-      inboundOrderNo: "",
+      orderNo: "",
       upperOrderNo: "",
       orderType: "115",
       orderStatus: "",
@@ -86,7 +86,7 @@
     });
     const searchFormOptions = ref([
       [
-        { title: "鍗曟嵁缂栧彿", field: "inboundOrderNo", type: "like" },
+        { title: "鍗曟嵁缂栧彿", field: "orderNo", type: "like" },
         { title: "涓婃父鍗曟嵁缂栧彿", field: "upperOrderNo", type: "like" },
         {
           title: "鍗曟嵁绫诲瀷",
@@ -127,7 +127,7 @@
         align: "left",
       },
       {
-        field: "inboundOrderNo",
+        field: "orderNo",
         title: "鍗曟嵁缂栧彿",
         type: "string",
         width: 120,
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_AllocateService/AllocateService.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_AllocateService/AllocateService.cs"
index eca04d4..1908f29 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_AllocateService/AllocateService.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_AllocateService/AllocateService.cs"
@@ -99,7 +99,7 @@
             {
                 if (businessType == BusinessTypeEnum.澶栭儴浠撳簱璋冩櫤浠�)
                 {
-                    allocateOrder.OrderType = InOrderTypeEnum.Allocat.ObjToInt();
+                    allocateOrder.OrderType = InOrderTypeEnum.AllocatInbound.ObjToInt();
                     var inboundOrders = ConvertToInboundOrders(allocateOrder);
                     await _inboundService.InbounOrderService.ReceiveInboundOrder(inboundOrders, 1);
                 }
@@ -107,7 +107,7 @@
                 {
                     if (businessType == BusinessTypeEnum.鏅轰粨璋冨閮ㄤ粨搴�)
                     {
-                        allocateOrder.OrderType = InOrderTypeEnum.Allocat.ObjToInt();
+                        allocateOrder.OrderType = InOrderTypeEnum.AllocatOutbound.ObjToInt();
                     }
                     else if (businessType == BusinessTypeEnum.鏅轰粨璋冩櫤浠�)
                     {
@@ -279,6 +279,11 @@
 
         public List<Dt_InboundOrder> ConvertToInboundOrders(Dt_AllocateOrder allocateOrder)
         {
+            var distinctDetails = allocateOrder.Details
+                .GroupBy(d => d.Barcode)
+                .Select(g => g.First())
+                .ToList();
+
             return new List<Dt_InboundOrder>()
             {
                 new Dt_InboundOrder(){
@@ -293,9 +298,9 @@
                    IsBatch=allocateOrder.IsBatch,
                    FactoryArea=allocateOrder.FactoryArea,
                    Remark=allocateOrder.Remark,
-                   Details=allocateOrder.Details.Select(detail=>new Dt_InboundOrderDetail
+                   Details=distinctDetails.Select(detail=>new Dt_InboundOrderDetail
                    {
-                       OrderId= detail.OrderId,
+                       OrderId= 0,
                        MaterielCode=detail.MaterielCode,
                        MaterielName="",
                        BatchNo=detail.BatchNo,
@@ -305,6 +310,7 @@
                        OrderDetailStatus=detail.OrderDetailStatus,
                        Unit=detail.Unit,
                        RowNo=0,
+                       lineNo=detail.LineNo,
                        SupplyCode=detail.SupplyCode,
                        WarehouseCode=detail.WarehouseCode,
                        Barcode=detail.Barcode,
@@ -318,6 +324,18 @@
 
         public Dt_OutboundOrder ConvertToOutboundOrders(Dt_AllocateOrder allocateOrder)
         {
+
+            var distinctDetails = allocateOrder.Details
+    .GroupBy(d => string.IsNullOrEmpty(d.Barcode)
+        ? $"{d.MaterielCode}_{d.BatchNo}_{d.SupplyCode}_{d.WarehouseCode}"
+        : d.Barcode)
+    .Select(g => new
+    {
+        Detail = g.First(),
+        //姹囨�诲垎缁勫唴鐨勬暟閲�
+        Qty = g.Sum(x => x.BarcodeQty ?? x.OrderQuantity)
+    }).ToList();
+
             return new Dt_OutboundOrder()
             {
                 WarehouseId = allocateOrder.WarehouseId,
@@ -332,20 +350,23 @@
                 Remark = allocateOrder.Remark,
                 DepartmentCode = "",
                 DepartmentName = "",
-                Details = allocateOrder.Details.Select(detail => new Dt_OutboundOrderDetail
+                Details = distinctDetails.Select(item => new Dt_OutboundOrderDetail
                 {
-                    OrderId = detail.OrderId,
-                    MaterielCode = detail.MaterielCode,
+                    OrderId = 0,
+                    MaterielCode = item.Detail.MaterielCode,
                     MaterielName = "",
-                    BatchNo = detail.BatchNo,
-                    OrderQuantity = detail.OrderQuantity,
+                    BatchNo = item.Detail.BatchNo,
+                    OrderQuantity = item.Detail.OrderQuantity,
+                    BarcodeQty = (decimal)item.Detail.BarcodeQty,
+                    BarcodeUnit = item.Detail.BarcodeUnit,
                     LockQuantity = 0,
+                    lineNo = item.Detail.LineNo,
                     OverOutQuantity = 0,
-                    OrderDetailStatus = detail.OrderDetailStatus,
-                    Unit = detail.Unit,
+                    OrderDetailStatus = item.Detail.OrderDetailStatus,
+                    Unit = item.Detail.Unit,
                     RowNo = 0,
-                    SupplyCode = detail.SupplyCode,
-                    WarehouseCode = detail.WarehouseCode,
+                    SupplyCode = item.Detail.SupplyCode,
+                    WarehouseCode = item.Detail.WarehouseCode,
 
                 }).ToList()
             };
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_Common/OrderEnum/InboundOrderMenu.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_Common/OrderEnum/InboundOrderMenu.cs"
index 9475672..61b81fc 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_Common/OrderEnum/InboundOrderMenu.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_Common/OrderEnum/InboundOrderMenu.cs"
@@ -70,9 +70,10 @@
         /// 璋冩嫧鍏ュ簱鍗�
         /// </summary>
         [Description("璋冩嫧鍏ュ簱鍗�")]
-        Allocat = 115,
+        AllocatInbound = 115,
 
-
+        [Description("璋冩嫧鍑哄簱鍗�")]
+        AllocatOutbound = 215,
 
         [Description("閲嶆鍥炲簱")]
         ReCheck =116,
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 d8690fd..bcdc51f 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"
@@ -272,7 +272,7 @@
             {
                 foreach (var inboundOrder in inboundOrders)
                 {
-                    if (inboundOrder.OrderType == InOrderTypeEnum.Allocat.ObjToInt())//璋冩嫧鍏ュ簱
+                    if (inboundOrder.OrderType == InOrderTypeEnum.AllocatInbound.ObjToInt())//璋冩嫧鍏ュ簱
                     {
                         if (inboundOrder != null && inboundOrder.OrderStatus == InOrderStatusEnum.鍏ュ簱瀹屾垚.ObjToInt())
                         {
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_Inbound.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_Inbound.cs"
index 030114d..e72189b 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_Inbound.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_Inbound.cs"
@@ -32,7 +32,7 @@
                 Dt_Task dbtask = Repository.Db.Queryable<Dt_Task>().Where(x => x.PalletCode == palletCode).OrderByDescending(x=>x.CreateDate).First();
                 if (dbtask != null)
                 {
-                    if (dbtask.TaskType == TaskTypeEnum.Outbound.ObjToInt())
+                    if (dbtask.TaskType == TaskTypeEnum.Outbound.ObjToInt() || dbtask.TaskType == TaskTypeEnum.OutAllocate.ObjToInt())
                     {
                         return WebResponseContent.Instance.Error($"鍑哄簱寰呭垎鎷d换鍔�");
                     }
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_WMSServer/Controllers/Allocate/AllocateOrderController.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_WMSServer/Controllers/Allocate/AllocateOrderController.cs"
index 5578ed4..d1616ce 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_WMSServer/Controllers/Allocate/AllocateOrderController.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_WMSServer/Controllers/Allocate/AllocateOrderController.cs"
@@ -51,11 +51,11 @@
             //allocateOrder.OrderType = businessType == BusinessTypeEnum.鏅轰粨璋冨閮ㄤ粨搴� ? 215 : 115;
             if (businessType == BusinessTypeEnum.鏅轰粨璋冨閮ㄤ粨搴�)
             {
-                allocateOrder.OrderType = 115;
+                allocateOrder.OrderType = 215;
             }
             else if (businessType == BusinessTypeEnum.澶栭儴浠撳簱璋冩櫤浠�)
             {
-                allocateOrder.OrderType = 215;
+                allocateOrder.OrderType = 115;
             }
 
             foreach (var detailDto in model.Details)

--
Gitblit v1.9.3