import '../../core/constants/api_endpoints.dart'; import '../../core/network/api_response.dart'; import '../../core/network/dio_client.dart'; /// 福利中心服務 class BonusService { final DioClient _client; BonusService(this._client); /// 獲取福利中心狀態 Future>> getWelfareStatus() async { final response = await _client.get>( ApiEndpoints.bonusWelfare, ); if (response.success && response.data != null) { return ApiResponse.success(response.data!, response.message); } return ApiResponse.fail(response.message ?? '獲取福利狀態失敗'); } /// 領取首充福利 Future>> claimNewUserBonus() async { return _client.post>( ApiEndpoints.bonusClaim, data: {'type': 'new_user'}, ); } /// 領取推廣獎勵 Future>> claimReferralBonus( int referredUserId, int milestone, ) async { return _client.post>( ApiEndpoints.bonusClaim, data: { 'type': 'referral', 'referredUserId': referredUserId, 'milestone': milestone, }, ); } /// 領取間接推廣獎勵 Future>> claimIndirectReferralBonus( int directReferralId, int indirectReferredUserId, int milestone, ) async { return _client.post>( ApiEndpoints.bonusClaim, data: { 'type': 'indirect_referral', 'directReferralId': directReferralId, 'indirectReferredUserId': indirectReferredUserId, 'milestone': milestone, }, ); } }