from django.contrib import admin

from .models import Order, OrderEvent


class OrderEventInline(admin.TabularInline):
    model = OrderEvent
    extra = 0
    readonly_fields = ['from_status', 'to_status', 'note', 'changed_by', 'created_at']
    can_delete = False


@admin.register(Order)
class OrderAdmin(admin.ModelAdmin):
    list_display = ['order_number', 'product_name', 'user', 'quantity',
                    'commission', 'status', 'commission_posted', 'created_at']
    list_filter = ['status', 'logistics_status', 'commission_posted']
    search_fields = ['order_number', 'product_name', 'user__phone', 'customer_name']
    readonly_fields = ['commission_posted', 'created_at', 'updated_at', 'completed_at']
    inlines = [OrderEventInline]
