From e0da6d978305f306c171547feeae0abf9efc6728 Mon Sep 17 00:00:00 2001
From: 南骏 池 <chiffly@163.com>
Date: 星期五, 28 二月 2025 13:24:23 +0800
Subject: [PATCH] 1.销售订单关闭日期和终止日期优化 2.调拨单实体新增字段

---
 MES.Service/service/BasicData/SalesOrderManager.cs |   21 ++++++++++++++++-----
 1 files changed, 16 insertions(+), 5 deletions(-)

diff --git a/MES.Service/service/BasicData/SalesOrderManager.cs b/MES.Service/service/BasicData/SalesOrderManager.cs
index 77c4ddc..1992058 100644
--- a/MES.Service/service/BasicData/SalesOrderManager.cs
+++ b/MES.Service/service/BasicData/SalesOrderManager.cs
@@ -25,7 +25,7 @@
     {
         var erpSalesOrderDto = SalesOrder.OrderDto;
         var mesSalesOrder = ConvertErpToSalesOrder(SalesOrder.OrderDto);
-        var mesSalesOrderDatas = ConvertErpToSalesOrderDetail(mesSalesOrder,SalesOrder.Items);
+        var mesSalesOrderDatas = ConvertErpToSalesOrderDetail(mesSalesOrder, SalesOrder.Items);
 
         return UseTransaction(db =>
         {
@@ -95,7 +95,7 @@
 
         //var orUpdate = base.Insert(mesSalesOrder);
         //var baOrUpdate = _SalesOrderDetailManager.InsertRange(mesSalesOrderDatas);
-        
+
 
         var orUpdate = db.Insertable(mesSalesOrder)
             .IgnoreColumns(true).ExecuteCommand() > 0;
@@ -169,7 +169,7 @@
             ModifyDate = ParseDateTime(erpDto.FModifyDate) ?? null, // 鏈�鍚庝慨鏀规棩鏈�
             ApproveDate = ParseDateTime(erpDto.FApproveDate) ?? null, // 瀹℃牳鏃ユ湡
             CloserId = erpDto.FCloserId, // 鍏抽棴浜�
-            CloseDate = ParseDateTime(erpDto.FCloseDate) ?? null, // 鍏抽棴鏃ユ湡
+            //CloseDate = ParseDateTime(erpDto.FCloseDate) ?? null, // 鍏抽棴鏃ユ湡
             ChangeDate = ParseDateTime(erpDto.FChangeDate) ?? null, // 鍙樻洿鏃ユ湡
             CancelStatus = erpDto.FCancelStatus, // 浣滃簾鐘舵��
             CancellerId = erpDto.FCancellerId, // 浣滃簾浜�
@@ -181,6 +181,11 @@
             //Convert.ToDecimal()
             //Convert.ToDouble()
         };
+
+        if (!string.IsNullOrEmpty(salesOrder.CloserId))
+            salesOrder.CloseDate = string.IsNullOrEmpty(erpDto.FCloseDate)
+            ? (DateTime?)null
+            : DateTime.ParseExact(erpDto.FCloseDate, "yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture);
 
         var single = base.GetSingle(it => it.ErpID == Convert.ToDecimal(erpDto.ErpID));
         if (single != null) salesOrder.Id = single.Id;
@@ -228,7 +233,7 @@
                 OutLmtUnitId = erpDto.FOutLmtUnitID,
                 MrpCloseStatus = erpDto.FMrpCloseStatus,
                 MrpTerminateStatus = erpDto.FMrpTerminateStatus,
-                TerminateDate = Convert.ToDateTime(erpDto.FTerminateDate),
+                //TerminateDate = Convert.ToDateTime(erpDto.FTerminateDate),
                 TerminaterId = erpDto.FTerminatorId,
                 SrcType = erpDto.FSrcType,
                 SrcBillNo = erpDto.FSrcBillNo,
@@ -240,6 +245,11 @@
                 BASEARQTY = Convert.ToDecimal(erpDto.FBASEARQTY),
 
             };
+
+            if (!string.IsNullOrEmpty(salesOrderSub.TerminaterId))
+                salesOrderSub.TerminateDate = string.IsNullOrEmpty(erpDto.FTerminateDate)
+                ? (DateTime?)null
+                : DateTime.ParseExact(erpDto.FTerminateDate, "yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture);
 
             var single = _SalesOrderDetailManager.GetSingle(it =>
                 it.ErpID == Convert.ToDecimal(salesOrderSub.ErpID));
@@ -278,7 +288,8 @@
         conModels.Add(new ConditionalModel
         {
             FieldName = typeof(SalesOrder).GetProperties()[0].Name,
-            ConditionalType = ConditionalType.Equal, FieldValue = "1"
+            ConditionalType = ConditionalType.Equal,
+            FieldValue = "1"
         }); //id=1
         var data7 = base.GetPageList(conModels, p, it => SqlFunc.GetRandom());
 

--
Gitblit v1.9.3