From b957cfb89c9968f47cc5ce9795e6ffb05bc57fd8 Mon Sep 17 00:00:00 2001
From: 啊鑫 <t2856754968@163.com>
Date: 星期三, 30 十月 2024 16:05:48 +0800
Subject: [PATCH] 11

---
 MES.Service/service/BasicData/MesRohInManager.cs |  132 ++++++++++++++-----------------------------
 1 files changed, 43 insertions(+), 89 deletions(-)

diff --git a/MES.Service/service/BasicData/MesRohInManager.cs b/MES.Service/service/BasicData/MesRohInManager.cs
index c6a5935..6509483 100644
--- a/MES.Service/service/BasicData/MesRohInManager.cs
+++ b/MES.Service/service/BasicData/MesRohInManager.cs
@@ -14,77 +14,38 @@
     {
         var rohInErpRohIn = rohIn.ErpRohIn;
         var mesRohIn = GetMesRohIn(rohInErpRohIn);
-        var mesRohInDatas = GetMesRohInDatas(rohIn.ErpRohinDatas, rohInErpRohIn.Type);
+        var mesRohInDatas =
+            GetMesRohInDatas(rohIn.ErpRohinDatas);
 
         return UseTransaction(db =>
         {
-            switch (rohInErpRohIn.Type)
+            return rohInErpRohIn.Type switch
             {
-                case "2":
-                case "4":
-                case "5":
-                    return SaveOrUpdateData(db, mesRohIn, mesRohInDatas) ? 1 : 0;
-                case "3":
-                    return UpdateData(db, mesRohIn, mesRohInDatas) ? 1 : 0;
-                default:
-                    throw new NotImplementedException(
-                        $"type娌℃湁{rohInErpRohIn.Type}杩欎釜绫诲瀷");
-            }
+                "2" or "4" or "5" => SaveOrUpdateData(db, mesRohIn,
+                    mesRohInDatas)
+                    ? 1
+                    : 0,
+                "3" => UpdateData(db, mesRohIn, mesRohInDatas) ? 1 : 0,
+                _ => 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)
     {
         var decimals = mesRohInDatas.Select(s => s.Id).ToArray();
-        var update = base.DeleteById(mesRohIn.Id);
+
+        var update = db.Deleteable<MesRohIn>()
+            .Where(a => a.Id == mesRohIn.Id)
+            .ExecuteCommand() > 0;
+
         var insertOrUpdate = db
-            .Deleteable<MesRohInData>().In(decimals)
+            .Deleteable<MesRohInData>()
+            .Where(s => decimals.Contains(s.Id))
             .ExecuteCommand() > 0;
 
         if (update && insertOrUpdate) return true;
@@ -95,7 +56,9 @@
     private bool SaveOrUpdateData(SqlSugarScope db, MesRohIn mesRohIn,
         List<MesRohInData> mesRohInDatas)
     {
-        if (mesRohIn.Id != null) base.DeleteById(mesRohIn.Id);
+        if (mesRohIn.Id != null)
+            db.Deleteable<MesRohIn>().Where(s => s.Id == mesRohIn.Id)
+                .ExecuteCommand();
 
         if (mesRohInDatas.Count > 0)
             db.Deleteable<MesRohInData>()
@@ -115,9 +78,9 @@
     }
 
     // 灏� ErpRohIn 瀵硅薄杞崲涓� MesRohIn 瀵硅薄鐨勬柟娉�
-    public MesRohIn GetMesRohIn(ErpRohIn rohIn)
+    private MesRohIn GetMesRohIn(ErpRohIn rohIn)
     {
-        var eid = Convert.ToDecimal(rohIn.id);
+        var eid = long.Parse(rohIn.id);
         var mesRohIn = new MesRohIn();
 
         var single = base.GetSingle(it => it.EbelnK3id == eid);
@@ -138,15 +101,11 @@
         mesRohIn.PurchaseOrg = rohIn.FPurchaseOrgId;
         mesRohIn.PurchaseDept = rohIn.FPurchaseDeptId;
         mesRohIn.PurchaseGroup = rohIn.FPurchaserGroupId;
-        mesRohIn.QtyAcceptance = rohIn.Facctype;
         mesRohIn.Purchaser = rohIn.FPurchaserId;
-        //mesRohIn.QualityReq = rohIn.F_UNW_Remarks_zlyq;
         mesRohIn.SettlementParty = rohIn.FSettleId;
         mesRohIn.PaymentParty = rohIn.FChargeId;
-        // mesRohIn.Email = rohIn.FProviderEMail;
-        //  mesRohIn.TransportMethod = rohIn.F_UNW_Text_ysfs;
-        mesRohIn.Remarks = rohIn.F_XIFG_Text_qtr1;
-        //  mesRohIn.FixtureMoldProcurement = rohIn.F_UNW_Combo_zjmj;
+        mesRohIn.Email = rohIn.FProviderEMail;
+        mesRohIn.Remarks = rohIn.Remarks;
         mesRohIn.CancellationStatus = rohIn.FCancelStatus;
         mesRohIn.CancellationPerson = rohIn.FCancellerId;
 
@@ -169,36 +128,42 @@
 
         mesRohIn.ErpCheckBy = rohIn.FApproverId;
         mesRohIn.ErpCheckDate = rohIn.FApproveDate;
-        mesRohIn.Changereason = rohIn.FCHANGEREASON;
-        mesRohIn.FPREARRIVALDATE = rohIn.FPREARRIVALDATE != null
-            ? DateTime.ParseExact(rohIn.FPREARRIVALDATE,
+        mesRohIn.Changereason = rohIn.FChangeReason;
+        mesRohIn.Prearrivaldate = rohIn.Prearrivaldate != null
+            ? DateTime.ParseExact(rohIn.Prearrivaldate,
                 "yyyy-MM-dd HH:mm:ss", null)
             : null;
 
-        mesRohIn.FRECEIVEORGID = rohIn.FRECEIVEORGID;
+        mesRohIn.ReceiveOrgId = rohIn.FReceiveOrgId;
+        mesRohIn.ProviderId = rohIn.FProviderId;
 
-        mesRohIn.remark1 = rohIn.F_XIFG_PrintTimes_qtr;
+        mesRohIn.Anred = rohIn.FTContact;
+        mesRohIn.Telf1 = rohIn.Fmobilephone;
+        mesRohIn.FixedTelephone = rohIn.FixedTelephone;
+        mesRohIn.Address = rohIn.Address;
+        mesRohIn.Acctype = rohIn.Acctype;
+
 
         return mesRohIn;
     }
 
     // 灏� ErpRohinData 瀵硅薄杞崲涓� MesRohInData 瀵硅薄鐨勬柟娉�
-    public List<MesRohInData> GetMesRohInDatas(
-        List<ErpRohinData> erpRohinDatas, string type)
+    private List<MesRohInData> GetMesRohInDatas(
+        List<ErpRohinData> erpRohinDatas)
     {
         return erpRohinDatas.Select(s =>
         {
             var entity = new MesRohInData
             {
-                EbelnK3id = Convert.ToDecimal(s.id),
+                 EbelnK3id = Convert.ToDecimal(s.id),
                 ErpId = Convert.ToDecimal(s.Eid),
                 BillNo = s.FBillNo,
-                SalesOrderId = s.F_XIFG_Text_k79,
-                OrderLineId = s.FSEQ,
                 ItemId = s.FMaterialId,
                 PurchaseUnit = s.FUnitId,
                 PurchaseQty = Convert.ToDecimal(s.FQty),
                 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)
@@ -212,7 +177,7 @@
                         "yyyy-MM-dd HH:mm:ss", null)
                     : null,
                 IsGift = s.FGiveAway,
-                Remarks = s.Fnote,
+                Remarks = s.FEntryNote,
                 SupplierItemCode = s.FSupMatId,
                 SupplierItemName = s.FSupMatName,
                 OutsourcingOrderId = s.FSUBREQBILLNO,
@@ -254,18 +219,7 @@
                 Receiving = s.FReceiveOrgId,
                 Settlement = s.FSETTLEORGID,
                 DemandDepartment = s.FRequireDeptId,
-                ReceivingDepartment = s.FReceiveDeptId,
-                FPREARRIVALDATE = s.FPREARRIVALDATE != null
-                    ? DateTime.ParseExact(s.FPREARRIVALDATE,
-                        "yyyy-MM-dd HH:mm:ss", null)
-                    : null,
-                Remark1 = s.F_XIFG_Text_ne1,
-                Remark2 = s.F_XIFG_Text_6oq,
-                Remark3 = s.F_XIFG_Base_c1c,
-                Remark4 = s.F_XIFG_Text_qtr4,
-                FdemandbillnoLine = s.FdemandbillnoLine,
-                ElectricalProductModel = s.ElectricalProductModel,
-                ElectricalProductName = s.ElectricalProductName
+                ReceivingDepartment = s.FReceiveDeptId
             };
 
             var single = rohInDataManager.GetSingle(it =>

--
Gitblit v1.9.3