From 74ab9465837f8a6f9eae854059e9783eff24e173 Mon Sep 17 00:00:00 2001
From: sjz <1240968267@qq.com>
Date: 星期一, 14 七月 2025 18:06:24 +0800
Subject: [PATCH] 多组织修改

---
 MES.Service/service/BasicData/MesRohInManager.cs |  159 ++++++++++++++++------------------------------------
 1 files changed, 50 insertions(+), 109 deletions(-)

diff --git a/MES.Service/service/BasicData/MesRohInManager.cs b/MES.Service/service/BasicData/MesRohInManager.cs
index 2b901f2..36d0646 100644
--- a/MES.Service/service/BasicData/MesRohInManager.cs
+++ b/MES.Service/service/BasicData/MesRohInManager.cs
@@ -8,107 +8,57 @@
 public class MesRohInManager : Repository<MesRohIn>
 {
     private readonly MesRohInDataManager rohInDataManager = new();
-
-    // Save 鏂规硶鐢ㄤ簬淇濆瓨鍗曚釜 RohIn 璁板綍锛屾牴鎹被鍨嬫墽琛屼笉鍚岀殑鎿嶄綔
     public bool Save(RohIn rohIn)
     {
         var rohInErpRohIn = rohIn.ErpRohIn;
         var mesRohIn = GetMesRohIn(rohInErpRohIn);
-        var mesRohInDatas = GetMesRohInDatas(rohIn.ErpRohinDatas, rohInErpRohIn.Type);
+        var mesRohInDatas =
+            GetMesRohInDatas(rohIn.ErpRohinDatas, rohInErpRohIn.Type);
 
         return UseTransaction(db =>
         {
             switch (rohInErpRohIn.Type)
             {
-                // case "2":
-                //     return InsertData(db, mesRohIn, mesRohInDatas,
-                //         rohInErpRohIn.FBILLTYPE)
-                //         ? 1
-                //         : 0;
                 case "3":
                     return UpdateData(db, mesRohIn, mesRohInDatas) ? 1 : 0;
                 case "2":
                 case "4":
                 case "5":
                 case "B":
-                    return SaveOrUpdateData(db, mesRohIn, mesRohInDatas)
-                        ? 1
-                        : 0;
+                    return SaveOrUpdateData(db, mesRohIn, mesRohInDatas) ? 1 : 0;
                 default:
-                    throw new NotImplementedException(
-                        $"type娌℃湁{rohInErpRohIn.Type}杩欎釜绫诲瀷");
+                    throw new NotImplementedException($"type娌℃湁{rohInErpRohIn.Type}杩欎釜绫诲瀷");
             }
         }) > 0;
     }
-
-    // 鎻掑叆鏁版嵁鐨勬柟娉�
-    private bool InsertData(SqlSugarScope db, MesRohIn mesRohIn,
-        List<MesRohInData> mesRohInDatas, string FBILLTYPE)
-    {
-        switch (FBILLTYPE)
-        {
-            case "A":
-            {
-                var decimals = mesRohInDatas.Select(s => s.Id).ToArray();
-
-                if (mesRohIn.Id != null) base.DeleteById(mesRohIn.Id);
-
-                if (decimals.Length > 0)
-                    db.Deleteable<MesRohInData>().In(decimals).ExecuteCommand();
-
-                var insert = base.Insert(mesRohIn);
-                var insertRange =
-                    rohInDataManager.InsertRange(mesRohInDatas);
-
-                if (insert && insertRange) return true;
-                throw new NotImplementedException("鎻掑叆澶辫触");
-            }
-            case "B":
-            {
-                var decimals = mesRohInDatas.Select(s => s.Id).ToArray();
-                if (base.DeleteById(mesRohIn.Id) && db
-                        .Deleteable<MesRohInData>().In(decimals)
-                        .ExecuteCommand() > 0)
-                {
-                    var insert = base.Insert(mesRohIn);
-                    var insertRange =
-                        rohInDataManager.InsertRange(mesRohInDatas);
-
-                    if (insert && insertRange) return true;
-                    throw new NotImplementedException("鎻掑叆澶辫触");
-                }
-
-                break;
-            }
-        }
-
-        throw new NotImplementedException("閲囪喘璁㈠崟绫诲瀷閿欒");
-    }
+    
 
     // 鏇存柊鏁版嵁鐨勬柟娉�
-    private bool UpdateData(SqlSugarScope db, MesRohIn mesRohIn,
-        List<MesRohInData> mesRohInDatas)
+    private bool UpdateData(SqlSugarScope db, MesRohIn mesRohIn,List<MesRohInData> mesRohInDatas)
     {
         var decimals = mesRohInDatas.Select(s => s.Id).ToArray();
         var update = base.DeleteById(mesRohIn.Id);
-        var insertOrUpdate = db
-            .Deleteable<MesRohInData>().In(decimals)
-            .ExecuteCommand() > 0;
+        var insertOrUpdate = db.Deleteable<MesRohInData>().In(decimals).ExecuteCommand() > 0;
 
-        if (update && insertOrUpdate) return true;
+        if (update && insertOrUpdate)
+        {
+            return true;
+        }
         throw new NotImplementedException("鏇存柊澶辫触");
     }
 
     // 鎻掑叆鎴栨洿鏂版暟鎹殑鏂规硶
-    private bool SaveOrUpdateData(SqlSugarScope db, MesRohIn mesRohIn,
-        List<MesRohInData> mesRohInDatas)
+    private bool SaveOrUpdateData(SqlSugarScope db, MesRohIn mesRohIn,List<MesRohInData> mesRohInDatas)
     {
-        if (mesRohIn.Id != null) base.DeleteById(mesRohIn.Id);
+        if (mesRohIn.Id != null)
+        {
+            base.DeleteById(mesRohIn.Id);
+        }
 
         if (mesRohInDatas.Count > 0)
-            db.Deleteable<MesRohInData>()
-                .Where(s => s.ErpId == mesRohIn.EbelnK3id).ExecuteCommand();
-
+        {
+            db.Deleteable<MesRohInData>().Where(s => s.ErpId == mesRohIn.EbelnK3id).ExecuteCommand();
+        }
         var orUpdate = base.Insert(mesRohIn);
         var baOrUpdate = rohInDataManager.InsertRange(mesRohInDatas);
         if (orUpdate && baOrUpdate) return true;
@@ -129,7 +79,10 @@
         var mesRohIn = new MesRohIn();
 
         var single = base.GetSingle(it => it.EbelnK3id == eid);
-        if (single != null) mesRohIn.Id = single.Id;
+        if (single != null)
+        {
+            mesRohIn.Id = single.Id;
+        }
 
         mesRohIn.EbelnK3id = eid;
         mesRohIn.BillNo = rohIn.FBillNo;
@@ -137,7 +90,9 @@
         mesRohIn.DocumentType = rohIn.FBillTypeID;
         mesRohIn.BusinessType = rohIn.FBusinessType;
         if (rohIn.FDate != null)
-            mesRohIn.PurchaseDate = DateTime.ParseExact(rohIn.FDate,"yyyy-MM-dd HH:mm:ss", null);
+        {
+            mesRohIn.PurchaseDate = DateTime.ParseExact(rohIn.FDate, "yyyy-MM-dd HH:mm:ss", null);
+        }
         mesRohIn.Supplier = rohIn.FSupplierId;
         mesRohIn.CloseStatus = rohIn.FCloseStatus;
         mesRohIn.PurchaseOrg = rohIn.FPurchaseOrgId;
@@ -151,17 +106,16 @@
         mesRohIn.CancellationPerson = rohIn.FCancellerId;
 
         if (rohIn.FCancelDate != null)
-            mesRohIn.CancellationDate =
-                DateTime.ParseExact(rohIn.FCancelDate,
-                    "yyyy-MM-dd HH:mm:ss", null);
-
+        {
+            mesRohIn.CancellationDate = DateTime.ParseExact(rohIn.FCancelDate, "yyyy-MM-dd HH:mm:ss", null);
+        }
         mesRohIn.CreateBy = rohIn.FCreatorId;
         mesRohIn.LastupdateBy = rohIn.FModifierId;
 
         if (rohIn.FModifyDate != null)
-            mesRohIn.LastupdateDate = DateTime.ParseExact(rohIn.FModifyDate,
-                "yyyy-MM-dd HH:mm:ss", null);
-
+        {
+            mesRohIn.LastupdateDate = DateTime.ParseExact(rohIn.FModifyDate, "yyyy-MM-dd HH:mm:ss", null);
+        }
         mesRohIn.ErpCheckBy = rohIn.FApproverId;
         mesRohIn.ErpCheckDate = rohIn.FApproveDate;
         mesRohIn.Changereason = rohIn.FChangeReason;
@@ -172,8 +126,7 @@
     }
 
     // 灏� ErpRohinData 瀵硅薄杞崲涓� MesRohInData 瀵硅薄鐨勬柟娉�
-    public List<MesRohInData> GetMesRohInDatas(
-        List<ErpRohinData> erpRohinDatas, string type)
+    public List<MesRohInData> GetMesRohInDatas(List<ErpRohinData> erpRohinDatas, string type)
     {
         return erpRohinDatas.Select(s =>
         {
@@ -182,7 +135,7 @@
                 EbelnK3id = Convert.ToDecimal(s.id),
                 ErpId = Convert.ToDecimal(s.Eid),
                 BillNo = s.FBillNo,
-                OrderLineId=s.FSeq,
+                OrderLineId = s.FSeq,
                 PurchaseOrderLineNumber = s.FSeq,
                 SalesOrderId = s.FXSHTH,
                 ItemId = s.FMaterialId,
@@ -191,18 +144,9 @@
                 InventoryUnit = s.FStockUnitID,
                 PricingUnit = s.FPriceUnitId,
                 PricingQty = Convert.ToDecimal(s.FPriceUnitQty),
-                DeliveryDate = s.FDeliveryDate != null
-                    ? DateTime.ParseExact(s.FDeliveryDate,
-                        "yyyy-MM-dd HH:mm:ss", null)
-                    : null,
-                EarliestDeliveryDate = s.FDeliveryEarlyDate != null
-                    ? DateTime.ParseExact(s.FDeliveryEarlyDate,
-                        "yyyy-MM-dd HH:mm:ss", null)
-                    : null,
-                LatestDeliveryDate = s.FDeliveryLastDate != null
-                    ? DateTime.ParseExact(s.FDeliveryLastDate,
-                        "yyyy-MM-dd HH:mm:ss", null)
-                    : null,
+                DeliveryDate = s.FDeliveryDate != null ? DateTime.ParseExact(s.FDeliveryDate,"yyyy-MM-dd HH:mm:ss", null) : null,
+                EarliestDeliveryDate = s.FDeliveryEarlyDate != null ? DateTime.ParseExact(s.FDeliveryEarlyDate,"yyyy-MM-dd HH:mm:ss", null) : null,
+                LatestDeliveryDate = s.FDeliveryLastDate != null ? DateTime.ParseExact(s.FDeliveryLastDate, "yyyy-MM-dd HH:mm:ss", null) : null,
                 IsGift = s.FGiveAway,
                 Remarks = s.FNote,
                 SupplierItemCode = s.FSupMatId,
@@ -212,23 +156,18 @@
                 BusinessClose = s.FMRPCloseStatus,
                 BusinessFreeze = s.FMRPFreezeStatus,
                 Freezer = s.FFreezerId,
-                FreezeTime = s.FFreezeDate != null
-                    ? DateTime.ParseExact(s.FFreezeDate,
-                        "yyyy-MM-dd HH:mm:ss", null)
-                    : null,
+                FreezeTime = s.FFreezeDate != null ? DateTime.ParseExact(s.FFreezeDate,"yyyy-MM-dd HH:mm:ss", null) : null,
                 BusinessTerminate = s.FMRPTerminateStatus,
                 Terminator = s.FTerminaterId,
-                TerminateTime = s.FTerminateDate != null
-                    ? DateTime.ParseExact(s.FTerminateDate,
-                        "yyyy-MM-dd HH:mm:ss", null)
-                    : null,
+                TerminateTime = s.FTerminateDate != null ? DateTime.ParseExact(s.FTerminateDate,"yyyy-MM-dd HH:mm:ss", null) : null,
                 TotalReceivedQty = Convert.ToDecimal(s.FQty)-Convert.ToDecimal(s.FRemainReceiveQty),
                 RemainingReceivedQty = Convert.ToDecimal(s.FRemainReceiveQty),
-                TotalStoredQty = Convert.ToDecimal(s.FQty) - Convert.ToDecimal(s.FRemainStockINQty),
+                TotalStoredQty = Convert.ToDecimal(s.FQty) -
+                                 Convert.ToDecimal(s.FRemainStockINQty),
                 RemainingStoredQty = Convert.ToDecimal(s.FRemainStockINQty),
                 TotalReturnedQty = Convert.ToDecimal(s.FMrbQty),
-                ReturnableReceivedQty = Convert.ToDecimal(s.FBaseCheckRetQty),
-                ReturnableStoredQty = Convert.ToDecimal(s.FBaseStockRetQty),
+                ReturnableReceivedQty = Convert.ToDecimal(s.Fcheckretqty),
+                ReturnableStoredQty = Convert.ToDecimal(s.Fstockretqty),
                 SourceDocumentType = s.FSrcBillTypeId,
                 SourceDocumentId = s.FSrcBillNo,
                 DemandTrackingId = s.FReqTraceNo,
@@ -241,15 +180,17 @@
                 DemandOrg = s.FRequireOrgId,
                 Receiving = s.FReceiveOrgId,
                 ReceivingOrg = s.FReceiveOrgId,
-                Settlement = s.FEntrySettleOrgId,
-                SettlementOrg = s.FEntrySettleOrgId,
+                Settlement = s.Fsettleorgid,
+                SettlementOrg = s.Fsettleorgid,
                 DemandDept = s.FRequireDeptId,
                 ReceivingDept = s.FReceiveDeptId
             };
 
-            var single = rohInDataManager.GetSingle(it =>
-                it.EbelnK3id == entity.EbelnK3id);
-            if (single != null) entity.Id = single.Id;
+            var single = rohInDataManager.GetSingle(it =>it.EbelnK3id == entity.EbelnK3id);
+            if (single != null)
+            {
+                entity.Id = single.Id;
+            }
 
             return entity;
         }).ToList();

--
Gitblit v1.9.3