"""Django admin registrations for SME-Hub marketplace models.

Phase 6.3 — registers MarketValidation and SalesRecord. The pre-existing
buyer / product / demand entities are managed through the dashboard UI.
"""
from __future__ import annotations

from django.contrib import admin

from apps.smehub.marketplace.models import MarketValidation, SalesRecord


@admin.register(MarketValidation)
class MarketValidationAdmin(admin.ModelAdmin):
    list_display = (
        "id",
        "product_listing",
        "method",
        "validator_name",
        "average_score",
        "has_strong_signal",
        "conducted_at",
    )
    list_filter = ("method", "business")
    search_fields = ("validator_name", "validator_email", "product_listing__name")
    readonly_fields = ("created_at", "updated_at")


@admin.register(SalesRecord)
class SalesRecordAdmin(admin.ModelAdmin):
    list_display = (
        "id",
        "business",
        "product_listing",
        "channel",
        "gross_amount",
        "currency",
        "sale_date",
        "status",
    )
    list_filter = ("status", "channel", "currency")
    search_fields = (
        "business__name",
        "product_listing__name",
        "customer_name",
        "buyer_entry__organisation_name",
    )
    date_hierarchy = "sale_date"
    readonly_fields = ("recorded_at", "updated_at", "verified_at")
