From c6d9fc76d16c944e64d6490eb2a6d866fd7a38f0 Mon Sep 17 00:00:00 2001
From: tjx <t2856754968@163.com>
Date: 星期三, 12 十一月 2025 09:06:01 +0800
Subject: [PATCH] 11
---
MES.Service/service/BasicData/MesCustomerManager.cs | 163 ++++++++++++++++++++++++-----------------------------
1 files changed, 74 insertions(+), 89 deletions(-)
diff --git a/MES.Service/service/BasicData/MesCustomerManager.cs b/MES.Service/service/BasicData/MesCustomerManager.cs
index 774f869..724eac6 100644
--- a/MES.Service/service/BasicData/MesCustomerManager.cs
+++ b/MES.Service/service/BasicData/MesCustomerManager.cs
@@ -9,8 +9,8 @@
{
public bool Save(ErpCustomer customer)
{
- var entity = GetSysDepartment(customer);
-
+ var entity = GetMesCustomer(customer);
+
return UseTransaction(db =>
{
switch (customer.Type)
@@ -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,47 +77,63 @@
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)
+ var exists = db.Queryable<MesCustomer>().Any(e => e.Id == entity.Id && e.CustNo==entity.CustNo);
+ if (exists)
+ {
+ var result = db.Updateable(entity).Where(e => e.Id == entity.Id && e.CustNo == entity.CustNo).ExecuteCommand();
return true;
-
- throw new NotImplementedException("鎻掑叆澶辫触");
+ }
+ else
+ {
+ var insert = db.Insertable(entity).ExecuteCommand();
+ if (insert > 0)
+ {
+ return true;
+ }
+ else
+ {
+ throw new NotImplementedException("鎻掑叆澶辫触");
+ }
+ }
}
-
- private bool DeleteCustomer(SqlSugarScope db, decimal customerId)
+ private bool InsertOrUpdate(SqlSugarScope db, MesCustomer entity)
{
- var deleteById = db.Deleteable<MesCustomer>().In(customerId)
- .ExecuteCommand();
- if (deleteById > 0)
+ var exists = db.Queryable<MesCustomer>().Any(e => e.Id == entity.Id && e.CustNo == entity.CustNo);
+ if (exists)
+ {
+ var update = db.Updateable(entity).Where(e => e.Id == entity.Id && e.CustNo == entity.CustNo).ExecuteCommand();
return true;
-
- throw new NotImplementedException("鍒犻櫎澶辫触");
+ }
+ else
+ {
+ var insert = db.Insertable(entity).ExecuteCommand();
+ if (insert > 0)
+ {
+ return true;
+ }
+ else
+ {
+ return false;
+ }
+ }
}
- private MesCustomer GetSysDepartment(ErpCustomer customer)
+ private MesCustomer GetMesCustomer(ErpCustomer customer)
{
return new MesCustomer
{
@@ -126,76 +141,46 @@
CustNo = customer.FNumber,
CustSname = customer.FShortName,
CustName = customer.FName,
- Anred = customer.Fcontact,
- Telf1 = customer.Fmobilephone,
- Fseller = customer.Fseller,
+ 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)
+ 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)
- return true;
-
- throw new NotImplementedException(status == "A" ? "鍚敤澶辫触" : "绂佺敤澶辫触");
+ 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)
- {
- 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;
- }
- else
- {
- var insert = db.Insertable(entity).ExecuteCommand();
- if (insert > 0)
- return true;
- }
-
- return false;
- }
-
- private bool InsertOrUpdateBatch(SqlSugarScope db,
- List<MesCustomer> customerList)
+ 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