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/MesStaffManager.cs | 129 ++++++++++++++----------------------------
1 files changed, 43 insertions(+), 86 deletions(-)
diff --git a/MES.Service/service/BasicData/MesStaffManager.cs b/MES.Service/service/BasicData/MesStaffManager.cs
index 9f05723..28a1ef5 100644
--- a/MES.Service/service/BasicData/MesStaffManager.cs
+++ b/MES.Service/service/BasicData/MesStaffManager.cs
@@ -30,12 +30,11 @@
return 1;
break;
case "3":
- if (DeleteStaff(db, entity.Id)) // 鍒犻櫎鍛樺伐
+ if (UpdateStaffStatus(db, entity.Id, "B")) // 绂佺敤鍛樺伐
return 1;
break;
default:
- throw new ArgumentNullException(
- $"type娌℃湁{unit.Type}杩欎釜绫诲瀷鐨勫弬鏁�");
+ throw new ArgumentNullException($"type娌℃湁{unit.Type}杩欎釜绫诲瀷鐨勫弬鏁�");
}
throw new NotImplementedException("鎿嶄綔澶辫触");
@@ -46,48 +45,30 @@
private bool UpdateStaffStatus(SqlSugarScope db, decimal staffId,string status)
{
var result = db.Updateable<MesStaff>().SetColumns(s => s.FforbidStatus == status).Where(s => s.Id == staffId).ExecuteCommand();
-
- if (result > 0)
- {
- return true;
- }
- throw new NotImplementedException(status == "A" ? "鍚敤澶辫触" : "绂佺敤澶辫触");
+ return true;
}
// 鎻掑叆鎴栨洿鏂板憳宸ョ殑鏂规硶
- private bool InsertOrUpdateStaff(SqlSugarScope db,MesStaff entity)
+ private bool InsertOrUpdateStaff(SqlSugarScope db, MesStaff entity)
{
- var exists = db.Queryable<MesStaff>().Any(u => u.StaffNo == entity.StaffNo);
+ var exists = db.Queryable<MesStaff>().Any(e => e.Id == entity.Id && e.StaffNo==entity.StaffNo);
if (exists)
{
- var updateStaff = db.Updateable(entity).ExecuteCommand();
- if (updateStaff > 0)
- {
- return true;
- }
+ var update = db.Updateable(entity).Where(e => e.Id == entity.Id && e.StaffNo == entity.StaffNo).ExecuteCommand();
+ return true;
}
else
{
- var insertStaff = db.Insertable(entity).ExecuteCommand();
- if (insertStaff > 0)
+ var insert = db.Insertable(entity).ExecuteCommand();
+ if (insert > 0)
{
return true;
}
+ else
+ {
+ return false;
+ }
}
-
- return false;
- }
-
- // 鍒犻櫎鍛樺伐鐨勬柟娉�
- private bool DeleteStaff(SqlSugarScope db,decimal staffId)
- {
- var deleteStaff =db.Deleteable<MesStaff>().In(staffId).ExecuteCommand();
- if (deleteStaff > 0)
- {
- return true;
- }
-
- throw new NotImplementedException("鍙嶅鏍稿け璐�");
}
// 灏� ErpStaff 瀵硅薄杞崲涓� MesStaff 瀵硅薄鐨勬柟娉�
@@ -109,26 +90,16 @@
};
if (staff.FStaffStartDate != null)
- {
- entity.StartDate = DateTime.ParseExact(staff.FStaffStartDate, "yyyy-MM-dd HH:mm:ss", null);
- }
+ entity.StartDate = DateTime.ParseExact(staff.FStaffStartDate,
+ "yyyy-MM-dd HH:mm:ss", null);
return entity;
}
// SaveList 鏂规硶鐢ㄤ簬淇濆瓨澶氫釜鍛樺伐璁板綍锛屾牴鎹被鍨嬫壒閲忔墽琛屼笉鍚岀殑鎿嶄綔
- public bool SaveList(List<ErpStaff> departments)
+ public bool SaveList(List<ErpStaff> staffs)
{
- var list = new List<MesStaff>();
-
- departments.ForEach(s =>
- {
- var entity = GetMesStaff(s);
- entity.Type = s.Type;
- list.Add(entity);
-
- });
-
+ var list = staffs.Select(GetMesStaff).ToList();
var groupBy = list.GroupBy(s => s.Type).ToDictionary(g => g.Key, g => g.ToList());
return UseTransaction(db =>
{
@@ -136,27 +107,31 @@
switch (staffGroup.Key)
{
case "0":
- if (!UpdateStaffStatusBatch(db, staffGroup.Value,"A")) // 鎵归噺鍚敤鍛樺伐
+ if (!UpdateStaffStatusBatch(db, staffGroup.Value,
+ "A")) // 鎵归噺鍚敤鍛樺伐
throw new NotImplementedException("鍚敤澶辫触");
break;
case "1":
- if (!UpdateStaffStatusBatch(db, staffGroup.Value,"B")) // 鎵归噺绂佺敤鍛樺伐
+ if (!UpdateStaffStatusBatch(db, staffGroup.Value,
+ "B")) // 鎵归噺绂佺敤鍛樺伐
throw new NotImplementedException("绂佺敤澶辫触");
break;
case "2":
- if (!InsertStaffBatch(db,staffGroup.Value)) // 鎵归噺鎻掑叆鍛樺伐
+ if (!InsertStaffBatch(db, staffGroup.Value)) // 鎵归噺鎻掑叆鍛樺伐
throw new NotImplementedException("鎻掑叆澶辫触");
break;
case "3":
- if (!DeleteStaffBatch(db,staffGroup.Value)) // 鎵归噺鍒犻櫎鍛樺伐
+ if (!UpdateStaffStatusBatch(db, staffGroup.Value, "B")) // 鎵归噺绂佺敤鍛樺伐
throw new NotImplementedException("鍒犻櫎澶辫触");
break;
case "4":
- if (!InsertOrUpdateBatch(db,staffGroup.Value)) // 鎵归噺鎻掑叆鎴栨洿鏂板憳宸�
+ if (!InsertOrUpdateBatch(db,
+ staffGroup.Value)) // 鎵归噺鎻掑叆鎴栨洿鏂板憳宸�
throw new NotImplementedException("鍚屾澶辫触");
break;
default:
- throw new ArgumentNullException($"type娌℃湁{staffGroup.Key}杩欎釜绫诲瀷鐨勫弬鏁�");
+ throw new ArgumentNullException(
+ $"type娌℃湁{staffGroup.Key}杩欎釜绫诲瀷鐨勫弬鏁�");
}
return 1;
@@ -168,51 +143,33 @@
{
var ids = staffList.Select(it => it.Id).ToArray();
var result = db.Updateable<MesStaff>().SetColumns(s => s.FforbidStatus == status).Where(s => ids.Contains(s.Id)).ExecuteCommand();
-
- if (result > 0)
- {
- return true;
- }
-
- throw new NotImplementedException(status == "A" ? "鍚敤澶辫触" : "绂佺敤澶辫触");
+ return true;
+
}
// 鎵归噺鎻掑叆鍛樺伐鐨勬柟娉�
- private bool InsertStaffBatch(SqlSugarScope db,List<MesStaff> staffList)
+ private bool InsertStaffBatch(SqlSugarScope db, List<MesStaff> staffList)
{
- var userInsert = staffList.FindAll(s => s.Type == "INSERT");
- var executeCommand = db.Insertable(userInsert).ExecuteCommand();
- if (executeCommand > 0)
- if (db.Insertable(staffList).ExecuteCommand() > 0)
- return true;
-
- throw new ArgumentNullException("瀹℃牳澶辫触");
- }
-
- // 鎵归噺鍒犻櫎鍛樺伐鐨勬柟娉�
- private bool DeleteStaffBatch(SqlSugarScope db, List<MesStaff> staffList)
- {
- var ids = staffList.Select(it => it.Id).ToArray();
- if (db.Deleteable<MesStaff>().In(ids).ExecuteCommand() > 0)
+ foreach (var entity in staffList)
{
- return true;
- }
-
- throw new ArgumentNullException("鍙嶅鏍稿け璐�");
- }
-
- // 鎵归噺鎻掑叆鎴栨洿鏂板憳宸ョ殑鏂规硶
- private bool InsertOrUpdateBatch(SqlSugarScope db, List<MesStaff> staffList)
- {
- foreach (var staff in staffList)
- {
- var entity = staffList.First(s => s.StaffNo == staff.StaffNo);
if (!InsertOrUpdateStaff(db, entity))
{
return false;
}
}
+ return true;
+ }
+ // 鎵归噺鎻掑叆鎴栨洿鏂板憳宸ョ殑鏂规硶
+ private bool InsertOrUpdateBatch(SqlSugarScope db, List<MesStaff> staffList)
+ {
+ foreach (var entity in staffList)
+ {
+ if (!InsertOrUpdateStaff(db, entity))
+ {
+ return false;
+ }
+ }
return true;
}
}
\ No newline at end of file
--
Gitblit v1.9.3