private async Task GetCouponDiscountCalculations( double price, double supportPrice, CurrencyDto contentItemCurrency, CurrencyDto currentCurrency, ParseUser teacher, CreateCouponViewModel cuponViewModel) { cuponViewModel.TeacherData.TeacherId = teacher.ObjectId; cuponViewModel.TeacherData.TeacherFullName = teacher.GetFullName(Language.CurrentLanguageCode); var priceIncludingSupport = CurrencyConverter.Convert(price + supportPrice, contentItemCurrency, currentCurrency); price = CurrencyConverter.Convert(price, contentItemCurrency, currentCurrency); await GetTeacherCommission(cuponViewModel); var teacherCommissionAmount = price * cuponViewModel.TeacherData.TeacherCommissionRate; var teacherCommissionAmountWithSupport = priceIncludingSupport * cuponViewModel.TeacherData.TeacherCommissionRate; cuponViewModel.ContentItemDetails.OriginalPrice = price; cuponViewModel.ContentItemDetails.PriceIncludignSupport = priceIncludingSupport; cuponViewModel.ContentItemDetails.FormattedOriginalPrice = price.ToCurrency(currentCurrency); cuponViewModel.ContentItemDetails.FormattedSupportPrice = priceIncludingSupport.ToCurrency(currentCurrency); cuponViewModel.ContentItemDetails.Currency = contentItemCurrency; cuponViewModel.TeacherData.TeacherDiscountPrice = price - teacherCommissionAmount; cuponViewModel.TeacherData.TeacherDiscountPriceWithSupport = priceIncludingSupport - teacherCommissionAmountWithSupport; cuponViewModel.TeacherData.FormattedTeacherDiscountPrice = (price - teacherCommissionAmount).ToCurrency(currentCurrency); cuponViewModel.TeacherData.FormattedTeacherDiscountPriceWithSupport = (priceIncludingSupport - teacherCommissionAmountWithSupport).ToCurrency(currentCurrency); }