From 374ce4ffd0c459bb4067e8d5765f972668aff9b1 Mon Sep 17 00:00:00 2001
From: wzp <2040239371@qq.com>
Date: 星期四, 02 三月 2023 14:56:23 +0800
Subject: [PATCH] 变更oracle访问组件

---
 web/web/SysUser.ashx |  135 +++++++++++++++++++++++++++++++++++++++------
 1 files changed, 117 insertions(+), 18 deletions(-)

diff --git a/web/web/SysUser.ashx b/web/web/SysUser.ashx
index f1bae60..190dddf 100644
--- a/web/web/SysUser.ashx
+++ b/web/web/SysUser.ashx
@@ -31,7 +31,13 @@
                 return this.UpdatePermission(context);
             case "updateStatus":
                 return this.UpdateStatus(context);
-                    
+            //淇敼瀵嗙爜
+            case "updatePwd":
+                return UpdatePwd(context);
+            //鏍规嵁鏁扮粍瀛楃涓茶浆鎹㈠瓧鍏�
+            case "arrayStrToDict":
+                return ArrayStrToDict(context);
+
             default:
                 throw new Exception("Invalid Action=" + @string);
         }
@@ -85,7 +91,8 @@
     private JsonPageResult LoadUserMenuList(PageContext<SysUser> context)
     {
         context.CheckRight("104", FailedOperation.PromptOnly);
-        return new JsonPageResult(true, (object) this._Dao.LoadUserMenuList(context.GetInt("userid")).Keys);
+        //return new JsonPageResult(true, (object) this._Dao.LoadUserMenuList(context.GetInt("userid")).Keys);
+        return new JsonPageResult(true, (object) this._Dao.LoadUserRoleMenuList(context.GetInt("userid")).Keys);
     }
 
     private JsonPageResult SaveUser(PageContext<SysUser> context)
@@ -95,6 +102,15 @@
         string string2 = context.GetString("password");
         string userName = context.GetString("userName");
         string userType = context.GetString("userType");
+            
+        List<string> tmpList = new List<string>();
+        //鏁扮粍鍚堝苟
+        tmpList.AddRange( JsonConvert.DeserializeObject<string[]>(context.GetString("userType")) );
+
+        //鏁扮粍鍘婚噸
+        string[] tmpArray = DataConverter.DelRepeatData(tmpList.ToArray() );
+        userType = string.Join(",", tmpArray) ;
+
         string string3 = context.GetString("email");
         string string4 = context.GetString("mobile");
         int int2 = context.GetInt("emailFlag");
@@ -102,8 +118,11 @@
         int num = 0;
         if (string.IsNullOrEmpty(string1) || !Regex.IsMatch(string1, "\\w{3,}"))
             throw new ArgumentException("璐︽埛鑷冲皯3浣嶅彲瑙佸瓧绗︼紝璇烽噸鏂拌緭鍏ワ紒");
-        if (string.IsNullOrEmpty(string2) || string2.Length < 6)
-            throw new ArgumentException("璐︽埛瀵嗙爜鑷冲皯6浣嶏紝璇烽噸鏂拌緭鍏ワ紒");
+        if(int1<= 0 )
+        { 
+            if (string.IsNullOrEmpty(string2) || string2.Length < 6)
+                throw new ArgumentException("璐︽埛瀵嗙爜鑷冲皯6浣嶏紝璇烽噸鏂拌緭鍏ワ紒");
+        }
         if (string.IsNullOrEmpty(userName))
             throw new ArgumentException("璐︽埛鍚嶇О涓嶈兘涓虹┖锛岃杈撳叆锛�");
         if (string.IsNullOrEmpty(userType))
@@ -134,19 +153,26 @@
             throw new ArgumentException("璐︽埛鍚嶇О宸茬粡瀛樺湪锛岃閲嶆柊杈撳叆锛�");
 
         sysUser.UserName = userName;
-        sysUser.UserType = string.IsNullOrEmpty(userType) ? 0 : int.Parse(userType);
+        sysUser.UserType = userType;
         sysUser.CreateTime = DateTime.Now;
