from django.contrib import admin
from .models import CadastroLote, Semeadura, LogExclusaoLote

@admin.register(CadastroLote)
class CadastroLoteAdmin(admin.ModelAdmin):
    list_display = ('numero_lote', 'especie', 'fornecedor', 'data_lote', 'ano', 'qtd_sementes_minimo', 'qtd_sementes_maximo')
    search_fields = ('numero_lote', 'fornecedor', 'especie__especies')
    list_filter = ('ano', 'fornecedor')
    ordering = ('numero_lote',)
    
    fieldsets = (
        ('Informações do Lote', {
            'fields': ('especie', 'numero_lote', 'fornecedor', 'data_lote', 'ano', 'nf_fiscal')
        }),
        ('Estoque de Sementes', {
            'fields': ('qtd_sementes_minimo', 'qtd_sementes_maximo', 'entrada_sementes_kg', 'quebra_dormencia')
        }),
    )

@admin.register(Semeadura)
class SemeaduraAdmin(admin.ModelAdmin):
    list_display = ('lote', 'cliente', 'empresa', 'numero_muda', 'data_semeia', 'qtd_sementes_utilizada', 'sobra_sementes')
    search_fields = ('numero_muda', 'cliente__nome_completo', 'empresa__razao_social', 'lote__numero_lote')
    list_filter = ('data_semeia', 'metodo_semeadura')
    ordering = ('data_semeia',)
    
    fieldsets = (
        ('Informações da Semeadura', {
            'fields': ('lote', 'cliente', 'empresa', 'numero_muda', 'data_semeia', 'metodo_semeadura', 'local_semeadura', 'abertura')
        }),
        ('Sementes', {
            'fields': ('qtd_sementes_utilizada', 'sobra_sementes', 'nova_media')
        }),
    )

@admin.register(LogExclusaoLote)
class LogExclusaoLoteAdmin(admin.ModelAdmin):
    list_display = ('numero_lote', 'fornecedor', 'data_lote', 'data_exclusao', 'hora_exclusao', 'nome_usuario_exclusao')
    search_fields = ('numero_lote', 'fornecedor', 'nome_usuario_exclusao')
    list_filter = ('data_exclusao',)
    ordering = ('data_exclusao',)
    
    fieldsets = (
        ('Informações do Lote', {
            'fields': ('lote_id', 'numero_lote', 'fornecedor', 'data_lote')
        }),
        ('Exclusão', {
            'fields': ('data_exclusao', 'hora_exclusao', 'usuario_exclusao', 'nome_usuario_exclusao', 'motivo_exclusao', 'motivo_exclusao_outros')
        }),
    )
