public async Task <IdentityResult> RegisterUser(RegisterViewModel userModel, string registerType, bool isDeviceActived) { ApplicationUser user = new ApplicationUser { UserName = userModel.UserName, Email = userModel.Email, EmailConfirmed = isDeviceActived, JoinDate = DateTime.Now.ToUniversalTime(), LastModified = DateTime.Now.ToUniversalTime(), IsActived = false }; var result = await _userManager.CreateAsync(user, userModel.Password); if (result.Succeeded) { TTX.Data.TTX_UserInfo info = new TTX.Data.TTX_UserInfo() { UserId = user.Id, WeiboId = userModel.WeiboId, FacebookId = userModel.FacebookId, Culture = userModel.Culture, RegisterType = registerType }; TTXUserInfoDAL.Instance.SaveModel(info); //string err = ""; string responseKey = "NewUser"; if (!string.IsNullOrEmpty(user.Email) && registerType != "Weibo" && registerType != "Facebook") { SendEmailActive(user.Id, user.Email, info.NickName, device.ActiveCode, responseKey); } } return(result); }
public UserViewModel CreateUserViewModel(ApplicationUser appUser, UserDevice device, string strCulture) { TTX.Data.TTX_UserInfo info = TTXUserInfoDAL.Instance.GetSingleModel(u => u.UserId == appUser.Id); if (info == null) { info = new TTX.Data.TTX_UserInfo() { Culture = strCulture, InviteCode = Guid.NewGuid().ToString("N"), UserId = appUser.Id }; TTXUserInfoDAL.Instance.SaveModel(info); } return(new UserViewModel(info, appUser, _userManager.GetRolesAsync(appUser.Id).Result.ToList(), strCulture)); }
public UserViewModel CreateUserViewModel(ApplicationUser appUser, string strCulture) { var info = TTXUserInfoDAL.Instance.GetSingleModel(u => u.UserId == appUser.Id); if (info == null) { info = new TTX.Data.TTX_UserInfo() { InviteCode = Guid.NewGuid().ToString("N"), Culture = strCulture, UserId = appUser.Id }; TTXUserInfoDAL.Instance.SaveModel(info); } return(new UserViewModel(info, appUser, _userManager.GetRolesAsync(appUser.Id).Result.ToList(), strCulture)); //{ // //Url = _UrlHelper.Link("GetUserById", new { id = appUser.Id }), // Id = appUser.Id, // IsActived = appUser.IsActived, // IsSetPassword = appUser.IsSetPassword, // ELO = info.ELO, // NickName = info.NickName, // Gender = info.Gender, // DOB = info.DOB.HasValue ? info.DOB.Value.ToString("yyyy-MM-dd") : null, // AgeGroup = info.AgeGroup, // CountryId = info.CountryId, // Country = country, // Avatar = string.IsNullOrWhiteSpace(info.Avatar) ? null : string.Format("{0}{1}", CommonHelper.CurrentDomain, info.Avatar), // Email = appUser.Email, // EmailConfirmed = appUser.EmailConfirmed, // //Level = appUser.Level, // JoinDate = appUser.JoinDate, // LastActiveDate = info.LastActiveDate, // //Roles = _userManager.GetRolesAsync(appUser.Id).Result.ToList(), // RoleNames = _userManager.GetRolesAsync(appUser.Id).Result.ToList(), // //Claims = _AppUserManager.GetClaimsAsync(appUser.Id).Result.ToList(), // Devices = appUser.Devices, //}; }
public UserViewModel CreateBackendUserViewModel(ApplicationUser appUser, List <IdentityRole> lstRole) { string strCulture = CommonHelper.AppConfig(TTXConstants.AppConfig.DefaultCulture.ToString()); var info = TTXUserInfoDAL.Instance.GetSingleModel(u => u.UserId == appUser.Id); List <RoleViewModel> lstVMRole = new List <RoleViewModel>(); foreach (var role in lstRole) { var vmRole = new RoleViewModel() { Id = role.Id, Name = role.Name, IsUserInRole = role.Users.FirstOrDefault(u => u.UserId == appUser.Id) != null }; lstVMRole.Add(vmRole); } CountryViewModel country = null; if (info != null) { country = new CountryViewModel(TTXCountryDAL.Instance.GetSingleModel(c => c.Id == info.CountryId)); } else { info = new TTX.Data.TTX_UserInfo() { InviteCode = Guid.NewGuid().ToString("N"), UserId = appUser.Id }; TTXUserInfoDAL.Instance.SaveModel(info); } return(new UserViewModel(info, appUser, lstVMRole, strCulture)); //{ // //Url = _UrlHelper.Link("GetUserById", new { id = appUser.Id }), // Id = appUser.Id, // IsActived = appUser.IsActived, // IsSetPassword = appUser.IsSetPassword, // //NickName = appUser.UserInfo.NickName, // //FirstName = appUser.UserInfo.FirstName, // //LastName = appUser.UserInfo.LastName, // //FullName = string.Format("{0} {1}", appUser.UserInfo.FirstName, appUser.UserInfo.LastName), // //Avatar = string.IsNullOrWhiteSpace(appUser.UserInfo.Avatar) ? "" : string.Format("{0}{1}", CommonHelper.CurrentDomain, appUser.UserInfo.Avatar), // ELO = info.ELO, // NickName = info.NickName, // Gender = info.Gender, // DOB = info.DOB.HasValue ? info.DOB.Value.ToString("yyyy-MM-dd") : null, // AgeGroup = info.AgeGroup, // CountryId = info.CountryId, // Country = country, // Avatar = string.IsNullOrWhiteSpace(info.Avatar) ? null : string.Format("{0}{1}", CommonHelper.CurrentDomain, info.Avatar), // Email = appUser.Email, // EmailConfirmed = appUser.EmailConfirmed, // //Level = appUser.Level, // JoinDate = appUser.JoinDate, // LastActiveDate = info.LastActiveDate.HasValue ? info.LastActiveDate.Value.ToLocalTime() : info.LastActiveDate, // Roles = lstVMRole, // RoleNames = _userManager.GetRolesAsync(appUser.Id).Result.ToList(), // //Claims = _AppUserManager.GetClaimsAsync(appUser.Id).Result.ToList(), // Devices = appUser.Devices, //}; }
public async Task <ApiResult <UserViewModel> > UpdateUser(UpdateUserModel userModel, AuthData authData) { ApiResult <UserViewModel> result = null; int status = 0; string errorMsg = string.Empty; string responseKey = string.Empty; string message = string.Empty; var user = _userManager.FindById(userModel.UserId); UserViewModel vmUser = null; switch (userModel.FieldType.ToLower()) { case "username": if (userModel.Value.Length > 12) { responseKey = "InvalidUserName"; message = GlobalConfigurations.Instance.GetConfigValue("ErrorMessages", "InvalidUserName"); } else { //var userByName = UserInfoDAL.Instance.GetSingleModel(u => u.NickName == userModel.Value); var userByName = TTXUserInfoDAL.Instance.GetSingleModel(u => u.NickName == userModel.Value); if (userByName == null) { //user.UserInfo.NickName = userModel.Value; userByName = new TTX.Data.TTX_UserInfo() { UserId = user.Id, NickName = userModel.Value }; status = TTXUserInfoDAL.Instance.SaveModel(userByName) != null ? 1 : 0; user.IsActived = status == 1; } else { responseKey = "UserNameExisted"; message = string.Format(GlobalConfigurations.Instance.GetConfigValue("ErrorMessages", "UserNameExisted"), userModel.Value); } } break; case "email": var userByEmail = await _userManager.FindByEmailAsync(userModel.Value); if (userByEmail == null) { status = 1; user.Email = userModel.Value; } else { responseKey = "EmailExisted"; message = GlobalConfigurations.Instance.GetConfigValue("ErrorMessages", "EmailExisted"); } break; case "avatar": Image imgAvatar = CommonHelper.LoadImage(userModel.Value); if (imgAvatar != null) { string filePath = GetUserFilePath(userModel.UserId); string fileName = CommonHelper.UploadPhoto(filePath, imgAvatar); if (!string.IsNullOrEmpty(fileName)) { var info = TTXUserInfoDAL.Instance.GetSingleModel(u => u.UserId == userModel.UserId); if (!string.IsNullOrEmpty(info.Avatar)) { CommonHelper.RemoveFile(info.Avatar); } info.Avatar = string.Format("{0}/{1}", filePath, fileName); TTXUserInfoDAL.Instance.SaveModel(info); status = 1; message = GlobalConfigurations.Instance.GetConfigValue("AlertMessages", "UpdateAvatarSucceed"); info.Avatar = string.Format("{0}/{1}", filePath, fileName); } } else { responseKey = "InvalidImage"; } break; case "dob": var dobInfo = TTXUserInfoDAL.Instance.GetSingleModel(u => u.UserId == userModel.UserId); dobInfo.AgeGroup = CommonHelper.GetAgeGroup(userModel.DOB); TTXUserInfoDAL.Instance.SaveModel(dobInfo); status = 1; message = GlobalConfigurations.Instance.GetConfigValue("AlertMessages", "UpdateDOBSucceed"); break; } AccessTokenViewModel auth = null; if (status == 1) { var updResult = _userManager.Update(user); status = updResult.Succeeded ? 1 : 0; responseKey = updResult.Succeeded ? "Succeed" : "Unknown"; var token = GetNewAccessToken(authData.RefreshToken); if (token != null && !string.IsNullOrWhiteSpace(token.AccessToken)) { //user = FindUserById(token.UserId); auth = new AccessTokenViewModel() { access_token = token.TokenType + " " + token.AccessToken, token_type = token.TokenType, refresh_token = token.RefreshToken, expires_in = token.ExpiresIn, client_id = token.ClientId, issued = token.Issued.ToLocalTime().ToString("dd-MM-yyyy hh:mm:ss"), expires = token.Expires.ToLocalTime().ToString("dd-MM-yyyy hh:mm:ss"), userData = CreateUserViewModel(user, null) }; } vmUser = CreateUserViewModel(user, null); } result = new ApiResult <UserViewModel>() { status = status, responseKey = responseKey, data = vmUser, authData = auth, error = errorMsg, message = !string.IsNullOrEmpty(message) ? message : responseKey }; return(result); }