-        if (int1 > 0)
-        {
-            SysUser userInfo = this._Dao.GetUserInfo(int1);
-            sysUser.Password = userInfo.Password == string2 ? userInfo.Password : DataHelper.MD5Hex(string2);
-            sysUser.IsEncryption = userInfo.Password == string2 ? userInfo.IsEncryption : 1;
-        }
-        else
-        {
-            sysUser.Password = DataHelper.MD5Hex(string2);
-            sysUser.IsEncryption = 1;
-        }
+
+        /**
+    //鑾峰彇鍞竴鏍囪瘑绗�
+    string salt = DataConverter.getRandom(6);
+    if (int1 > 0)
+    {
+        SysUser userInfo = this._Dao.GetUserInfo(int1);
+        sysUser.Password = userInfo.Password == string2 ? userInfo.Password : DataHelper.MD5Hex(string2);
+        sysUser.IsEncryption = userInfo.Password == string2 ? userInfo.IsEncryption : 1;
+    }
+    else
+    {
+        string2 += salt;
+        sysUser.Password = DataHelper.MD5Hex(string2);
+        sysUser.IsEncryption = 1;
+        sysUser.Salt = salt;
+    }**/
+
         sysUser.Email = string3;
         sysUser.Mobile = string4;
         sysUser.MobileFlag = int3;
@@ -156,6 +182,12 @@
         if (int1 > 0)
         {
             context.CheckRight("1042", FailedOperation.PromptOnly);
+            if (int1 > 0)
+            {
+                SysUser userInfo = this._Dao.GetUserInfo(int1);
+                sysUser.IsEncryption = userInfo.Password == string2 ? userInfo.IsEncryption : 1;
+            }
+            //edit:yangzh by 20220612 淇敼鏃朵笉鏇存柊瀵嗙爜
             this._Dao.Update(sysUser);
         }
         else
@@ -164,7 +196,25 @@
             if (this._Dao.Exists(string1))
                 throw new ArgumentException("璐︽埛宸茬粡瀛樺湪锛岃閲嶆柊杈撳叆锛�");
 
+
+            string password = "";
+            if(int1> 0 )
+            {
+                throw new ArgumentException("瀵嗙爜涓嶈兘涓虹┖锛岃閲嶆柊杈撳叆锛�");
+            }
+
+            //鑾峰彇鍞竴鏍囪瘑绗�
+            string salt = DataConverter.getRandom(6);
+
+            string2 += salt;
+            password = DataHelper.MD5Hex(string2);
+
+            sysUser.IsEncryption = 1;
+            sysUser.Salt = salt;
+            sysUser.Password = password;
+
             this._Dao.Add(sysUser);
+
         }
         return new JsonPageResult(true, (object) "璐︽埛淇濆瓨鎴愬姛锛�");
     }
@@ -177,10 +227,59 @@
         int status = context.GetInt("status");
 
         SysUser sysUser = new SysUser();
-            sysUser.UserID = userId;
-            sysUser.Status = status;
+        sysUser.UserID = userId;
+        sysUser.Status = status;
         this._Dao.UpdateStatus(sysUser);
         return new JsonPageResult(true, "鏇存柊淇℃伅鐘舵�佹垚鍔燂紒");
 
     }
+
+    //淇敼瀵嗙爜
+    private JsonPageResult UpdatePwd(PageContext<Model.SysUser> context)
+    {
+        string account = context.GetString("account");
+        string newPwd = context.GetString("newPwd");
+        int userID = 0;
+
+        if (string.IsNullOrEmpty(account))
+        {
+            throw new ArgumentException("绯荤粺璐﹀彿鍙傛暟寮傚父锛�");
+        }
+
+        if (string.IsNullOrEmpty(newPwd) || !System.Text.RegularExpressions.Regex.IsMatch(newPwd, @"[a-zA-Z0-9]{4,10}"))
+        {
+            throw new ArgumentException("鐧诲綍瀵嗙爜涓嶈兘涓虹┖锛屼笖蹇呴』涓�4-10浣嶈嫳鏂囨垨鏁板瓧瀛楃缁勫悎锛�");
+        }
+        string salt = "";
+        SysUser sysUser = _Dao.GetUser(account);
+
+        salt = sysUser.Salt==null? "": sysUser.Salt.ToString();
+        newPwd += salt;
+
+        //瀵嗙爜MD5鍔犲瘑锛�
+        newPwd = DataHelper.MD5Hex(newPwd);
+
+        _Dao.UpdatePwd(account, newPwd );
+
+        return new JsonPageResult(true, (object)"淇敼瀵嗙爜鎴愬姛锛�");
+    }        
+        
+    //鏍规嵁鏁扮粍瀛楃涓茶浆鎹㈠瓧鍏�
+    private JsonPageResult ArrayStrToDict(PageContext<Model.SysUser> context)
+    {
+        string userId = context.GetString("userId");
+        string userType = context.GetString("userType");
+            
+        Dictionary<string, object> dictionary = new Dictionary<string, object>();
+
+        List<object> list = DataConverter.stringToList(userType);
+        for (int i = 0; i < list.Count; i++)
+        {
+            //dictionary[userId.ToString()] = list[i];
+            dictionary[list[i].ToString()] = list[i];
+        }
+
+        return new JsonPageResult(true, dictionary.Keys);
+    }
+
 }

--
Gitblit v1.9.1