fix(models): correct discount_price calculation logic
ensure discount_price reflects the actual discount by using the product's price. Also, suppress type-related issues in admin action descriptions for improved linting compatibility.
This commit is contained in:
parent
28622cec90
commit
9cab9fdd3a
2 changed files with 5 additions and 5 deletions
|
|
@ -155,7 +155,7 @@ class ActivationActionsMixin:
|
|||
]
|
||||
|
||||
@action(
|
||||
description=_("Activate selected %(verbose_name_plural)s"),
|
||||
description=_("Activate selected %(verbose_name_plural)s"), # ty:ignore[invalid-argument-type]
|
||||
permissions=["change"],
|
||||
)
|
||||
def activate_selected(self, request: HttpRequest, queryset: QuerySet[Any]) -> None:
|
||||
|
|
@ -171,7 +171,7 @@ class ActivationActionsMixin:
|
|||
self.message_user(request=request, message=str(e), level=messages.ERROR)
|
||||
|
||||
@action(
|
||||
description=_("Deactivate selected %(verbose_name_plural)s"),
|
||||
description=_("Deactivate selected %(verbose_name_plural)s"), # ty:ignore[invalid-argument-type]
|
||||
permissions=["change"],
|
||||
)
|
||||
def deactivate_selected(
|
||||
|
|
@ -528,7 +528,7 @@ class ProductAdmin(
|
|||
has_images.short_description = _("has images") # ty:ignore[unresolved-attribute]
|
||||
|
||||
@action(
|
||||
description=_("Export selected %(verbose_name_plural)s to marketplaces' feeds"),
|
||||
description=_("Export selected %(verbose_name_plural)s to marketplaces' feeds"), # ty:ignore[invalid-argument-type]
|
||||
permissions=["change"],
|
||||
)
|
||||
def export_to_marketplaces(
|
||||
|
|
@ -550,7 +550,7 @@ class ProductAdmin(
|
|||
self.message_user(request=request, message=str(e), level=messages.ERROR)
|
||||
|
||||
@action(
|
||||
description=_("Ban selected %(verbose_name_plural)s from marketplaces' feeds"),
|
||||
description=_("Ban selected %(verbose_name_plural)s from marketplaces' feeds"), # ty:ignore[invalid-argument-type]
|
||||
permissions=["change"],
|
||||
)
|
||||
def ban_from_marketplaces(
|
||||
|
|
|
|||
|
|
@ -699,7 +699,7 @@ class Product(ExportModelOperationsMixin("product"), NiceModel):
|
|||
@cached_property
|
||||
def discount_price(self) -> float | None:
|
||||
promo = self.promos.first()
|
||||
return promo.discount_percent if promo else None
|
||||
return (self.price / 100) * promo.discount_percent if promo else None
|
||||
|
||||
@property
|
||||
def rating(self) -> float:
|
||||
|
|
|
|||
Loading…
Reference in a new issue