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/MesCustomerManager.cs |  177 ++++++++++++++++++++++++++---------------------------------
 1 files changed, 78 insertions(+), 99 deletions(-)

diff --git a/MES.Service/service/BasicData/MesCustomerManager.cs b/MES.Service/service/BasicData/MesCustomerManager.cs
index 6a5369c..7eb51f3 100644
--- a/MES.Service/service/BasicData/MesCustomerManager.cs
+++ b/MES.Service/service/BasicData/MesCustomerManager.cs
@@ -9,7 +9,7 @@
 {
     public bool Save(ErpCustomer customer)
     {
-        var entity = GetSysDepartment(customer);
+        var entity = GetMesCustomer(customer);
 
         return UseTransaction(db =>
         {
@@ -28,7 +28,7 @@
                         return 1;
                     break;
                 case "3":
-                    if (DeleteCustomer(db, entity.Id))
+                    if (UpdateCustomerStatus(db, entity.Id, "B"))
                         return 1;
                     break;
                 case "4":
@@ -36,8 +36,7 @@
                         return 1;
                     break;
                 default:
-                    throw new ArgumentNullException(
-                        $"type娌℃湁{customer.Type}杩欎釜绫诲瀷鐨勫弬鏁�");
+                    throw new ArgumentNullException($"type娌℃湁{customer.Type}杩欎釜绫诲瀷鐨勫弬鏁�");
             }
 
             throw new NotImplementedException("鎿嶄綔澶辫触");
@@ -46,9 +45,9 @@
 
     public bool SaveList(List<ErpCustomer> customers)
     {
-        var list = customers.Select(GetSysDepartment).ToList();
-        var groupBy = list.GroupBy(s => s.Type)
-            .ToDictionary(g => g.Key, g => g.ToList());
+        var list = customers.Select(GetMesCustomer).ToList();
+
+        var groupBy = list.GroupBy(s => s.Type).ToDictionary(g => g.Key, g => g.ToList());
 
         return UseTransaction(db =>
         {
@@ -70,7 +69,7 @@
                             throw new NotImplementedException("鎻掑叆澶辫触");
                         break;
                     case "3":
-                        if (!DeleteCustomerBatch(db, customerGroup.Value))
+                        if (!UpdateCustomerStatusBatch(db, customerGroup.Value, "B"))
                             throw new NotImplementedException("鍒犻櫎澶辫触");
                         break;
                     case "4":
@@ -78,130 +77,110 @@
                             throw new NotImplementedException("鍚屾澶辫触");
                         break;
                     default:
-                        throw new ArgumentNullException(
-                            $"type娌℃湁{customerGroup.Key}杩欎釜绫诲瀷鐨勫弬鏁�");
+                        throw new ArgumentNullException($"type娌℃湁{customerGroup.Key}杩欎釜绫诲瀷鐨勫弬鏁�");
                 }
 
             return 1;
         }) > 0;
     }
 
-    private bool UpdateCustomerStatus(SqlSugarScope db, decimal customerId,
-        string status)
+    private bool UpdateCustomerStatus(SqlSugarScope db, decimal customerId,string status)
     {
-        var result = db.Updateable<MesCustomer>()
-            .SetColumns(s => s.Fforbidstatus == status)
-            .Where(s => s.Id == customerId).ExecuteCommand();
-
-        if (result > 0)
-            return true;
-
-        throw new NotImplementedException(status == "A" ? "鍚敤澶辫触" : "绂佺敤澶辫触");
+        var result = db.Updateable<MesCustomer>().SetColumns(s => s.Fforbidstatus == status).Where(s => s.Id == customerId).ExecuteCommand();
+        return true;
     }
 
     private bool InsertCustomer(SqlSugarScope db, MesCustomer entity)
     {
-        var insert = db.Insertable(entity).ExecuteCommand();
-        if (insert > 0)
-            return true;
-
-        throw new NotImplementedException("鎻掑叆澶辫触");
-    }
-
-    private bool DeleteCustomer(SqlSugarScope db, decimal customerId)
-    {
-        var deleteById = db.Deleteable<MesCustomer>().In(customerId)
-            .ExecuteCommand();
-        if (deleteById > 0)
-            return true;
-
-        throw new NotImplementedException("鍒犻櫎澶辫触");
-    }
-
-    private MesCustomer GetSysDepartment(ErpCustomer customer)
-    {
-
-        //ERP鍌宠几鐨勬帴鍙f暩鎿氳綁鎻涚偤MES鏁告摎搴瓧娈�
-
-        return new MesCustomer
+        var exists = db.Queryable<MesCustomer>().Any(e => e.Id == entity.Id);
+        if (exists)
         {
-            Id = Convert.ToDecimal(customer.Id),
-            CustNo = customer.FNumber,
-            CustSname = customer.FShortName,
-            CustName = customer.FName,
-            Anred = customer.Fcontact,
-            Telf1 = customer.Fmobilephone,
-            Fseller = customer.Fseller,
-            Fforbidstatus = customer.FForbidStatus,
-            fremarks             =customer.Fremarks,
-            FSubsidiary          =customer.FSubsidiary,
-            Fumbrella = customer.Fumbrella,
-            Company = "1000",
-            Factory = "1000"
-        };
-    }
-
-    private bool UpdateCustomerStatusBatch(SqlSugarScope db,
-        List<MesCustomer> customerList, string status)
-    {
-        var ids = customerList.Select(it => it.Id).ToArray();
-        var result = db.Updateable<MesCustomer>()
-            .SetColumns(s => s.Fforbidstatus == status)
-            .Where(s => ids.Contains(s.Id)).ExecuteCommand();
-
-        if (result > 0)
+            var result = db.Updateable<MesCustomer>().ExecuteCommand();
             return true;
-
-        throw new NotImplementedException(status == "A" ? "鍚敤澶辫触" : "绂佺敤澶辫触");
+        }
+        else
+        {
+            var insert = db.Insertable(entity).ExecuteCommand();
+            if (insert > 0)
+            {
+                return true;
+            }
+            else
+            {
+                throw new NotImplementedException("鎻掑叆澶辫触");
+            }
+        }
     }
-
-    private bool InsertCustomerBatch(SqlSugarScope db,
-        List<MesCustomer> customerList)
-    {
-        var insertRange = db.Insertable(customerList).ExecuteCommand();
-        if (insertRange > 0)
-            return true;
-
-        throw new NotImplementedException("鎻掑叆澶辫触");
-    }
-
-    private bool DeleteCustomerBatch(SqlSugarScope db,
-        List<MesCustomer> customerList)
-    {
-        var ids = customerList.Select(it => it.Id).ToArray();
-        var deleteByIds = db.Deleteable<MesCustomer>().In(ids).ExecuteCommand();
-        if (deleteByIds > 0)
-            return true;
-
-        throw new NotImplementedException("鍒犻櫎澶辫触");
-    }
-
     private bool InsertOrUpdate(SqlSugarScope db, MesCustomer entity)
     {
         var exists = db.Queryable<MesCustomer>().Any(e => e.Id == entity.Id);
         if (exists)
         {
             var update = db.Updateable(entity).ExecuteCommand();
-            if (update > 0)
-                return true;
+            return true;
         }
         else
         {
             var insert = db.Insertable(entity).ExecuteCommand();
             if (insert > 0)
+            {
                 return true;
+            }
+            else
+            {
+                return false;
+            }
         }
-
-        return false;
     }
 
-    private bool InsertOrUpdateBatch(SqlSugarScope db,
-        List<MesCustomer> customerList)
+    private MesCustomer GetMesCustomer(ErpCustomer customer)
+    {
+        return new MesCustomer
+        {
+            Id = Convert.ToDecimal(customer.Id),
+            CustNo = customer.FNumber,
+            CustSname = customer.FShortName,
+            CustName = customer.FName,
+            Anred = customer.FContact,
+            Telf1 = customer.FMobilephone,
+            Fseller = customer.FSeller,
+            Fforbidstatus = customer.FForbidStatus,
+            CreateDate = DateTime.Now,
+            CreateOrg = Convert.ToDecimal(customer.FCreateOrgId),
+            UseOrg = Convert.ToDecimal(customer.FUseOrgId),
+            Company = "1000",
+            Factory = "1000"
+        };
+    }
+
+    private bool UpdateCustomerStatusBatch(SqlSugarScope db,List<MesCustomer> customerList, string status)
+    {
+        var ids = customerList.Select(it => it.Id).ToArray();
+        var result = db.Updateable<MesCustomer>().SetColumns(s => s.Fforbidstatus == status).Where(s => ids.Contains(s.Id)).ExecuteCommand();
+        return true;
+    }
+
+    private bool InsertCustomerBatch(SqlSugarScope db,List<MesCustomer> customerList)
     {
         foreach (var entity in customerList)
-            if (!InsertOrUpdate(db, entity))
+        {
+            if (!InsertCustomer(db, entity))
+            {
                 return false;
+            }
+        }
+        return true;
+    }
 
+    private bool InsertOrUpdateBatch(SqlSugarScope db,List<MesCustomer> customerList)
+    {
+        foreach (var entity in customerList)
+        {
+            if (!InsertOrUpdate(db, entity))
+            {
+                return false;
+            }
+        }
         return true;
     }
 }
\ No newline at end of file

--
Gitblit v1.9.3