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/MesStaffManager.cs |   21 ++++++++-------------
 1 files changed, 8 insertions(+), 13 deletions(-)

diff --git a/MES.Service/service/BasicData/MesStaffManager.cs b/MES.Service/service/BasicData/MesStaffManager.cs
index 25fb3a1..776945d 100644
--- a/MES.Service/service/BasicData/MesStaffManager.cs
+++ b/MES.Service/service/BasicData/MesStaffManager.cs
@@ -27,7 +27,6 @@
                     break;
                 case "2":
                 case "4":
-                    DeleteStaff(db, sysUser, entity.Id);
                     if (InsertOrUpdateStaff(db, sysUser, entity)) // 鎻掑叆鎴栨洿鏂板憳宸�
                         return 1;
                     break;
@@ -62,6 +61,12 @@
     private bool InsertOrUpdateStaff(SqlSugarScope db, SysUser sysUser,
         MesStaff entity)
     {
+        db.Deleteable<SysUser>()
+            .Where(s => s.Account == sysUser.Account).ExecuteCommand();
+
+        db.Deleteable<MesStaff>()
+            .Where(s => s.Id == entity.Id).ExecuteCommand();
+
         var insertUser = db.Insertable(sysUser).ExecuteCommand();
         if (insertUser <= 0) return false;
         var insertStaff = db.Insertable(entity).ExecuteCommand();
@@ -157,16 +162,12 @@
                                 "B")) // 鎵归噺绂佺敤鍛樺伐
                             throw new NotImplementedException("绂佺敤澶辫触");
                         break;
-                    case "2":
-                        if (!InsertStaffBatch(db, userList,
-                                staffGroup.Value)) // 鎵归噺鎻掑叆鍛樺伐
-                            throw new NotImplementedException("鎻掑叆澶辫触");
-                        break;
                     case "3":
                         if (!DeleteStaffBatch(db, userList,
                                 staffGroup.Value)) // 鎵归噺鍒犻櫎鍛樺伐
                             throw new NotImplementedException("鍒犻櫎澶辫触");
                         break;
+                    case "2":
                     case "4":
                         if (!InsertOrUpdateBatch(db, userList,
                                 staffGroup.Value)) // 鎵归噺鎻掑叆鎴栨洿鏂板憳宸�
@@ -231,12 +232,6 @@
     private bool InsertOrUpdateBatch(SqlSugarScope db, List<SysUser> userList,
         List<MesStaff> staffList)
     {
-        foreach (var sysUser in userList)
-        {
-            var entity = staffList.First(s => s.StaffNo == sysUser.Account);
-            if (!InsertOrUpdateStaff(db, sysUser, entity)) return false;
-        }
-
-        return true;
+        return !(from sysUser in userList let entity = staffList.First(s => s.StaffNo == sysUser.Account) where !InsertOrUpdateStaff(db, sysUser, entity) select sysUser).Any();
     }
 }
\ No newline at end of file

--
Gitblit v1.9.3