/// <summary> /// 获取用户下拉选项 项目 角色 且可审批 /// </summary> /// <returns></returns> public static List <Model.SpSysUserItem> GetProjectRoleUserListByProjectId(string projectId, string unitId) { IQueryable <Model.SpSysUserItem> users = null; if (!string.IsNullOrEmpty(projectId)) { List <Model.SpSysUserItem> returUsers = new List <Model.SpSysUserItem>(); List <Model.Project_ProjectUser> getPUser = new List <Model.Project_ProjectUser>(); if (!string.IsNullOrEmpty(unitId)) { getPUser = (from x in Funs.DB.Project_ProjectUser join u in Funs.DB.Project_ProjectUnit on new { x.ProjectId, x.UnitId } equals new { u.ProjectId, u.UnitId } where x.ProjectId == projectId && (u.UnitId == unitId || u.UnitType == BLL.Const.ProjectUnitType_1 || u.UnitType == BLL.Const.ProjectUnitType_3 || u.UnitType == BLL.Const.ProjectUnitType_4) select x).ToList(); } else { getPUser = (from x in Funs.DB.Project_ProjectUser where x.ProjectId == projectId select x).ToList(); } if (getPUser.Count() > 0) { foreach (var item in getPUser) { List <string> roleIdList = Funs.GetStrListByStr(item.RoleId, ','); var getRoles = Funs.DB.Sys_Role.FirstOrDefault(x => x.IsAuditFlow == true && roleIdList.Contains(x.RoleId)); if (getRoles != null) { string userName = RoleService.getRoleNamesRoleIds(item.RoleId) + "-" + UserService.GetUserNameByUserId(item.UserId); Model.SpSysUserItem newsysUser = new Model.SpSysUserItem { UserId = item.UserId, UserName = userName, }; returUsers.Add(newsysUser); } } } return(returUsers); } else { if (!string.IsNullOrEmpty(unitId)) { users = (from x in Funs.DB.Sys_User join z in Funs.DB.Sys_Role on x.RoleId equals z.RoleId where x.IsPost == true && z.IsAuditFlow == true && x.UnitId == unitId orderby x.UserCode select new Model.SpSysUserItem { UserName = z.RoleName + "- " + x.UserName, UserId = x.UserId, }); } else { users = (from x in Funs.DB.Sys_User join z in Funs.DB.Sys_Role on x.RoleId equals z.RoleId where x.IsPost == true && z.IsAuditFlow == true orderby x.UserCode select new Model.SpSysUserItem { UserName = z.RoleName + "- " + x.UserName, UserId = x.UserId, }); } } return(users.ToList()); }
/// <summary> /// 用户登录成功方法 /// </summary> /// <param name="loginname">登录成功名</param> /// <param name="password">未加密密码</param> /// <param name="rememberMe">记住我开关</param> /// <param name="page">调用页面</param> /// <returns>是否登录成功</returns> public static bool UserLogOn(string account, string password, bool rememberMe, System.Web.UI.Page page) { var getUser = from x in Funs.DB.Sys_User where x.Account == account && x.IsPost == true && x.Password == Funs.EncryptionPassword(password) select new { x.UserId, x.UserName, x.Account, x.Password, SystemType = string.Empty, x.IsPost, x.LoginProjectId, LoginSystemType = string.Empty }; ///安全登录 if (getUser.Count() == 0) { getUser = from x in FunsHSSE.DB.Sys_User where x.Account == account && x.IsPost == true && x.Password == Funs.EncryptionPassword(password) select new { x.UserId, x.UserName, x.Account, x.Password, SystemType = string.Empty, x.IsPost, x.LoginProjectId, LoginSystemType = string.Empty }; ///焊接登录 if (getUser.Count() == 0) { getUser = from x in FunsHJGL.DB.Sys_User where x.Account == account && x.IsPost == true && x.Password == Funs.EncryptionPassword(password) select new { x.UserId, x.UserName, x.Account, x.Password, SystemType = string.Empty, x.IsPost, LoginProjectId = string.Empty, LoginSystemType = string.Empty }; ///质量登录 if (getUser.Count() == 0) { getUser = from x in FunsCQMS.DB.Sys_User where x.Account == account && x.IsPost == true && x.Password == Funs.EncryptionPassword(password) select new { x.UserId, x.UserName, x.Account, x.Password, SystemType = string.Empty, x.IsPost, LoginProjectId = string.Empty, LoginSystemType = string.Empty }; ///施工技术登录 if (getUser.Count() == 0) { getUser = from x in FunsSGJS.DB.Sys_User where x.Account == account && x.IsPost == true && x.Password == Funs.EncryptionPassword(password) select new { x.UserId, x.UserName, x.Account, x.Password, SystemType = string.Empty, x.IsPost, LoginProjectId = string.Empty, LoginSystemType = string.Empty }; ///施工综合登录 if (getUser.Count() == 0) { getUser = from x in FunsZHGL.DB.Sys_User where x.Account == account && x.IsPost == true && x.Password == Funs.EncryptionPassword(password) select new { x.UserId, x.UserName, x.Account, x.Password, SystemType = string.Empty, x.IsPost, LoginProjectId = string.Empty, LoginSystemType = string.Empty }; } } } } } var firstUser = getUser.FirstOrDefault(); if (firstUser != null) { Model.SpSysUserItem userItem = new Model.SpSysUserItem { UserId = firstUser.UserId, UserName = firstUser.UserName, Account = firstUser.Account, Password = firstUser.Password, }; FormsAuthentication.SetAuthCookie(account, false); page.Session[SessionName.CurrUser] = userItem; if (rememberMe) { System.Web.HttpCookie u = new System.Web.HttpCookie("UserInfo"); u["username"] = account; u["password"] = password; // Cookies过期时间设置为一年. u.Expires = DateTime.Now.AddYears(1); page.Response.Cookies.Add(u); } else { // 当选择不保存用户名时,Cookies过期时间设置为昨天. page.Response.Cookies["UserInfo"].Expires = DateTime.Now.AddDays(-1); } return(true); } else { return(false); } }