This commit is contained in:
Shaxobff
2026-05-01 16:54:38 +05:00
parent f53125cfdc
commit feecb580c1
11 changed files with 239 additions and 8 deletions

View File

@@ -9,14 +9,11 @@ from core.apps.evaluation.choices.auto import (
AutoEvaluationStatus,
AutoObjectType,
# FormOwnership,
LocationConvenience,
LocationHighways,
ObjectOwnerType,
# PropertyRights,
# RateType,
# ValueDetermined,
)
from .valuation import ValuationModel
from .vehicle import VehicleModel
@@ -244,8 +241,6 @@ class AutoEvaluationModel(AbstractBaseModel):
default=False,
)
def __str__(self):
return f"Auto Evaluation {self.registration_number or self.pk}"

View File

@@ -0,0 +1,38 @@
from django.db import models
from django.db.models.fields import PositiveIntegerField
from django_core.models import AbstractBaseModel
from core.apps.evaluation.choices.bonus import EvaluationCategory
class BaseValueBonus(AbstractBaseModel):
base_price = models.DecimalField(max_digits=12, decimal_places=2)
def __str__(self):
return f"Base: {self.base_price}"
def save(self, *args, **kwargs):
if not self.pk and BaseValueBonus.objects.exists():
raise ValueError("Value Bonus already exists")
return super().save(*args, **kwargs)
class BonusType(AbstractBaseModel):
name = models.CharField(max_length=255)
category = models.CharField(
max_length=50,
choices=EvaluationCategory.choices
)
percentage = PositiveIntegerField()
def __str__(self):
return self.name
class EmployeeBonus(AbstractBaseModel):
user = models.ForeignKey("accounts.User", on_delete=models.CASCADE, related_name="bonuses", )
bonus_type = models.ForeignKey(BonusType, on_delete=models.CASCADE)
percentage = models.PositiveIntegerField()
class Meta:
unique_together = ("user", "bonus_type")

View File

@@ -3,12 +3,11 @@ from django.utils.translation import gettext_lazy as _
from django_core.models import AbstractBaseModel
from model_bakery import baker
from .valuation import ValuationModel
from core.apps.evaluation.choices.movable import (
MovablePropertyCategory,
MovablePropertyCondition,
)
from .valuation import ValuationModel
class MovablePropertyEvaluationModel(AbstractBaseModel):
@@ -51,4 +50,3 @@ class MovablePropertyEvaluationModel(AbstractBaseModel):
db_table = "MovablePropertyEvaluation"
verbose_name = _("Movable Property Evaluation")
verbose_name_plural = _("Movable Property Evaluations")