update
This commit is contained in:
@@ -1,8 +0,0 @@
|
|||||||
from django.db import models
|
|
||||||
from django.utils.translation import gettext_lazy as _
|
|
||||||
|
|
||||||
|
|
||||||
class EvaluationCategory(models.TextChoices):
|
|
||||||
AUTO = "auto_transport", _("Avtotransport")
|
|
||||||
REAL_ESTATE = "real estate", _("ko'chmas mulk")
|
|
||||||
EQUIPMENT = "equipment", _("uskuna va jihozlar")
|
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
# Generated by Django 5.2.7 on 2026-05-04 12:40
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('evaluation', '0041_rename_bonustype_bonuscategory'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='bonuscategory',
|
||||||
|
name='category',
|
||||||
|
field=models.CharField(choices=[('lightweight_auto', 'Yengil automobil'), ('truck_car', 'Yuk automobil'), ('special_tech', 'Maxsus texnika')], max_length=50),
|
||||||
|
),
|
||||||
|
]
|
||||||
@@ -2,7 +2,7 @@ from django.db import models
|
|||||||
from django.db.models.fields import PositiveIntegerField
|
from django.db.models.fields import PositiveIntegerField
|
||||||
from django_core.models import AbstractBaseModel
|
from django_core.models import AbstractBaseModel
|
||||||
|
|
||||||
from core.apps.evaluation.choices.bonus import EvaluationCategory
|
from core.apps.evaluation.choices.auto import AutoObjectType
|
||||||
|
|
||||||
|
|
||||||
class BaseValueBonus(AbstractBaseModel):
|
class BaseValueBonus(AbstractBaseModel):
|
||||||
@@ -16,7 +16,7 @@ class BonusCategory(AbstractBaseModel):
|
|||||||
name = models.CharField(max_length=255)
|
name = models.CharField(max_length=255)
|
||||||
category = models.CharField(
|
category = models.CharField(
|
||||||
max_length=50,
|
max_length=50,
|
||||||
choices=EvaluationCategory.choices
|
choices=AutoObjectType.choices
|
||||||
)
|
)
|
||||||
percentage = PositiveIntegerField()
|
percentage = PositiveIntegerField()
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ from core.apps.evaluation.models.bonus import BonusCategory, EmployeeBonus, Base
|
|||||||
class BaseBonusSerializer(serializers.ModelSerializer):
|
class BaseBonusSerializer(serializers.ModelSerializer):
|
||||||
class Meta:
|
class Meta:
|
||||||
model = BaseValueBonus
|
model = BaseValueBonus
|
||||||
fields = 'id', 'base_price'
|
fields = ['id', 'base_price']
|
||||||
|
|
||||||
def create(self, validated_data):
|
def create(self, validated_data):
|
||||||
if BaseValueBonus.objects.exists():
|
if BaseValueBonus.objects.exists():
|
||||||
@@ -18,7 +18,7 @@ class BaseBonusSerializer(serializers.ModelSerializer):
|
|||||||
class BonusCategorySerializer(serializers.ModelSerializer):
|
class BonusCategorySerializer(serializers.ModelSerializer):
|
||||||
class Meta:
|
class Meta:
|
||||||
model = BonusCategory
|
model = BonusCategory
|
||||||
fields = 'name', 'category', 'percentage'
|
fields = ['name', 'category', 'percentage']
|
||||||
|
|
||||||
|
|
||||||
class BonusCategoryListSerializer(serializers.ModelSerializer):
|
class BonusCategoryListSerializer(serializers.ModelSerializer):
|
||||||
@@ -26,7 +26,7 @@ class BonusCategoryListSerializer(serializers.ModelSerializer):
|
|||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = BonusCategory
|
model = BonusCategory
|
||||||
fields = 'id', 'name', 'category', 'percentage' , 'price'
|
fields = ['id', 'name', 'category', 'percentage' , 'price']
|
||||||
|
|
||||||
def get_price(self, obj):
|
def get_price(self, obj):
|
||||||
base_obj = BaseValueBonus.objects.first()
|
base_obj = BaseValueBonus.objects.first()
|
||||||
@@ -39,7 +39,7 @@ class BonusCategoryListSerializer(serializers.ModelSerializer):
|
|||||||
class BonusEmployeeBonusSerializer(serializers.ModelSerializer):
|
class BonusEmployeeBonusSerializer(serializers.ModelSerializer):
|
||||||
class Meta:
|
class Meta:
|
||||||
model = EmployeeBonus
|
model = EmployeeBonus
|
||||||
fields = 'user', 'bonus_type', 'percentage'
|
fields = ['user', 'bonus_type', 'percentage']
|
||||||
|
|
||||||
|
|
||||||
class EmployeeBonusListSerializer(serializers.ModelSerializer):
|
class EmployeeBonusListSerializer(serializers.ModelSerializer):
|
||||||
@@ -47,7 +47,7 @@ class EmployeeBonusListSerializer(serializers.ModelSerializer):
|
|||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = EmployeeBonus
|
model = EmployeeBonus
|
||||||
fields = 'id', 'user', 'bonus_type', 'percentage' , 'price'
|
fields = ['id', 'user', 'bonus_type', 'percentage' , 'price']
|
||||||
|
|
||||||
def get_price(self, obj):
|
def get_price(self, obj):
|
||||||
base_obj = BaseValueBonus.objects.first()
|
base_obj = BaseValueBonus.objects.first()
|
||||||
|
|||||||
@@ -30,15 +30,10 @@ class CommentCreateSerializer(serializers.ModelSerializer):
|
|||||||
'id', 'message', 'file', 'type', 'task'
|
'id', 'message', 'file', 'type', 'task'
|
||||||
]
|
]
|
||||||
|
|
||||||
def validate(self, data):
|
|
||||||
task = Task.objects.filter(id=data['task']).first()
|
|
||||||
if not task:
|
|
||||||
raise serializers.ValidationError("Task not found")
|
|
||||||
data['task'] = task
|
|
||||||
return data
|
|
||||||
|
|
||||||
def create(self, validated_data):
|
def create(self, validated_data):
|
||||||
with transaction.atomic():
|
with transaction.atomic():
|
||||||
task = validated_data.pop('task')
|
comment = Comment.objects.create(
|
||||||
comment = Comment.objects.create(task=task, created_by=self.context['request'].user, **validated_data)
|
created_by=self.context['request'].user,
|
||||||
return comment
|
**validated_data
|
||||||
|
)
|
||||||
|
return comment
|
||||||
Reference in New Issue
Block a user