from django.contrib import admin
from import_export.admin import ImportExportModelAdmin

from .models import (
    Lokasi,
    KategoriBarang,
    JenisBarang,
    CaraJual,
    Barang,
    InvoiceBarang,
    LogProgressInvoiceBarang,
    HargaList,
    HargaListHistory,
)


@admin.register(Lokasi)
class LokasiAdmin(ImportExportModelAdmin):
    list_display = ('nama', 'catatan', 'created_at')
    search_fields = ('nama', 'catatan')


@admin.register(KategoriBarang)
class KategoriBarangAdmin(ImportExportModelAdmin):
    list_display = ('nama', 'catatan', 'created_at')
    search_fields = ('nama', 'catatan')


@admin.register(JenisBarang)
class JenisBarangAdmin(ImportExportModelAdmin):
    list_display = ('nama', 'catatan', 'created_at')
    search_fields = ('nama', 'catatan')


@admin.register(CaraJual)
class CaraJualAdmin(ImportExportModelAdmin):
    list_display = ('nama', 'catatan', 'created_at')
    search_fields = ('nama', 'catatan')


@admin.register(Barang)
class BarangAdmin(ImportExportModelAdmin):
    list_display = ('kode', 'kategori_barang', 'jenis_barang', 'lokasi', 'cara_jual', 'nama', 'harga_beli', 'harga_jual', 'stok', 'expired_at', 'created_at')
    search_fields = ('kode', 'nama')
    list_filter = ('kategori_barang', 'jenis_barang', 'lokasi', 'cara_jual', 'stok')


@admin.register(InvoiceBarang)
class InvoiceBarangAdmin(ImportExportModelAdmin):
    list_display = ('kode', 'barang', 'kuantitas', 'progress', 'is_dibayar', 'created_at')
    search_fields = ('kode', 'barang__nama', 'pendaftaran__kode')
    list_filter = ('progress', 'is_dibayar')


@admin.register(LogProgressInvoiceBarang)
class LogProgressInvoiceBarangAdmin(ImportExportModelAdmin):
    list_display = ('relasi', 'progress', 'created_at')
    search_fields = ('relasi__kode', 'progress')
    list_filter = ('progress',)
    

@admin.register(HargaList)
class HargaListAdmin(ImportExportModelAdmin):
    list_display = ('price', 'title', 'created_at')
    search_fields = ('price', 'title')
    
@admin.register(HargaListHistory)
class HargaListHistoryAdmin(ImportExportModelAdmin):
    list_display = ('pendaftaran_id', 'harga_list_id')
    search_fields = ('pendaftaran_id', 'harga_list_id')