From 37454e625df68d40897112b2e8c2e3cf4d7163e3 Mon Sep 17 00:00:00 2001
From: heshaofeng <heshaofeng@hnkhzn.com>
Date: 星期三, 25 三月 2026 11:43:10 +0800
Subject: [PATCH] 1

---
 项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Allocate/AllocateOrderController.cs |   27 ++++++++++++++++++++-------
 1 files changed, 20 insertions(+), 7 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_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 0920a53..54997b7 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"
@@ -5,9 +5,11 @@
 using System.Diagnostics.Eventing.Reader;
 using System.Threading.Tasks;
 using WIDESEA_Common.AllocateEnum;
+using WIDESEA_Common.OrderEnum;
 using WIDESEA_Core;
 using WIDESEA_Core.Attributes;
 using WIDESEA_Core.BaseController;
+using WIDESEA_Core.BaseRepository;
 using WIDESEA_DTO.Allocate;
 using WIDESEA_IAllocateService;
 using WIDESEA_IInboundService;
@@ -26,9 +28,11 @@
     public class AllocateOrderController : ApiBaseController<IAllocateService, Dt_AllocateOrder>
     {
         private readonly ILogger<AllocateOrderController> _logger;
-        public AllocateOrderController(IAllocateService service, ILogger<AllocateOrderController> logger) : base(service)
+        private readonly IRepository<Dt_MaterielInfo> _materialInfoRepository;
+        public AllocateOrderController(IAllocateService service, ILogger<AllocateOrderController> logger,IRepository<Dt_MaterielInfo> materialInfoRepository) : base(service)
         {
             _logger = logger;
+            _materialInfoRepository = materialInfoRepository;
         }
 
         [HttpPost, Route("ReceiveAllocateOrder"), MethodParamsValidate, AllowAnonymous]
@@ -42,7 +46,7 @@
                 BusinessType = model.BusinessType,
                 FactoryArea = model.FactoryArea,
                 IsBatch = model.IsBatch,
-                CreateType = model.OperationType,
+                CreateType =(int)OrderCreateTypeEnum.UpperSystemPush,
                 FromWarehouse = model.fromWarehouse,
                 ToWarehouse = model.toWarehouse,
                 Details = new List<Dt_AllocateOrderDetail>()
@@ -68,16 +72,18 @@
                 {
                     return WebResponseContent.Instance.Error($"鏉$爜涓嶈兘涓虹┖");
                 }
+                var materialName = _materialInfoRepository.QueryFirst(x => x.MaterielCode == detailDto.MaterialCode).MaterielName;
                 if (detailDto.Barcodes != null && detailDto.Barcodes.Any())
                 {
                     foreach (var barcodeDto in detailDto.Barcodes)
                     {
                         Dt_AllocateOrderDetail orderDetail = new Dt_AllocateOrderDetail
                         {
-                            WarehouseCode = detailDto.WarehouseCode,
+                            WarehouseCode = model.toWarehouse,
                             MaterielCode = detailDto.MaterialCode,
+                            MaterielName = materialName,
                             LineNo = detailDto.LineNo,
-                            OrderQuantity = detailDto.Qty,
+                            OrderQuantity = barcodeDto.Qty,
                             SupplyCode = barcodeDto.SupplyCode,
                             Unit = detailDto.Unit,
                             Barcode = barcodeDto.Barcode,
@@ -87,6 +93,10 @@
                             ValidDate = barcodeDto.validDate,
                             BoxSN = barcodeDto.BoxSN
                         };
+                        if (businessType == BusinessTypeEnum.鏅轰粨璋冨閮ㄤ粨搴� || businessType == BusinessTypeEnum.鏅轰粨璋冩櫤浠�)
+                        {
+                            orderDetail.WarehouseCode = model.fromWarehouse;
+                        }
                         allocateOrder.Details.Add(orderDetail);
                     }
                 }
@@ -94,18 +104,21 @@
                 {
                     Dt_AllocateOrderDetail orderDetail = new Dt_AllocateOrderDetail
                     {
-                        WarehouseCode = detailDto.WarehouseCode,
+                        WarehouseCode = model.toWarehouse,
                         MaterielCode = detailDto.MaterialCode,
                         LineNo = detailDto.LineNo,
                         OrderQuantity = detailDto.Qty,
                         Unit = detailDto.Unit,
                         BarcodeUnit =detailDto.Unit,
                         BarcodeQty=detailDto.Qty,
-                        
+                        MaterielName = materialName
                     };
+                    if (businessType == BusinessTypeEnum.鏅轰粨璋冨閮ㄤ粨搴� || businessType == BusinessTypeEnum.鏅轰粨璋冩櫤浠�)
+                    {
+                        orderDetail.WarehouseCode = model.fromWarehouse;
+                    }
                     allocateOrder.Details.Add(orderDetail);
                 }
-                allocateOrder.Details.AddRange(allocateOrder.Details);
             }
             var content = await Service.ReceiveAllocateOrder(allocateOrder, model.OperationType);
 

--
Gitblit v1.9.3