using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data; using Stone.Common; using Stone.Entity; namespace Stone.User { public class F_UserInfo { public static DataSet GetList() { return new Entity_t_Sys_User().GetData("Name", "[Enabled]=1", "ID asc"); } public static DataSet GetAuthority() { Entity_t_Sys_Authority t_Sys_Authority = new Entity_t_Sys_Authority(); return t_Sys_Authority.GetData("", "[IsShow]=1", "[Sort] asc"); } public static DataSet GetListAll() { return new Entity_t_Sys_User().GetData("*", "1=1", "[Name] asc"); } public static bool Login(string UserName, string Password) { Password = MyStrings.EncryptStr(Password); Entity_t_Sys_User t_User = new Entity_t_Sys_User(); DataSet dsUser = t_User.GetData("", "[Name]='" + UserName + "' and [Password]='" + Password + "' and [Enabled]=1", "ID asc"); dsUser.Tables[0].TableName = "User"; if (dsUser.Tables[0].Rows.Count == 0) throw new Exception("用户/密码输入不正确"); Entity_v_Sys_AuthorityList v_Sys_AuthorityList = new Entity_v_Sys_AuthorityList(); DataSet dsAuthorityList = v_Sys_AuthorityList.GetData("[UserID]=" + dsUser.Tables[0].Rows[0]["ID"].ToString()); dsUser.Tables.Add(dsAuthorityList.Tables[0].Copy()); dsUser.Tables[1].TableName = "Authority"; if (dsUser.Tables["User"].Rows.Count > 0) { UserInfo.UserID = Convert.ToInt32(dsUser.Tables["User"].Rows[0]["ID"]); UserInfo.UserName = dsUser.Tables["User"].Rows[0]["Name"].ToString(); UserInfo.Authority = dsUser.Tables["Authority"].Copy(); return true; } else { return false; } } public static void Password(string UserName, string Password, string PasswordNew) { Password = MyStrings.EncryptStr(Password); PasswordNew = MyStrings.EncryptStr(PasswordNew); Entity_t_Sys_User t_User = new Entity_t_Sys_User(); DataSet dsData = t_User.GetData("", "[Name]='" + UserName + "' and [Password]='" + Password + "' and [Enabled]=1", "ID asc"); if (dsData.Tables[0].Rows.Count == 0) throw new Exception("旧密码不正确或该用户已经被禁用"); dsData.Tables[0].Rows[0]["Password"] = PasswordNew; t_User.Edit(dsData.Tables[0].Rows[0]); } public static void Del(string UserName) { if (UserName.ToLower() == "admin") throw new Exception("admin 用户不能删除"); Entity_t_Sys_User t_User = new Entity_t_Sys_User(); Entity_t_Sys_AuthorityList t_Sys_AuthorityList = new Entity_t_Sys_AuthorityList(); DataSet dsUser = t_User.GetData("[Name]='" + UserName + "'"); if (dsUser.Tables[0].Rows.Count > 0) { t_User.Del("[Name]='" + UserName + "'"); t_Sys_AuthorityList.Del("[UserID]=" + dsUser.Tables[0].Rows[0]["ID"].ToString()); } } public static void Edit(string UserName, int Enabled) { Entity_t_Sys_User t_User = new Entity_t_Sys_User(); t_User.Edit("[Name]='" + UserName + "', [Enabled]=" + Enabled, "[Name]='" + UserName + "'"); } public static void Add(string UserName, string Password, string Memo) { Entity_t_Sys_User t_User = new Entity_t_Sys_User(); if (t_User.GetData("[Name]='" + UserName + "'").Tables[0].Rows.Count > 0) throw new Exception(UserName + " 已经存在"); DataRow drNew = t_User.Table.NewRow(); drNew["Name"] = UserName; drNew["Password"] = Password; drNew["Memo"] = Memo; drNew["Enabled"] = 1; t_User.Add(drNew); } public static void AddAuthorityList(string UserName, DataSet dsData) { Entity_t_Sys_User t_Sys_User = new Entity_t_Sys_User(); DataSet dsUser = t_Sys_User.GetData("[Name]='" + UserName + "'"); if (dsUser.Tables[0].Rows.Count == 0) throw new Exception("用户名 " + UserName + " 在系统中不存在"); Entity_t_Sys_AuthorityList t_Sys_AuthorityList = new Entity_t_Sys_AuthorityList(); t_Sys_AuthorityList.Del("[UserID]=" + dsUser.Tables[0].Rows[0]["ID"].ToString()); foreach (DataRow drData in dsData.Tables[0].Rows) { DataRow drNew = t_Sys_AuthorityList.Table.NewRow(); drNew["UserID"] = dsUser.Tables[0].Rows[0]["ID"].ToString(); drNew["AuthorityID"] = drData["AuthorityID"].ToString(); t_Sys_AuthorityList.Add(drNew); } } public static void AddAuthorityTree(string UserName, List TreeCodes) { Entity_t_Sys_User t_Sys_User = new Entity_t_Sys_User(); DataSet dsUser = t_Sys_User.GetData("[Name]='" + UserName + "'"); if (dsUser.Tables[0].Rows.Count == 0) throw new Exception("用户名 " + UserName + " 在系统中不存在"); Entity_t_Sys_Menu_Authority t_Sys_Menu_Authority = new Entity_t_Sys_Menu_Authority(); t_Sys_Menu_Authority.Del("[UserID]=" + dsUser.Tables[0].Rows[0]["ID"].ToString()); foreach (string MenuCode in TreeCodes) { DataRow drNew = t_Sys_Menu_Authority.Table.NewRow(); drNew["UserID"] = dsUser.Tables[0].Rows[0]["ID"].ToString(); drNew["MenuCode"] = MenuCode; t_Sys_Menu_Authority.Add(drNew); } } public static DataSet GetAuthorityList(string UserName) { Entity_v_Sys_AuthorityList v_Sys_AuthorityList = new Entity_v_Sys_AuthorityList(); return v_Sys_AuthorityList.GetData("[Name]='" + UserName + "'"); } } }