From 6a50daac547ebaf0c2503803626e12fbc63c0bb6 Mon Sep 17 00:00:00 2001
From: yanjinhui <3306209981@qq.com>
Date: 星期四, 28 八月 2025 10:13:45 +0800
Subject: [PATCH] 修改密码的复杂度

---
 项目代码/后端/后台管理/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_UserService.cs |   98 +++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 82 insertions(+), 16 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\220\216\347\253\257/\345\220\216\345\217\260\347\256\241\347\220\206/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_UserService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\220\216\347\253\257/\345\220\216\345\217\260\347\256\241\347\220\206/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_UserService.cs"
index 1883e4a..65b4442 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\220\216\347\253\257/\345\220\216\345\217\260\347\256\241\347\220\206/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_UserService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\220\216\347\253\257/\345\220\216\345\217\260\347\256\241\347\220\206/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_UserService.cs"
@@ -31,8 +31,9 @@
         private readonly IRepository<Dt_AuthorizationRecord> _AuthorizatRecServer;
         private readonly IRepository<Sys_UserFace> _userFace;
         
-        public Sys_UserService(IRepository<Sys_UserFace> _userFace,IRepository<Dt_AuthorizationRecord> AuthorizatRecServer ,IRepository<Sys_Role> RoleServer,IRepository<Dt_Loginhsy> LoginhsyServer,IRepository<Dt_FaceRecognition> faceServer, IRepository<Sys_User> repository, IUnitOfWorkManage unitOfWorkManage, ICacheService cacheService, ISys_MenuService menuService, IRepository<Dt_Maintenance> MainServer) : base(repository)
+        public Sys_UserService(IRepository<Sys_UserFace> userFace,IRepository<Dt_AuthorizationRecord> AuthorizatRecServer ,IRepository<Sys_Role> RoleServer,IRepository<Dt_Loginhsy> LoginhsyServer,IRepository<Dt_FaceRecognition> faceServer, IRepository<Sys_User> repository, IUnitOfWorkManage unitOfWorkManage, ICacheService cacheService, ISys_MenuService menuService, IRepository<Dt_Maintenance> MainServer) : base(repository)
         {
+            _userFace= userFace;
             _faceServer = faceServer;
             _LoginhsyServer = LoginhsyServer;
             _unitOfWorkManage = unitOfWorkManage;
@@ -305,7 +306,7 @@
 
         public override WebResponseContent AddData(SaveModel saveModel)
         {
-            string pwd = "123456";
+            string pwd = "Gns1234+";
             string uesrName = saveModel.MainData[nameof(Sys_User.UserName).FirstLetterToLower()].ToString();
             saveModel.MainData[nameof(Sys_User.UserPwd).FirstLetterToLower()] = pwd.EncryptDES(AppSecret.User);
 
@@ -359,6 +360,20 @@
                 if (string.IsNullOrEmpty(newPwd)) return WebResponseContent.Instance.Error("鏂板瘑鐮佷笉鑳戒负绌�");
                 if (newPwd.Length < 6) return WebResponseContent.Instance.Error("瀵嗙爜涓嶈兘灏戜簬6浣�");
 
+                // 鉁� 瀵嗙爜澶嶆潅搴︽牎楠岋細蹇呴』鍖呭惈澶у皬鍐欏瓧姣嶃�佹暟瀛楀拰鐗规畩绗﹀彿
+                if (!global::System.Text.RegularExpressions.Regex.IsMatch(newPwd, @"[a-z]"))
+                    return content.Error("鏂板瘑鐮佸繀椤诲寘鍚皬鍐欏瓧姣�");
+
+                if (!global::System.Text.RegularExpressions.Regex.IsMatch(newPwd, @"[A-Z]"))
+                    return content.Error("鏂板瘑鐮佸繀椤诲寘鍚ぇ鍐欏瓧姣�");
+
+                if (!global::System.Text.RegularExpressions.Regex.IsMatch(newPwd, @"\d"))
+                    return content.Error("鏂板瘑鐮佸繀椤诲寘鍚暟瀛�");
+
+                // 鐗规畩绗﹀彿锛堟爣鐐癸級锛屾瘮濡� . ! @ # $ % ^ & * ( ) _ - + = ...
+                if (!global::System.Text.RegularExpressions.Regex.IsMatch(newPwd, @"[!@#$%^&*(),.?""':{}|<>_\-+=\\/\[\]~`]"))
+                    return content.Error("鏂板瘑鐮佸繀椤诲寘鍚嚦灏戜竴涓壒娈婄鍙�");
+
                 int userId = App.User.UserId;
                 string userCurrentPwd = BaseDal.QueryFirst(x => x.User_Id == userId, s => s.UserPwd);
 
@@ -405,22 +420,45 @@
 
             try
             {
-                if (string.IsNullOrEmpty(oldPwd)) return content.Error("鏃у瘑鐮佷笉鑳戒负绌�");
-                if (string.IsNullOrEmpty(newPwd)) return content.Error("鏂板瘑鐮佷笉鑳戒负绌�");
-                if (newPwd.Length < 6) return content.Error("瀵嗙爜涓嶈兘灏戜簬6浣�");
+                if (string.IsNullOrEmpty(oldPwd))
+                    return content.Error("鏃у瘑鐮佷笉鑳戒负绌�");
+
+                if (string.IsNullOrEmpty(newPwd))
+                    return content.Error("鏂板瘑鐮佷笉鑳戒负绌�");
+
+                if (newPwd.Length < 6)
+                    return content.Error("瀵嗙爜涓嶈兘灏戜簬6浣�");
+
+                // 鉁� 瀵嗙爜澶嶆潅搴︽牎楠岋細蹇呴』鍖呭惈澶у皬鍐欏瓧姣嶃�佹暟瀛楀拰鐗规畩绗﹀彿
+                if (!global::System.Text.RegularExpressions.Regex.IsMatch(newPwd, @"[a-z]"))
+                    return content.Error("鏂板瘑鐮佸繀椤诲寘鍚皬鍐欏瓧姣�");
+
+                if (!global::System.Text.RegularExpressions.Regex.IsMatch(newPwd, @"[A-Z]"))
+                    return content.Error("鏂板瘑鐮佸繀椤诲寘鍚ぇ鍐欏瓧姣�");
+
+                if (!global::System.Text.RegularExpressions.Regex.IsMatch(newPwd, @"\d"))
+                    return content.Error("鏂板瘑鐮佸繀椤诲寘鍚暟瀛�");
+
+                // 鐗规畩绗﹀彿锛堟爣鐐癸級锛屾瘮濡� . ! @ # $ % ^ & * ( ) _ - + = ...
+                if (!global::System.Text.RegularExpressions.Regex.IsMatch(newPwd, @"[^a-zA-Z0-9]"))
+                    return content.Error("鏂板瘑鐮佸繀椤诲寘鍚嚦灏戜竴涓壒娈婄鍙�");
+
 
                 // 鑾峰彇鐢ㄦ埛褰撳墠瀵嗙爜
                 string userCurrentPwd = BaseDal.QueryFirst(x => x.User_Id == id, s => s.UserPwd) ?? "";
 
-                if (string.IsNullOrEmpty(userCurrentPwd)) return content.Error("鐢ㄦ埛涓嶅瓨鍦ㄦ垨瀵嗙爜鏈缃�");
+                if (string.IsNullOrEmpty(userCurrentPwd))
+                    return content.Error("鐢ㄦ埛涓嶅瓨鍦ㄦ垨瀵嗙爜鏈缃�");
 
-                //// 杩涜瀵嗙爜鍔犲瘑瀵规瘮
+                //// 濡傛灉闇�瑕侀獙璇佹棫瀵嗙爜锛屾斁寮�杩欓噷
                 //string _oldPwd = oldPwd.EncryptDES(AppSecret.User);
-                //if (_oldPwd != userCurrentPwd) return content.Error("鏃у瘑鐮佷笉姝g‘");
+                //if (_oldPwd != userCurrentPwd) 
+                //    return content.Error("鏃у瘑鐮佷笉姝g‘");
 
                 // 鐢熸垚鏂板瘑鐮佸姞瀵嗗��
                 string _newPwd = newPwd.EncryptDES(AppSecret.User);
-                if (userCurrentPwd == _newPwd) return content.Error("鏂板瘑鐮佷笉鑳戒笌鏃у瘑鐮佺浉鍚�");
+                if (userCurrentPwd == _newPwd)
+                    return content.Error("鏂板瘑鐮佷笉鑳戒笌鏃у瘑鐮佺浉鍚�");
 
                 // 鏇存柊瀵嗙爜
                 bool isUpdated = BaseDal.UpdateData(new Sys_User
@@ -436,7 +474,7 @@
 
                 if (!isUpdated)
                 {
-                    return content.Error("瀵嗙爜淇敼澶辫触锛岃绋嶅悗閲嶈瘯");
+                    return content.Error("瀵嗙爜淇敼澶辫触锛屽瘑鐮佸繀椤诲寘鎷瓧姣嶄互鍙婄壒娈婂瓧绗�");
                 }
 
                 return content.OK("瀵嗙爜淇敼鎴愬姛", id);
@@ -447,6 +485,7 @@
                 return content.Error($"鏈嶅姟鍣ㄩ敊璇�: {ex.Message}");
             }
         }
+
 
 
         public WebResponseContent Upuserbase(UserDTO userDTO)
@@ -563,7 +602,7 @@
                     RoleName = addUserDTO.rolename,
                     Enable = addUserDTO.enable,
                     Unit = addUserDTO.userunit,
-                    UserPwd = "j79rYYvCz4vdhcboB1Ausg==",
+                    UserPwd = "NgKc7vI5u5jzh115fowV~g==",
                     Userteam = addUserDTO.userteam,
                     Dept_Id = addUserDTO.dept_Id,
                     //CardNumber=addUserDTO.carnuber,
@@ -732,14 +771,27 @@
                 //{
                 // 鐧惧害鍒犻櫎鎴愬姛鍚庯紝鍒犻櫎鏁版嵁搴撲腑鐨勭敤鎴�
                 var user = BaseDal.QueryData(x => x.UserName == account).FirstOrDefault();
+                if (user==null)
+                {
+                    return WebResponseContent.Instance.Error("娌℃湁鎵惧埌璇ョ敤鎴�");
+                }
                 var main = _MainServer.QueryData(x => x.UserAccount == account).FirstOrDefault();
                 var face= _userFace.QueryData(x=>x.UserName== account).FirstOrDefault();
-                if (user != null && main != null&&face!=null)
+                if (main.MaintenanceStatus == 1)
+                {
+                    return WebResponseContent.Instance.Error("璇ョ敤鎴疯繕鍦ㄦ淇腑锛屾棤娉曞垹闄�");
+                }
+                if (face == null)
+                {
+                    BaseDal.DeleteData(user);
+                    _MainServer.DeleteData(main);
+                }
+                else
                 {
                     BaseDal.DeleteData(user);
                     _MainServer.DeleteData(main);
                     _userFace.DeleteData(face);
-                }
+                }             
                 return WebResponseContent.Instance.OK("鐢ㄦ埛鍒犻櫎鎴愬姛");
                 //}
                 //else
@@ -1035,9 +1087,23 @@
                     return webResponse.Error("娌℃湁鎵惧埌璇ョ敤鎴�");
                 }
                 var main = _MainServer.QueryData(x => x.UserAccount == user.UserName).FirstOrDefault();
-
-                BaseDal.DeleteData(user);
-                _MainServer.DeleteData(main);
+                var face = _userFace.QueryData(x => x.UserName == user.UserName).FirstOrDefault();
+                if (main.MaintenanceStatus == 1)
+                {
+                    return WebResponseContent.Instance.Error("璇ョ敤鎴疯繕鍦ㄦ淇腑锛屾棤娉曞垹闄�");
+                }
+                if (face == null)
+                {
+                    BaseDal.DeleteData(user);
+                    _MainServer.DeleteData(main);
+                }
+                else
+                {
+                    BaseDal.DeleteData(user);
+                    _MainServer.DeleteData(main);
+                    _userFace.DeleteData(face);
+                }
+               
             }
 
             return webResponse.OK();

--
Gitblit v1.9.3