예제 #1
0
        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));
        }
예제 #2
0
 /// <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
     });
 }
예제 #3
0
        /// <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));
        }