from django.contrib import admin
from .models import PowerStreamBonusRecord, PowerStreamConfig, PowerStreamMonthlyClaim


@admin.register(PowerStreamConfig)
class PowerStreamConfigAdmin(admin.ModelAdmin):
    list_display = ('opportunity_bundle', 'level', 'amount')
    list_filter = ('opportunity_bundle',)


@admin.register(PowerStreamBonusRecord)
class PowerStreamBonusRecordAdmin(admin.ModelAdmin):
    list_display = ('earner', 'level', 'gross_amount', 'net_amount', 'status', 'earned_at', 'expires_at', 'claim_period')
    list_filter = ('status', 'level', 'opportunity_bundle')
    search_fields = ('earner__email', 'reference_id')
    readonly_fields = ('reference_id', 'earned_at')
    date_hierarchy = 'earned_at'
    ordering = ('-earned_at',)


@admin.register(PowerStreamMonthlyClaim)
class PowerStreamMonthlyClaimAdmin(admin.ModelAdmin):
    list_display = ('user', 'claim_month', 'records_count', 'total_gross', 'total_net', 'status', 'created_at')
    list_filter = ('status', 'claim_month')
    search_fields = ('user__email',)
    readonly_fields = ('created_at',)
    ordering = ('-claim_month',)
