refactor InvoiceItem and BasketItem models

This commit is contained in:
imperosol
2026-03-02 15:44:37 +01:00
parent 0a3f8b8e6f
commit 85f1a0b9cb
3 changed files with 135 additions and 99 deletions

View File

@@ -22,23 +22,22 @@ from eboutic.models import Basket, BasketItem, Invoice, InvoiceItem
class BasketAdmin(admin.ModelAdmin):
list_display = ("user", "date", "total")
autocomplete_fields = ("user",)
date_hierarchy = "date"
def get_queryset(self, request):
return (
super()
.get_queryset(request)
.annotate(
total=Sum(
F("items__quantity") * F("items__product_unit_price"), default=0
)
total=Sum(F("items__quantity") * F("items__unit_price"), default=0)
)
)
@admin.register(BasketItem)
class BasketItemAdmin(admin.ModelAdmin):
list_display = ("basket", "product_name", "product_unit_price", "quantity")
search_fields = ("product_name",)
list_display = ("label", "unit_price", "quantity")
search_fields = ("label",)
@admin.register(Invoice)
@@ -50,5 +49,6 @@ class InvoiceAdmin(admin.ModelAdmin):
@admin.register(InvoiceItem)
class InvoiceItemAdmin(admin.ModelAdmin):
list_display = ("invoice", "product_name", "product_unit_price", "quantity")
search_fields = ("product_name",)
list_display = ("label", "unit_price", "quantity")
search_fields = ("label",)
list_select_related = ("price",)