feat(reward): 新增客户端奖励中心

This commit is contained in:
Zhou Weidong committed 2026-11-13 13:43:38 +08:00
1 parent 67670d46b1
commit bea08110c9
68 files changed
+3987 -332

No files matched your search

+15
View File
@@ -21,6 +21,7 @@ import 'core/data/remote/interaction_api.dart';
import 'core/data/remote/library_api.dart';
import 'core/data/remote/notice_api.dart';
import 'core/data/remote/playback_api.dart';
import 'core/data/remote/reward_api.dart';
import 'core/data/remote/watch_api.dart';
import 'core/data/repositories/catalog_repository.dart';
import 'core/data/repositories/account_repository.dart';
@@ -33,6 +34,7 @@ import 'core/data/repositories/interaction_repository.dart';
import 'core/data/repositories/notice_repository.dart';
import 'core/data/repositories/playback_repository.dart';
import 'core/data/repositories/playlist_repository.dart';
import 'core/data/repositories/reward_repository.dart';
import 'core/data/repositories/search_repository.dart';
import 'core/data/repositories/store_repository.dart';
import 'core/data/repositories/watch_history_repository.dart';
@@ -49,6 +51,7 @@ import 'core/data/services/playlist_controller.dart';
import 'core/data/services/event_tracker.dart';
import 'core/data/services/playback_position_cache.dart';
import 'core/data/services/playback_session.dart';
import 'core/data/services/reward_controller.dart';
import 'core/data/services/unlocked_episode_registry.dart';
import 'core/data/services/video_player_port.dart';
import 'core/data/services/wallet_controller.dart';
@@ -90,6 +93,7 @@ class LumaDramaApp extends StatefulWidget {
this.storeRepository,
this.searchRepository,
this.playlistRepository,
this.rewardRepository,
this.haptics = const FlutterHaptics(),
});
@@ -111,6 +115,7 @@ class LumaDramaApp extends StatefulWidget {
final StoreRepository? storeRepository;
final SearchRepository? searchRepository;
final PlaylistRepository? playlistRepository;
final RewardRepository? rewardRepository;
final Haptics haptics;
@override
@@ -179,6 +184,13 @@ class _LumaDramaAppState extends State<LumaDramaApp> {
_commerceRepository,
);
late final RewardRepository _rewardRepository =
widget.rewardRepository ?? HttpRewardRepository(RewardApi(_apiClient));
late final RewardController _rewardController = RewardController(
_rewardRepository,
);
late final SearchRepository _searchRepository =
widget.searchRepository ?? HttpSearchRepository(CatalogApi(_apiClient));
@@ -249,6 +261,7 @@ class _LumaDramaAppState extends State<LumaDramaApp> {
unawaited(_favoriteController.load());
_downloadController.reset();
_walletController.reset();
_rewardController.reset();
}
}
@@ -258,6 +271,7 @@ class _LumaDramaAppState extends State<LumaDramaApp> {
_favoriteController.dispose();
_downloadController.dispose();
_walletController.dispose();
_rewardController.dispose();
_interactionController.dispose();
_localeController.dispose();
_appConfigController.dispose();
@@ -313,6 +327,7 @@ class _LumaDramaAppState extends State<LumaDramaApp> {
ChangeNotifierProvider.value(value: _favoriteController),
ChangeNotifierProvider.value(value: _downloadController),
ChangeNotifierProvider.value(value: _walletController),
ChangeNotifierProvider.value(value: _rewardController),
ChangeNotifierProvider.value(value: _interactionController),
ChangeNotifierProvider.value(value: _localeController),
ChangeNotifierProvider.value(value: _appConfigController),