feat(ui): 결제 금액 UI 표시 적용
This commit is contained in:
@@ -7,6 +7,7 @@ import '../providers/locale_provider.dart';
|
||||
import '../services/subscription_url_matcher.dart';
|
||||
import '../services/currency_util.dart';
|
||||
import '../utils/billing_date_util.dart';
|
||||
import '../utils/billing_cost_util.dart';
|
||||
import '../utils/payment_card_utils.dart';
|
||||
import 'website_icon.dart';
|
||||
import 'app_navigator.dart';
|
||||
@@ -272,25 +273,41 @@ class _SubscriptionCardState extends State<SubscriptionCard>
|
||||
}
|
||||
}
|
||||
|
||||
// 가격 포맷팅 함수 (언어별 통화)
|
||||
// 가격 포맷팅 함수 (언어별 통화) - 실제 결제 금액 표시
|
||||
Future<String> _getFormattedPrice() async {
|
||||
final locale = context.read<LocaleProvider>().locale.languageCode;
|
||||
final billingCycle = widget.subscription.billingCycle;
|
||||
|
||||
if (widget.subscription.isCurrentlyInEvent) {
|
||||
// 이벤트 중인 경우 원래 가격과 현재 가격 모두 표시
|
||||
final originalPrice = await CurrencyUtil.formatAmountWithLocale(
|
||||
// 이벤트 중인 경우: 월 비용을 실제 결제 금액으로 역변환
|
||||
final actualOriginalPrice = BillingCostUtil.convertFromMonthlyCost(
|
||||
widget.subscription.monthlyCost,
|
||||
billingCycle,
|
||||
);
|
||||
final actualCurrentPrice = BillingCostUtil.convertFromMonthlyCost(
|
||||
widget.subscription.currentPrice,
|
||||
billingCycle,
|
||||
);
|
||||
|
||||
final originalPrice = await CurrencyUtil.formatAmountWithLocale(
|
||||
actualOriginalPrice,
|
||||
widget.subscription.currency,
|
||||
locale,
|
||||
);
|
||||
final currentPrice = await CurrencyUtil.formatAmountWithLocale(
|
||||
widget.subscription.currentPrice,
|
||||
actualCurrentPrice,
|
||||
widget.subscription.currency,
|
||||
locale,
|
||||
);
|
||||
return '$originalPrice|$currentPrice';
|
||||
} else {
|
||||
return CurrencyUtil.formatAmountWithLocale(
|
||||
// 월 비용을 실제 결제 금액으로 역변환 (연간이면 x12, 분기면 x3 등)
|
||||
final actualPrice = BillingCostUtil.convertFromMonthlyCost(
|
||||
widget.subscription.currentPrice,
|
||||
billingCycle,
|
||||
);
|
||||
return CurrencyUtil.formatAmountWithLocale(
|
||||
actualPrice,
|
||||
widget.subscription.currency,
|
||||
locale,
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user