from django.contrib import admin from simple_history.admin import SimpleHistoryAdmin from .models import Reload, Refund, Product, Keg, ConsumptionHistory, KegHistory, Consumption, Menu, MenuHistory, Category class ConsumptionAdmin(SimpleHistoryAdmin): """ The admin class for :class:`Consumptions `. """ list_display = ('customer', 'product', 'quantity') ordering = ('-quantity', ) search_fields = ('customer', 'product') class ConsumptionHistoryAdmin(SimpleHistoryAdmin): """ The admin class for :class:`Consumption Histories `. """ list_display = ('customer', 'product', 'quantity', 'paymentMethod', 'date', 'amount') ordering = ('-date', ) search_fields = ('customer__username', 'customer__first_name', 'customer__last_name', 'product__name') list_filter = ('paymentMethod',) class KegAdmin(SimpleHistoryAdmin): """ The admin class for :class:`Kegs `. """ list_display = ('name', 'stockHold', 'capacity', 'is_active') ordering = ('name', ) search_fields = ('name',) list_filter = ('capacity', 'is_active') class KegHistoryAdmin(SimpleHistoryAdmin): """ The admin class for :class:`Keg Histories `. """ list_display = ('keg', 'openingDate', 'closingDate', 'isCurrentKegHistory', 'quantitySold') ordering = ('-openingDate', 'quantitySold') search_fields = ('keg__name',) list_filter = ('isCurrentKegHistory', 'keg') class MenuHistoryAdmin(SimpleHistoryAdmin): """ The admin class for :class:`Menu Histories `. """ list_display = ('customer', 'menu', 'paymentMethod', 'date', 'quantity', 'amount') ordering = ('-date',) search_fields = ('customer', 'menu') class MenuAdmin(SimpleHistoryAdmin): """ The admin class for :class:`Menu `. """ list_display = ('name', 'amount', 'is_active') ordering = ('name', 'amount') search_fields = ('name',) list_filter = ('is_active', ) class ProductAdmin(SimpleHistoryAdmin): """ The admin class for :class:`Products `. """ list_display = ('name', 'amount', 'is_active', 'category', 'adherentRequired', 'stockHold', 'stockBar', 'volume', 'deg') ordering = ('name', 'amount', 'stockHold', 'stockBar', 'deg') search_fields = ('name',) list_filter = ('is_active', 'adherentRequired', 'category') class ReloadAdmin(SimpleHistoryAdmin): """ The admin class for :class:`Reloads `. """ list_display = ('customer', 'amount', 'date', 'PaymentMethod') ordering = ('-date', 'amount', 'customer') search_fields = ('customer__username', 'customer__first_name', 'customer__last_name') list_filter = ('PaymentMethod', ) class RefundAdmin(SimpleHistoryAdmin): """ The admin class for :class:`Refunds `. """ list_display = ('customer', 'amount', 'date') ordering = ('-date', 'amount', 'customer') search_fields = ('customer__username', 'customer__first_name', 'customer__last_name') class CategoryAdmin(SimpleHistoryAdmin): """ The admin class for Category """ ordering = ("order",) admin.site.register(Reload, ReloadAdmin) admin.site.register(Refund, RefundAdmin) admin.site.register(Product, ProductAdmin) admin.site.register(Keg, KegAdmin) admin.site.register(ConsumptionHistory, ConsumptionHistoryAdmin) admin.site.register(KegHistory, KegHistoryAdmin) admin.site.register(Consumption, ConsumptionAdmin) admin.site.register(Menu, MenuAdmin) admin.site.register(MenuHistory, MenuHistoryAdmin) admin.site.register(Category, CategoryAdmin)