1
0
mirror of https://github.com/bitwarden/server.git synced 2025-07-02 00:22:50 -05:00

payment intent/method support for incomplete status

This commit is contained in:
Kyle Spearrin
2019-08-09 23:56:26 -04:00
parent efcf626999
commit 00e808d731
10 changed files with 173 additions and 39 deletions

View File

@ -443,7 +443,7 @@ namespace Bit.Api.Controllers
}
[HttpPost("premium")]
public async Task<ProfileResponseModel> PostPremium(PremiumRequestModel model)
public async Task<PaymentResponseModel> PostPremium(PremiumRequestModel model)
{
var user = await _userService.GetUserByPrincipalAsync(User);
if(user == null)
@ -463,9 +463,15 @@ namespace Bit.Api.Controllers
throw new BadRequestException("Invalid license.");
}
await _userService.SignUpPremiumAsync(user, model.PaymentToken, model.PaymentMethodType.Value,
model.AdditionalStorageGb.GetValueOrDefault(0), license);
return new ProfileResponseModel(user, null, await _userService.TwoFactorIsEnabledAsync(user));
var result = await _userService.SignUpPremiumAsync(user, model.PaymentToken,
model.PaymentMethodType.Value, model.AdditionalStorageGb.GetValueOrDefault(0), license);
var profile = new ProfileResponseModel(user, null, await _userService.TwoFactorIsEnabledAsync(user));
return new PaymentResponseModel
{
UserProfile = profile,
PaymentIntentClientSecret = result.Item2,
Success = result.Item1
};
}
[HttpGet("billing")]