feat: add payment card grouping and analysis

This commit is contained in:
JiWoong Sul
2025-11-14 16:53:41 +09:00
parent cba7d082bd
commit 132ae758de
40 changed files with 2846 additions and 522 deletions

View File

@@ -4,6 +4,7 @@ import 'package:provider/provider.dart';
import 'package:intl/intl.dart';
import '../providers/subscription_provider.dart';
import '../providers/category_provider.dart';
import '../providers/payment_card_provider.dart';
import '../services/sms_service.dart';
import '../services/subscription_url_matcher.dart';
import '../widgets/common/snackbar/app_snackbar.dart';
@@ -31,6 +32,7 @@ class AddSubscriptionController {
DateTime? nextBillingDate;
bool isLoading = false;
String? selectedCategoryId;
String? selectedPaymentCardId;
// Event State
bool isEventActive = false;
@@ -126,6 +128,13 @@ class AddSubscriptionController {
// Localizations가 아직 준비되지 않은 경우 기본값 유지
}
// 기본 결제수단 설정
try {
final paymentCardProvider =
Provider.of<PaymentCardProvider>(context, listen: false);
selectedPaymentCardId = paymentCardProvider.defaultCard?.id;
} catch (_) {}
// 애니메이션 시작
animationController!.forward();
}
@@ -503,6 +512,7 @@ class AddSubscriptionController {
nextBillingDate: adjustedNext,
websiteUrl: websiteUrlController.text.trim(),
categoryId: selectedCategoryId,
paymentCardId: selectedPaymentCardId,
currency: currency,
isEventActive: isEventActive,
eventStartDate: eventStartDate,