Files
Shaxobff 1ff23af8bf update
2026-05-01 17:15:01 +05:00

34 lines
990 B
Python

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}"
class BonusCategory(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(BonusCategory, on_delete=models.CASCADE)
percentage = models.PositiveIntegerField()
class Meta:
unique_together = ("user", "bonus_type")