feat: add appraisers for auto-evaluation and add curd for this
This commit is contained in:
@@ -1,10 +1,12 @@
|
||||
import re
|
||||
from django.contrib.auth import get_user_model
|
||||
|
||||
from rest_framework import serializers
|
||||
|
||||
from core.apps.evaluation.models import AutoEvaluationModel,ReferenceitemModel
|
||||
from core.apps.evaluation.serializers.reference import ListReferenceitemSerializer
|
||||
|
||||
User = get_user_model()
|
||||
|
||||
class BaseAutoevaluationSerializer(serializers.ModelSerializer):
|
||||
status_display = serializers.CharField(source="get_status_display", read_only=True)
|
||||
@@ -14,7 +16,7 @@ class BaseAutoevaluationSerializer(serializers.ModelSerializer):
|
||||
value_determined = ListReferenceitemSerializer(read_only=True)
|
||||
property_rights = ListReferenceitemSerializer(read_only=True)
|
||||
form_ownership = ListReferenceitemSerializer(read_only=True)
|
||||
|
||||
|
||||
class Meta:
|
||||
model = AutoEvaluationModel
|
||||
fields = [
|
||||
@@ -212,3 +214,16 @@ class CreateAutoevaluationSerializer(serializers.ModelSerializer):
|
||||
)
|
||||
|
||||
return attrs
|
||||
|
||||
|
||||
class AutoEvaluationAppraisersSerializer(serializers.Serializer):
|
||||
ids = serializers.ListField(child=serializers.IntegerField())
|
||||
|
||||
def validate(self, data):
|
||||
if not data.get("ids"):
|
||||
raise serializers.ValidationError("Appraisers IDs are required.")
|
||||
users = User.objects.filter(id__in=data["ids"])
|
||||
if not users:
|
||||
raise serializers.ValidationError("Invalid appraisers IDs.")
|
||||
data['users'] = users
|
||||
return data
|
||||
|
||||
Reference in New Issue
Block a user