From 092f6e9efb6e4c2bc401ec134391ab0a25773b47 Mon Sep 17 00:00:00 2001
From: wankeda <Administrator@DESKTOP-HAU3ST3>
Date: 星期五, 21 二月 2025 16:41:38 +0800
Subject: [PATCH] PP仓提升机侧输送线流程

---
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/ReceiveOrderService.cs |   35 ++++++++++++++++++++---------------
 1 files changed, 20 insertions(+), 15 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/ReceiveOrderService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/ReceiveOrderService.cs"
index 2165c8c..72ba693 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/ReceiveOrderService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/ReceiveOrderService.cs"
@@ -42,7 +42,16 @@
             _basicRepository = basicRepository;
             _invokeERPService = invokeERPService;
         }
-
+        public override PageGridData<Dt_ReceiveOrder> GetPageData(PageDataOptions options)
+        {
+            PageGridData<Dt_ReceiveOrder> pageGridData = base.GetPageData(options);
+            //foreach (var item in pageGridData.Rows)
+            //{
+            //    //鑾峰彇鏀惰揣鏄庣粏
+            //    item.PurchaseOrderNo
+            //}
+            return pageGridData;
+        }
         public override WebResponseContent AddData(SaveModel saveModel)
         {
             if (saveModel.MainData.ContainsKey(nameof(Dt_ReceiveOrder.ReceiveOrderStatus).FirstLetterToLower()))
@@ -134,31 +143,27 @@
                 ERPReceiveModel receiveModel = new ERPReceiveModel()
                 {
                     Code = receiveOrder.ReceiveOrderNo,
-                    CompanyId = "HATC",
                     DeliveryCode = receiveOrder.DeliveryCode,
                     CustomerId = receiveOrder.CustomerId,
-                    CreatorId = "TC20082",//娴嬭瘯 receiveOrder.Creater
+                    CreatorId = receiveOrder.Creater,
                     EntDate = receiveOrder.CreateDate.ToString("yyyy-MM-dd HH:mm:ss"),
                     ReceiveDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
-                    PlantsId = "HA02",
                     SuppliersId = receiveOrder.SuppliersId,
-                    Type = Enum.GetName(typeof(ReceiveOrderTypeEnum), receiveOrder.ReceiveOrderType),
+                    Type = Enum.GetName(typeof(ReceiveOrderTypeEnum), receiveOrder.ReceiveOrderType) ?? throw new Exception($"閲囪喘鍗曠被鍨嬮敊璇�"),
                     UniqueTag = receiveOrder.ReceiveOrderId.ToString(),
                     WarehouseCode = warehouse.WarehouseCode,
                     Way = 1,
                     Details = recevieOrderDetails
                 };
-                //鏀惰揣鎺ㄩ�佽嚦ERP
-                string Content = _invokeERPService.InvokeMatReceiveApi(receiveModel);
-                ErpRequestContent erpRequest = Content.DeserializeObject<ErpRequestContent>();
-                if (erpRequest.res == 0)
-                {
-                    return WebResponseContent.Instance.Error(erpRequest.Data);
-                }
+
                 //鏇存柊鏀惰揣鍗曚俊鎭�
                 receiveOrder.ReceiveOrderStatus = ReceiveOrderStatusEnum.Completed.ObjToInt();
                 receiveOrder.UploadStatus = WhetherEnum.True.ObjToInt();
                 BaseDal.UpdateData(receiveOrder);
+                //鍒涘缓鍏ュ簱鍗�
+                CreateInboundOrder(orderId);
+                //鏀惰揣鎺ㄩ�佽嚦ERP 娴嬭瘯娉ㄩ噴
+                _invokeERPService.InvokeMatReceiveApi(receiveModel);
                 return WebResponseContent.Instance.OK();
             }
             catch (Exception ex)
@@ -231,7 +236,6 @@
 
                 Dt_InboundOrder inboundOrder = new Dt_InboundOrder()
                 {
-                    InboundOrderNo="IN"+DateTime.Now.ToString("yyyyMMddHHmmss"),//娴嬭瘯
                     UpperOrderNo = receiveOrder.ReceiveOrderNo,
                     CreateType = OrderCreateTypeEnum.UpperSystemPush.ObjToInt(),
                     OrderStatus = InOrderStatusEnum.鏈紑濮�.ObjToInt(),
@@ -240,7 +244,7 @@
                     SupplierId = receiveOrder.SuppliersId,
                     Details = new List<Dt_InboundOrderDetail>()
                 };
-
+                List<Dt_MaterielInfo> materielCodeInfos = _basicRepository.MaterielInfoRepository.QueryData(x => receiveOrder.Details.Select(x => x.MaterielCode).ToList().Contains(x.MaterielCode));
                 foreach (var item in receiveOrder.Details)
                 {
                     float quantity = item.ReceivedQuantity;
@@ -258,6 +262,8 @@
                     Dt_InboundOrderDetail detail = new Dt_InboundOrderDetail()
                     {
                         MaterielCode = item.MaterielCode,
+                        MaterielName = materielCodeInfos.FirstOrDefault(x => x.MaterielCode == item.MaterielCode)?.MaterielName ?? "",
+                        MaterielSpec= materielCodeInfos.FirstOrDefault(x => x.MaterielCode == item.MaterielCode)?.MaterielSpec ?? "",
                         OrderDetailStatus = OrderDetailStatusEnum.New.ObjToInt(),
                         OrderQuantity = quantity,
                         OverInQuantity = 0,
@@ -353,7 +359,6 @@
                     }
                     receiveOrder = new Dt_ReceiveOrder()
                     {
-                        ReceiveOrderNo= "RE"+DateTime.Now.ToString("yyyyMMddHHmmss"),//娴嬭瘯
                         ReceiveOrderStatus = ReceiveOrderStatusEnum.Receiving.ObjToInt(),
                         CustomerId = "",
                         DeliveryCode = "/",

--
Gitblit v1.9.3