public async Task ProcessCryptoFailed(CryptoPaymentInfo cryptoPaymentInfo) { var client = new HttpClient(); var result = await client.PostAsJsonAsync($"{_configuration["Service:CryptoPayment:VerifyApiValidationToken"]}", cryptoPaymentInfo); if (result.IsSuccessStatusCode) { } }
public async Task ProcessCryptoAdSuccess(CryptoPaymentInfo cryptoPaymentInfo) { var client = new HttpClient(); var result = await client.PostAsJsonAsync($"{_configuration["Service:CryptoPayment:VerifyApiValidationToken"]}", cryptoPaymentInfo); if (result.IsSuccessStatusCode) { var payment = await _functionalUnitOfWork.PaymentRepository.FirstOrDefault(a => a.OrderNumber == cryptoPaymentInfo.OrderNumber); payment.IsValidated = true; payment.ValidatedDate = DateTime.Now; payment.OrderNumber = cryptoPaymentInfo.OrderNumber; payment.TokenId = cryptoPaymentInfo.Token; } }
public async Task ProcessCryptoSubSuccess(CryptoPaymentInfo cryptoPaymentInfo) { var client = new HttpClient(); var result = await client.PostAsJsonAsync($"{_configuration["Service:CryptoPayment:VerifyApiValidationToken"]}", cryptoPaymentInfo); if (result.IsSuccessStatusCode) { var payment = await _functionalUnitOfWork.PaymentRepository.FirstOrDefault(a => a.OrderNumber == cryptoPaymentInfo.OrderNumber); var subscription = await _functionalUnitOfWork.SubscriptionPackRepository.FirstOrDefault(x => x.Id == payment.SubscriptionId.Value); payment.IsValidated = true; payment.ValidatedDate = DateTime.Now; payment.OrderNumber = cryptoPaymentInfo.OrderNumber; payment.TokenId = cryptoPaymentInfo.Token; SubscriptionHistory subHisto = new SubscriptionHistory(); subHisto.Created = DateTime.Now; subHisto.EndSubscription = DateTime.Now.AddMonths(subscription.Duration); subHisto.Enable = true; subHisto.UserId = Guid.Parse(payment.UserId); subHisto.SubscriptionPackId = payment.SubscriptionId.Value; await _functionalUnitOfWork.SubscriptionHistoryRepository.Add(subHisto); var user = await _userManager.FindByIdAsync(payment.UserId); user.SubscriptionStartDate = user.SubscriptionStartDate.HasValue ? user.SubscriptionStartDate : subHisto.Created; if (user.SubscriptionEndDate.HasValue) { if (user.SubscriptionEndDate.Value < DateTime.Now) { user.SubscriptionEndDate = DateTime.Now.AddMonths(subscription.Duration); } else { user.SubscriptionEndDate = user.SubscriptionEndDate.Value.AddMonths(subscription.Duration); } } else { user.SubscriptionEndDate = subHisto.EndSubscription; } await _userManager.UpdateAsync(user); } }