/// <summary> /// 获取用户信息 /// </summary> /// <param name="user">用户对象</param> /// <returns></returns> private static UserInfo GetUserInfo(Sys_User user) { if (user == null || string.IsNullOrEmpty(user.UserName)) { return(null); } UserInfo userInfo = new UserInfo() { UserId = user.Id, UserName = user.UserName, AliasName = string.IsNullOrEmpty(user.AliasName) ? user.UserName : user.AliasName, OrganizationId = user.Sys_OrganizationId }; //员工信息 OrgM_Emp emp = OrgMOperate.GetEmpByUserName(user.UserName); if (emp != null) { userInfo.EmpId = emp.Id; userInfo.EmpCode = emp.Code; userInfo.EmpName = emp.Name; } userInfo.ExtendUserObject = UserExtendEventHandler.GetUserExtendInfo(userInfo); return(userInfo); }
/// <summary> /// 获取超级管理员用户信息 /// </summary> /// <returns></returns> public static UserInfo GetSuperAdmin() { if (_adminUser != null) { return(_adminUser); } string errMsg = string.Empty; Sys_User user = CommonOperate.GetEntity <Sys_User>(x => x.UserName == "admin", null, out errMsg); if (user == null) { user = new Sys_User() { Id = Guid.Empty, UserName = null, AliasName = null } } ; UserInfo userInfo = new UserInfo() { UserId = user.Id, UserName = user.UserName, AliasName = string.IsNullOrEmpty(user.AliasName) ? user.UserName : user.AliasName, EmpId = Guid.Empty, EmpName = "系统管理员" }; OrgM_Emp emp = OrgMOperate.GetEmpByUserName(user.UserName); if (emp != null) { userInfo.EmpId = emp.Id; userInfo.EmpCode = emp.Code; userInfo.EmpName = emp.Name; } _adminUser = userInfo; return(_adminUser); }
public JsonResult UserForgetPwd(string username) { string userTipDes = "用户名"; if (GlobalSet.EmpUserNameConfigRule == UserNameAndEmpConfigRule.Email) { userTipDes = "邮箱"; } else if (GlobalSet.EmpUserNameConfigRule == UserNameAndEmpConfigRule.Mobile) { userTipDes = "手机号"; } if (string.IsNullOrEmpty(username)) { return(Json(new ReturnResult() { Success = false, Message = string.Format("{0}不能为空!", userTipDes) })); } if (GlobalSet.EmpUserNameConfigRule == UserNameAndEmpConfigRule.Email && !Validator.IsEmail(username)) { return(Json(new ReturnResult() { Success = false, Message = "请输入正确的邮箱地址!" })); } if (GlobalSet.EmpUserNameConfigRule == UserNameAndEmpConfigRule.Mobile && !Validator.IsMobilePhoneNumber(username)) { return(Json(new ReturnResult() { Success = false, Message = "请输入正确的手机号码!" })); } string errMsg = string.Empty; bool rs = UserOperate.UserIsValid(username, out errMsg); if (!rs) { return(Json(new ReturnResult() { Success = false, Message = errMsg })); } string email = username; if (GlobalSet.EmpUserNameConfigRule != UserNameAndEmpConfigRule.Email) { OrgM_Emp emp = OrgMOperate.GetEmpByUserName(username); if (emp != null) { email = OrgMOperate.GetEmployeeEmails(new List <Guid>() { emp.Id }).Keys.FirstOrDefault(); } } if (!email.Contains("@")) { return(Json(new ReturnResult() { Success = false, Message = "获取用户邮箱失败!" })); } Dictionary <string, string> dicMail = new Dictionary <string, string>(); dicMail.Add(email, email); string subject = string.Format("重置您在{0}的密码", WebConfigHelper.GetCurrWebName()); Sys_User user = UserOperate.GetUser(username); string content = GetForgetPwdSendContent(user); errMsg = SystemOperate.EmailSend(subject, content, dicMail, null, null, null, true); return(Json(new ReturnResult() { Success = string.IsNullOrEmpty(errMsg), Message = errMsg })); }
/// <summary> /// 获取用户名 /// </summary> /// <param name="username">用户名或工号或邮箱或手机号</param> /// <returns></returns> private string GetUserName(string username) { string tempUserName = username.Trim(); string errMsg = string.Empty; if (GlobalSet.IsAllowOtherConfigRuleLogin) //允许其他方式登录 { //先检测默认登录规则账号是否存在 bool rs = UserOperate.UserIsValid(tempUserName, out errMsg); if (rs) { return(tempUserName); } //默认登录规则账号不存在时检测其他方式 OrgM_Emp emp = null; switch (GlobalSet.EmpUserNameConfigRule) { case UserNameAndEmpConfigRule.EmpCode: { emp = OrgMOperate.GetEmpByMobile(tempUserName); //根据手机号获取员工 if (emp == null) { emp = OrgMOperate.GetEmpByEmail(tempUserName); //根据邮箱获取员工 if (emp == null) { emp = OrgMOperate.GetEmpByEmailPrex(tempUserName); //根据邮箱前缀获取员工 } } } break; case UserNameAndEmpConfigRule.Mobile: { emp = OrgMOperate.GetEmpByCode(tempUserName); //根据工号获取员工 if (emp == null) { emp = OrgMOperate.GetEmpByEmail(tempUserName); //根据邮箱获取员工 if (emp == null) { emp = OrgMOperate.GetEmpByEmailPrex(tempUserName); //根据邮箱前缀获取员工 } } } break; case UserNameAndEmpConfigRule.Email: { emp = OrgMOperate.GetEmpByCode(tempUserName); //根据工号获取员工 if (emp == null) { emp = OrgMOperate.GetEmpByMobile(tempUserName); //根据手机号获取员工 if (emp == null) { emp = OrgMOperate.GetEmpByEmailPrex(tempUserName); //根据邮箱前缀获取员工 } } } break; case UserNameAndEmpConfigRule.EmailPre: { emp = OrgMOperate.GetEmpByCode(tempUserName); //根据工号获取员工 if (emp == null) { emp = OrgMOperate.GetEmpByMobile(tempUserName); //根据手机号获取员工 if (emp == null) { emp = OrgMOperate.GetEmpByEmail(tempUserName); //根据邮箱获取员工 } } } break; } if (emp != null) { return(OrgMOperate.GetUserNameByEmp(emp)); } } return(tempUserName); }