| | |
| | | using System.Collections.Generic; |
| | | using System.Configuration; |
| | | using System.Data.Common; |
| | | using System.Text; |
| | | |
| | | namespace Dao |
| | | { |
| | |
| | | if (!((DbDataReader)reader).Read() || !this.ReadInfo(reader, user)) |
| | | return false; |
| | | } |
| | | user.MenuIDList = this.LoadUserMenuList(user.UserID); |
| | | //作废用户权限,改使用角色权限 |
| | | //user.MenuIDList = this.LoadUserMenuList(user.UserID); |
| | | user.MenuIDList = this.LoadUserRoleMenuList(user.UserID); |
| | | return true; |
| | | } |
| | | |
| | |
| | | return list; |
| | | } |
| | | |
| | | //edit:yangzh by 20220615 已作废(已使用用户角色关联权限--LoadUserRoleMenuList(int userID) ) |
| | | public Dictionary<string, SysUserMenu> LoadUserMenuList(int userID) |
| | | { |
| | | Dictionary<string, SysUserMenu> dictionary = new Dictionary<string, SysUserMenu>(); |
| | |
| | | return dictionary; |
| | | } |
| | | |
| | | public Dictionary<string, SysUserMenu> LoadUserRoleMenuList(int userID) |
| | | { |
| | | StringBuilder stringBuilder = new StringBuilder(); |
| | | |
| | | Dictionary<string, SysUserMenu> dictionary = new Dictionary<string, SysUserMenu>(); |
| | | string userType = GetUserRoleByUserId(userID); |
| | | if (!string.IsNullOrEmpty(userType)) |
| | | { |
| | | List<object> list = DataConverter.stringToList(userType); |
| | | if (list.Count > 0) |
| | | { |
| | | stringBuilder.Append(" select sm.* from sys_menu sm "); |
| | | stringBuilder.Append(" left join ( "); |
| | | stringBuilder.Append(" select distinct * from ( "); |
| | | stringBuilder.Append(" select * from sys_role_menu where role_id = " + list[0] + " "); |
| | | |
| | | for (int i = 1; i < list.Count; i++) |
| | | { |
| | | stringBuilder.Append(" union (select * from sys_role_menu where role_id = " + list[i] + ") "); |
| | | |
| | | } |
| | | stringBuilder.Append(" ) bb "); |
| | | stringBuilder.Append(" ) cc on cc.menu_id = sm.menu_id "); |
| | | stringBuilder.Append(" where cc.menu_id is not null "); |
| | | using (OracleDataReader reader = OracleHelper.ExecuteReader(stringBuilder.ToString(), OracleHelper.Connection)) |
| | | { |
| | | while (reader != null && ((DbDataReader)reader).Read()) |
| | | { |
| | | /** |
| | | OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader); |
| | | string menuID = oracleReaderWrapper.GetString("MENU_ID", ""); |
| | | string menuName = oracleReaderWrapper.GetString("MENU_NAME", ""); |
| | | string remark = oracleReaderWrapper.GetString("REMARK", ""); |
| | | string parentID = oracleReaderWrapper.GetString("PARENT_ID", ""); |
| | | int menuLV = oracleReaderWrapper.GetInt("MENU_LV", 0); |
| | | SysMenu sysMenu = new SysMenu(); |
| | | sysMenu.MenuID = menuID; |
| | | sysMenu.MenuName = menuName; |
| | | sysMenu.Remark = remark; |
| | | sysMenu.ParentID = parentID; |
| | | sysMenu.MenuLV = menuLV; |
| | | |
| | | dictionary[menuID] = sysMenu; |
| | | **/ |
| | | |
| | | OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader); |
| | | string string1 = oracleReaderWrapper.GetString("MENU_ID", ""); |
| | | //string string2 = oracleReaderWrapper.GetString("MENU_DATA", ""); |
| | | string string2 = ""; |
| | | |
| | | dictionary[string1] = new SysUserMenu(string1, string2); |
| | | |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | return dictionary; |
| | | } |
| | | |
| | | public List<SysMenu> LoadSysMenuList() |
| | | { |
| | | List<SysMenu> list = new List<SysMenu>(); |
| | |
| | | return list; |
| | | } |
| | | |
| | | //新加登陆日志 |
| | | //新加登陆日志 |
| | | public List<SysMenu> LoadSysMenuIDList(int menuid, int menulv) |
| | | { |
| | | List<SysMenu> list = new List<SysMenu>(); |
| | |
| | | e.UserID = oracleReaderWrapper.GetInt("USER_ID", 0); |
| | | e.Account = oracleReaderWrapper.GetString("ACCOUNT", ""); |
| | | e.Password = oracleReaderWrapper.GetString("PASSWORD", ""); |
| | | e.Salt = oracleReaderWrapper.GetString("SALT", ""); |
| | | e.UserName = oracleReaderWrapper.GetString("USER_NAME", ""); |
| | | e.UserType = oracleReaderWrapper.GetString("USER_TYPE", ""); |
| | | e.ExpireTime = oracleReaderWrapper.GetDateTime("EXPIRE_TIME"); |
| | | e.CreateTime = oracleReaderWrapper.GetDateTime("CREATE_TIME"); |
| | | e.Remark = oracleReaderWrapper.GetString("REMARK", ""); |
| | |
| | | if (reader != null && ((DbDataReader)reader).Read()) |
| | | this.ReadInfo(reader, e); |
| | | } |
| | | e.MenuIDList = this.LoadUserMenuList(userID); |
| | | //作废用户权限,改使用角色权限 |
| | | //e.MenuIDList = this.LoadUserMenuList(userID); |
| | | e.MenuIDList = this.LoadUserRoleMenuList(userID); |
| | | return e; |
| | | } |
| | | |
| | | //根据账户ID获取用户角色集 |
| | | public string GetUserRoleByUserId(int userID) |
| | | { |
| | | SysUser e = new SysUser(); |
| | | using (OracleDataReader reader = OracleHelper.ExecuteReader("SELECT * FROM SYS_USER WHERE USER_ID=:USER_ID", OracleHelper.Connection, new OracleParameter("USER_ID", (object)userID))) |
| | | { |
| | | if (reader != null && ((DbDataReader)reader).Read()) |
| | | this.ReadInfo(reader, e); |
| | | } |
| | | return e.UserType; |
| | | } |
| | | |
| | | public SysUser GetUser(string account) |
| | |
| | | |
| | | public bool Update(SysUser o)//修改账号 |
| | | { |
| | | return OracleHelper.ExecuteSql("update SYS_USER SET ACCOUNT=:ACCOUNT,PASSWORD=:PASSWORD,USER_NAME=:USER_NAME,EXPIRE_TIME=:EXPIRE_TIME,REMARK=:REMARK,MOBILE=:MOBILE,EMAIL=:EMAIL,MOBILE_FLAG=:MOBILE_FLAG,EMAIL_FLAG=:EMAIL_FLAG,ISENCRYPTION=:ISENCRYPTION,ISVERIFICATION=:ISVERIFICATION,CLIENTIP=:CLIENTIP,CREATE_TIME=:CREATE_TIME WHERE USER_ID=:USER_ID", OracleHelper.Connection, new OracleParameter(":ACCOUNT", (object)o.Account), new OracleParameter(":PASSWORD", (object)o.Password), new OracleParameter(":USER_NAME", (object)o.UserName), new OracleParameter(":EXPIRE_TIME", (object)o.ExpireTime), new OracleParameter(":REMARK", (object)o.Remark), new OracleParameter(":USER_ID", (object)o.UserID), new OracleParameter(":MOBILE", (object)o.Mobile), new OracleParameter(":EMAIL", (object)o.Email), new OracleParameter(":MOBILE_FLAG", (object)o.MobileFlag), new OracleParameter(":EMAIL_FLAG", (object)o.EmailFlag), new OracleParameter(":ISENCRYPTION", (object)o.IsEncryption), new OracleParameter(":ISVERIFICATION", (object)o.IsVerification), new OracleParameter(":CLIENTIP", (object)o.ClientIp), new OracleParameter(":CREATE_TIME", (object)o.CreateTime) ) > 0; |
| | | return OracleHelper.ExecuteSql("update SYS_USER SET ACCOUNT=:ACCOUNT, USER_NAME=:USER_NAME,USER_TYPE=:USER_TYPE,EXPIRE_TIME=:EXPIRE_TIME,REMARK=:REMARK,MOBILE=:MOBILE,EMAIL=:EMAIL,MOBILE_FLAG=:MOBILE_FLAG,EMAIL_FLAG=:EMAIL_FLAG,ISENCRYPTION=:ISENCRYPTION,ISVERIFICATION=:ISVERIFICATION,CLIENTIP=:CLIENTIP,CREATE_TIME=:CREATE_TIME WHERE USER_ID=:USER_ID", OracleHelper.Connection, new OracleParameter(":ACCOUNT", (object)o.Account), new OracleParameter(":USER_NAME", (object)o.UserName), new OracleParameter(":USER_TYPE", (object)o.UserType), new OracleParameter(":EXPIRE_TIME", (object)o.ExpireTime), new OracleParameter(":REMARK", (object)o.Remark), new OracleParameter(":USER_ID", (object)o.UserID), new OracleParameter(":MOBILE", (object)o.Mobile), new OracleParameter(":EMAIL", (object)o.Email), new OracleParameter(":MOBILE_FLAG", (object)o.MobileFlag), new OracleParameter(":EMAIL_FLAG", (object)o.EmailFlag), new OracleParameter(":ISENCRYPTION", (object)o.IsEncryption), new OracleParameter(":ISVERIFICATION", (object)o.IsVerification), new OracleParameter(":CLIENTIP", (object)o.ClientIp), new OracleParameter(":CREATE_TIME", (object)o.CreateTime) ) > 0; |
| | | } |
| | | |
| | | //更新状态 |
| | |
| | | |
| | | public bool Add(SysUser e)//添加账号 |
| | | { |
| | | return OracleHelper.ExecuteSql("INSERT INTO SYS_USER(USER_ID,ACCOUNT,PASSWORD, USER_NAME, EXPIRE_TIME,REMARK,MOBILE,EMAIL,MOBILE_FLAG,EMAIL_FLAG,ISENCRYPTION,ISVERIFICATION,CLIENTIP,CREATE_TIME, STATUS) VALUES(SYS_USER_ID_SEQ.NextVal,:ACCOUNT,:PASSWORD, :USER_NAME,:EXPIRE_TIME,:REMARK,:MOBILE,:EMAIL,:MOBILE_FLAG,:EMAIL_FLAG,:ISENCRYPTION,:ISVERIFICATION,:CLIENTIP,:CREATE_TIME, :STATUS)", OracleHelper.Connection, new OracleParameter(":ACCOUNT", (object)e.Account), new OracleParameter(":PASSWORD", (object)e.Password), new OracleParameter(":USER_NAME", (object)e.UserName), new OracleParameter(":EXPIRE_TIME", (object)e.ExpireTime), new OracleParameter(":REMARK", (object)e.Remark), new OracleParameter(":MOBILE", (object)e.Mobile), new OracleParameter(":EMAIL", (object)e.Email), new OracleParameter(":MOBILE_FLAG", (object)e.MobileFlag), new OracleParameter(":EMAIL_FLAG", (object)e.EmailFlag), new OracleParameter(":ISENCRYPTION", (object)e.IsEncryption), new OracleParameter(":ISVERIFICATION", (object)e.IsVerification), new OracleParameter(":CLIENTIP", (object)e.ClientIp), new OracleParameter(":CREATE_TIME", (object)e.CreateTime), new OracleParameter(":STATUS", (object)e.Status)) > 0; |
| | | return OracleHelper.ExecuteSql("INSERT INTO SYS_USER(USER_ID,ACCOUNT,PASSWORD, SALT, USER_NAME, USER_TYPE, EXPIRE_TIME,REMARK,MOBILE,EMAIL,MOBILE_FLAG,EMAIL_FLAG,ISENCRYPTION,ISVERIFICATION,CLIENTIP,CREATE_TIME) VALUES(SYS_USER_ID_SEQ.NextVal,:ACCOUNT,:PASSWORD, :SALT, :USER_NAME,:USER_TYPE,:EXPIRE_TIME,:REMARK,:MOBILE,:EMAIL,:MOBILE_FLAG,:EMAIL_FLAG,:ISENCRYPTION,:ISVERIFICATION,:CLIENTIP,:CREATE_TIME)", OracleHelper.Connection, new OracleParameter(":ACCOUNT", (object)e.Account), new OracleParameter(":PASSWORD", (object)e.Password), new OracleParameter(":SALT", (object)e.Salt), new OracleParameter(":USER_NAME", (object)e.UserName), new OracleParameter(":USER_TYPE", (object)e.UserType), new OracleParameter(":EXPIRE_TIME", (object)e.ExpireTime), new OracleParameter(":REMARK", (object)e.Remark), new OracleParameter(":MOBILE", (object)e.Mobile), new OracleParameter(":EMAIL", (object)e.Email), new OracleParameter(":MOBILE_FLAG", (object)e.MobileFlag), new OracleParameter(":EMAIL_FLAG", (object)e.EmailFlag), new OracleParameter(":ISENCRYPTION", (object)e.IsEncryption), new OracleParameter(":ISVERIFICATION", (object)e.IsVerification), new OracleParameter(":CLIENTIP", (object)e.ClientIp), new OracleParameter(":CREATE_TIME", (object)e.CreateTime) ) > 0; |
| | | } |
| | | |
| | | public bool UpdatePassword(int userID, string oldPassword, string newPassword) |
| | | { |
| | | return OracleHelper.ExecuteSql("update SYS_USER SET PASSWORD=:NEWPASSWORD,ISENCRYPTION=1 WHERE USER_ID=:USER_ID AND PASSWORD=:OLDPASSWORD", OracleHelper.Connection, new OracleParameter(":NEWPASSWORD", (object)newPassword), new OracleParameter(":OLDPASSWORD", (object)oldPassword), new OracleParameter(":USER_ID", (object)userID)) >= 1; |
| | | } |
| | | |
| | | //加密盐修改密码 |
| | | public bool UpdatePwd(string account, string password) |
| | | { |
| | | return OracleHelper.ExecuteSql("UPDATE SYS_USER SET PASSWORD=:PASSWORD WHERE ACCOUNT=:ACCOUNT", OracleHelper.Connection, new OracleParameter(":ACCOUNT", (object)account), new OracleParameter(":PASSWORD", (object)password) ) > 0; |
| | | } |
| | | |
| | | public void UpdatePermission(int userid, string[] menuIDArray) |
| | |
| | | foreach (string str in menuIDArray) |
| | | { |
| | | OracleParameter[] oracleParameterArray2 = new OracleParameter[3] |
| | | { |
| | | new OracleParameter(":USER_ID", (object) userid), |
| | | new OracleParameter(":MENU_ID", (object) str), |
| | | new OracleParameter(":MENU_DATA", (object) "") |
| | | }; |
| | | { |
| | | new OracleParameter(":USER_ID", (object) userid), |
| | | new OracleParameter(":MENU_ID", (object) str), |
| | | new OracleParameter(":MENU_DATA", (object) "") |
| | | }; |
| | | list.Add(new KeyValuePair<string, OracleParameter[]>(key2, oracleParameterArray2)); |
| | | OracleHelper.ExecuteSqlTran(list, OracleHelper.Connection); |
| | | } |
| | | OracleHelper.ExecuteSqlTran(list, OracleHelper.Connection); |
| | | } |
| | | |
| | | private int ReadCount(OracleDataReader reader) |