From 5d6ba8e6b477a0ed540e1c3267c2618939a5356b Mon Sep 17 00:00:00 2001
From: yanjinhui <3306209981@qq.com>
Date: 星期四, 03 四月 2025 17:13:31 +0800
Subject: [PATCH] 人脸识别优化

---
 项目代码/WIDESEAWCS_Server 正式/WIDESEAWCS_SystemServices/Sys_UserService.cs |   24 +++++++++++++++---------
 1 files changed, 15 insertions(+), 9 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEAWCS_Server \346\255\243\345\274\217/WIDESEAWCS_SystemServices/Sys_UserService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEAWCS_Server \346\255\243\345\274\217/WIDESEAWCS_SystemServices/Sys_UserService.cs"
index 5cb8eb1..827be8c 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEAWCS_Server \346\255\243\345\274\217/WIDESEAWCS_SystemServices/Sys_UserService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEAWCS_Server \346\255\243\345\274\217/WIDESEAWCS_SystemServices/Sys_UserService.cs"
@@ -881,22 +881,29 @@
             try
             {
                 // 鑾峰彇鏂囦欢鐨勫畬鏁磋矾寰�
-                string pathimage = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot", "UploadfaceImage");
+                string pathimage = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot", "image");
+
                 // 濡傛灉鏂囦欢澶逛笉瀛樺湪锛岃繑鍥為敊璇俊鎭�
                 if (!Directory.Exists(pathimage))
                 {
                     return new WebResponseContent { Status = false, Message = "鍥剧墖鏂囦欢澶逛笉瀛樺湪" };
                 }
 
-                //鑾峰彇鏁版嵁搴撲腑鎵�鏈夌殑鍥剧墖锛堟帓闄や负绌猴級 鐜板湪鍥剧墖鍙繚瀛樹簡鏂囦欢鍚� 
-                var userImage = BaseDal.QueryData(x => !string.IsNullOrEmpty(x.HeadImageUrl)).Select(x => x.HeadImageUrl).ToList();
+                // **浣跨敤 HashSet 鎻愰珮鏌ユ壘鏁堢巼**
+                var userImageSet = BaseDal.QueryData(x => !string.IsNullOrEmpty(x.HeadImageUrl))
+                                          .Select(x => x.HeadImageUrl)
+                                          .ToHashSet(); // **鎻愬崌鏌ヨ閫熷害**
 
-                //鑾峰彇鏂囦欢澶逛腑鎵�鏈夌殑鍥剧墖鏂囦欢
-                var imageFiles = Directory.GetFiles(pathimage).Select(Path.GetFileName).ToList();
+                // 鑾峰彇鏂囦欢澶逛腑鐨勬墍鏈夊浘鐗囨枃浠讹紙鏂囦欢鍚嶏級
+                var imageFiles = Directory.GetFiles(pathimage)
+                                          .Select(Path.GetFileName)
+                                          .ToList();
+
                 int deletedCount = 0;
                 foreach (var file in imageFiles)
                 {
-                    if (!userImage.Contains(file))
+                    // **HashSet 鏌ヨ O(1)**
+                    if (!userImageSet.Contains(file))
                     {
                         string filePath = Path.Combine(pathimage, file);
                         try
@@ -910,16 +917,15 @@
                         }
                     }
                 }
-                return new WebResponseContent { Status = true, Message = $"娓呯悊瀹屾垚锛屽垹闄や簡 {deletedCount} 寮犳湭浣跨敤鐨勫浘鐗�" };
-               
 
+                return new WebResponseContent { Status = true, Message = $"娓呯悊瀹屾垚锛屽垹闄や簡 {deletedCount} 寮犳湭浣跨敤鐨勫浘鐗�" };
             }
             catch (Exception ex)
             {
-
                 return new WebResponseContent { Status = false, Message = $"娓呯悊澶辫触: {ex.Message}" };
             }
         }
+
     }
 }
 

--
Gitblit v1.9.3