public async Task <UserProfile> CreateMemberUserProfile(MemberSignupRequest model, int userId, string fileName, int RoleId) { var now = DateTime.UtcNow; UserProfile userProfile = new UserProfile { ProfileId = 0, ProfileGuid = System.Guid.NewGuid(), UserId = userId, //FirstName = model.FirstName, //LastName = model.LastName, //Email = model.Email, ProfilePhoto = fileName, Gender = null, City = null, State = null, Country = null, ZipCode = null, //Specialities = null, Qualification = null, Education = null, IsFeature = null, Ranked = null, BriefBio = null, InstagramProfile = null, LinkedInProfile = null, FaceBookProfile = null, ContactNo1 = null, ContactNo2 = null, //AcceptedDate = null, //AcceptedBy = null, CreatedDate = now, ModifiedDate = null, CreatedBy = userId, ModifiedBy = null, IsActive = false, PractitionerSince = null, Description = null, Language = null, IsDeleted = false, PublicProfile = true }; try { await this.authRepo.CreateUserProfileAsync(userProfile); } catch (Exception ex) { throw ex; } return(userProfile); }
public async Task <User> CreateMemberUser(MemberSignupRequest model, string filename, int RoleId, HttpContext context) { int userId = 0; User createMember = null; var now = DateTime.UtcNow; var guid = System.Guid.NewGuid(); //bool userNameExist = await this.authRepo.CheckUserNameExist(model.UserName); //if (userNameExist) // return -1; var user = new Users { UserId = 0, UserGuid = guid, //UserName = model.UserName, //UserPassword = model.UserPassword, IsActive = true, IsBlocked = false, LastLogin = null, CreatedDate = now, CreatedBy = null, ModifiedDate = null, ModifiedBy = null, IsDeleted = false, }; UserProfile userProfile = new UserProfile { ProfileId = 0, ProfileGuid = System.Guid.NewGuid(), UserId = userId, //FirstName = model.FirstName, //LastName = model.LastName, //Email = model.Email, ProfilePhoto = filename, Gender = null, City = null, State = null, Country = null, ZipCode = null, //Specialities = null, Qualification = null, Education = null, IsFeature = null, Ranked = null, BriefBio = null, InstagramProfile = null, LinkedInProfile = null, FaceBookProfile = null, ContactNo1 = null, ContactNo2 = null, //AcceptedDate = null, //AcceptedBy = null, CreatedDate = now, ModifiedDate = null, CreatedBy = userId, ModifiedBy = null, IsActive = true, PractitionerSince = null, Description = null, Language = null, IsDeleted = false, PublicProfile = true, IsDeactivated = false }; UserInfo userInfo = new UserInfo() { UserName = model.UserName, Password = model.UserPassword, FirstName = model.FirstName, LastName = model.LastName, Email = model.Email, }; try { createMember = await this.authRepo.CreateUserAsync(user, userProfile, filename, userInfo, RoleId, "", null, null, 0, 0); if (createMember != null && createMember.UserId > 0) { await this.commonEmailsService.SendWelcomeEmailToMember(model.Email, context); } } catch (Exception ex) { throw ex; } return(createMember); }
public async Task <IActionResult> MemberSignUp([FromForm] MemberSignupRequest signup) { JsonResponse <User> objResult = new JsonResponse <User>(); if (signup != null) { try { HttpContext context = HttpContext; if (!ModelState.IsValid) { return(BadRequest(ModelState)); } string fileName = null; bool matched = await this.authService.MatchSecretKey(signup.SecretKey); if (!matched) { objResult.Data = null; objResult.Status = StaticResource.UnauthorizedStatusCode; objResult.Message = StaticResource.UnauthorizedMessage; return(new OkObjectResult(objResult)); } if (signup.ProfileImage != null) { if (string.IsNullOrWhiteSpace(this._env.WebRootPath)) { this._env.WebRootPath = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot"); } string uploadsFolder = Path.Combine(this._env.WebRootPath, "images"); fileName = await this.authService.UploadedFile(signup.ProfileImage, uploadsFolder); } var user = await this.authService.CreateMemberUser(signup, fileName, Convert.ToInt32(RolesEnum.Member), context); switch (user.Status) { case 1: if (signup.PlanId != null) { bool saved = await this.authService.SaveMemberShipPlan(signup.PlanId, user.UserId); } objResult.Data = null; objResult.Status = StaticResource.SuccessStatusCode; objResult.Message = StaticResource.SuccessMessage; break; case 5: objResult.Data = null; objResult.Status = StaticResource.DuplicateStatusCode; objResult.Message = StaticResource.EmailExist; break; case 6: objResult.Data = null; objResult.Status = StaticResource.DuplicateStatusCode; objResult.Message = StaticResource.UsernameExist; break; default: objResult.Data = null; objResult.Status = StaticResource.NotFoundStatusCode; objResult.Message = StaticResource.NotFoundMessage; break; } } catch (Exception ex) { HttpContext.RiseError(ex); objResult.Data = null; objResult.Status = StaticResource.FailStatusCode; objResult.Message = StaticResource.FailMessage; } } else { objResult.Data = null; objResult.Status = StaticResource.FailStatusCode; objResult.Message = StaticResource.InvalidMessage; } return(new OkObjectResult(objResult)); }