public async Task <IHttpActionResult> RegisterParent(ParentRegistrationDto userModel) { var userData = IdentityHelper.GetLoggedInUser(RequestContext); logger.Info("Register Parent {@parentReg} by {@userData}", userModel, userData); var result = await service.RegisterParent(userModel); logger.Info("Created Parent {@userId}", result.ParentId); return(CreatedAtRoute("GetParentById", new { parentId = result.ParentId }, result)); }
/// <summary> /// Registration dto to full entity /// </summary> /// <param name="dto"></param> /// <returns></returns> public static ParentUser ParentRegistrationDtoToParent(ParentRegistrationDto dto) { return(new ParentUser() { UserName = dto.UserName, FirstName = dto.FirstName, LastName = dto.LastName, Gender = dto.Gender, Email = dto.Email, PhoneNumber = dto.PhoneNumber }); }
/// <summary> /// Register a parent /// </summary> /// <param name="userModel"></param> /// <returns></returns> public async Task <ParentDto> RegisterParent(ParentRegistrationDto userModel) { ParentUser user = ParentsConverter.ParentRegistrationDtoToParent(userModel); var result = await db.AuthRepository.RegisterParentUser(user, userModel.Password); if (!result.Succeeded) { var ex = new UserRegistrationException(result.Errors.ToArray()); ex.Data.Add("IdentityResultErrors", result.Errors.ToArray()); throw ex; } user = await db.AuthRepository.FindUserByUserName(userModel.UserName) as ParentUser; return(ParentsConverter.ParentToParentDto(user)); }