Esempio n. 1
0
        public async Task <ActionResult> Post([FromBody] CreateUserAccountDto createUserAccountDto)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            try
            {
                var userAccount = await _userAccountService.CreateUserAccountAsync(createUserAccountDto);

                if (createUserAccountDto.UserAccountExists)
                {
                    return(BadRequest(string.Format(UserAccountFound, createUserAccountDto.UserId)));
                }
                if (createUserAccountDto.UserNotFound)
                {
                    return(NotFound(string.Format(UserNotFound, createUserAccountDto.UserId)));
                }
                if (createUserAccountDto.MinSavingsAmountNotMet)
                {
                    return(BadRequest(string.Format(MinSavingsAmountNotMetRequestMessage)));
                }
                if (!createUserAccountDto.Created)
                {
                    return(BadRequest(string.Format(UserAccountSaveFailRequestMessage, createUserAccountDto.UserId)));
                }

                return(Created(new Uri(Request.GetDisplayUrl() + "/" + userAccount.Id), userAccount));
            }
            catch (Exception ex)
            {
                return(BadRequest(string.Format(UserAccountSaveFailRequestMessage, createUserAccountDto.UserId)));
            }
        }