mirror of
https://github.com/ae-utbm/sith.git
synced 2024-11-25 18:44:23 +00:00
improve counter dump admin
This commit is contained in:
parent
9991f5dc64
commit
e712f9fdb8
@ -63,15 +63,25 @@ class BillingInfoAdmin(admin.ModelAdmin):
|
||||
|
||||
@admin.register(AccountDump)
|
||||
class AccountDumpAdmin(admin.ModelAdmin):
|
||||
date_hierarchy = "warning_mail_sent_at"
|
||||
list_display = (
|
||||
"customer",
|
||||
"warning_mail_sent_at",
|
||||
"warning_mail_error",
|
||||
"dump_operation",
|
||||
"amount",
|
||||
)
|
||||
autocomplete_fields = ("customer",)
|
||||
autocomplete_fields = ("customer", "dump_operation")
|
||||
list_filter = ("warning_mail_error",)
|
||||
|
||||
def get_queryset(self, request):
|
||||
# the `amount` property requires to know the customer and the dump_operation
|
||||
return (
|
||||
super()
|
||||
.get_queryset(request)
|
||||
.select_related("customer", "customer__user", "dump_operation")
|
||||
)
|
||||
|
||||
|
||||
@admin.register(Counter)
|
||||
class CounterAdmin(admin.ModelAdmin):
|
||||
|
@ -279,6 +279,14 @@ class AccountDump(models.Model):
|
||||
status = "ongoing" if self.dump_operation is None else "finished"
|
||||
return f"{self.customer} - {status}"
|
||||
|
||||
@cached_property
|
||||
def amount(self):
|
||||
return (
|
||||
self.dump_operation.unit_price
|
||||
if self.dump_operation
|
||||
else self.customer.amount
|
||||
)
|
||||
|
||||
|
||||
class ProductType(models.Model):
|
||||
"""A product type.
|
||||
|
Loading…
Reference in New Issue
Block a user