Adding extra fields to userstories, tasks and issues APIs required in home
parent
dd43afa7ed
commit
01eae65564
|
@ -23,6 +23,8 @@ from taiga.base.neighbors import NeighborsSerializerMixin
|
|||
from taiga.mdrender.service import render as mdrender
|
||||
from taiga.projects.validators import ProjectExistsValidator
|
||||
from taiga.projects.notifications.validators import WatchersValidator
|
||||
from taiga.projects.serializers import BasicIssueStatusSerializer
|
||||
from taiga.users.serializers import BasicInfoSerializer as UserBasicInfoSerializer
|
||||
|
||||
from . import models
|
||||
|
||||
|
@ -36,6 +38,8 @@ class IssueSerializer(WatchersValidator, serializers.ModelSerializer):
|
|||
blocked_note_html = serializers.SerializerMethodField("get_blocked_note_html")
|
||||
description_html = serializers.SerializerMethodField("get_description_html")
|
||||
votes = serializers.SerializerMethodField("get_votes_number")
|
||||
status_extra_info = BasicIssueStatusSerializer(source="status", required=False, read_only=True)
|
||||
assigned_to_extra_info = UserBasicInfoSerializer(source="assigned_to", required=False, read_only=True)
|
||||
|
||||
class Meta:
|
||||
model = models.Issue
|
||||
|
|
|
@ -93,6 +93,13 @@ class UserStoryStatusSerializer(serializers.ModelSerializer):
|
|||
return attrs
|
||||
|
||||
|
||||
class BasicUserStoryStatusSerializer(serializers.ModelSerializer):
|
||||
|
||||
class Meta:
|
||||
model = models.UserStoryStatus
|
||||
fields = ("name", "color")
|
||||
|
||||
|
||||
class TaskStatusSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = models.TaskStatus
|
||||
|
@ -116,6 +123,13 @@ class TaskStatusSerializer(serializers.ModelSerializer):
|
|||
return attrs
|
||||
|
||||
|
||||
class BasicTaskStatusSerializerSerializer(serializers.ModelSerializer):
|
||||
|
||||
class Meta:
|
||||
model = models.TaskStatus
|
||||
fields = ("name", "color")
|
||||
|
||||
|
||||
class SeveritySerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = models.Severity
|
||||
|
@ -151,6 +165,13 @@ class IssueStatusSerializer(serializers.ModelSerializer):
|
|||
return attrs
|
||||
|
||||
|
||||
class BasicIssueStatusSerializer(serializers.ModelSerializer):
|
||||
|
||||
class Meta:
|
||||
model = models.IssueStatus
|
||||
fields = ("name", "color")
|
||||
|
||||
|
||||
class IssueTypeSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = models.IssueType
|
||||
|
|
|
@ -26,6 +26,8 @@ from taiga.projects.validators import ProjectExistsValidator
|
|||
from taiga.projects.milestones.validators import SprintExistsValidator
|
||||
from taiga.projects.tasks.validators import TaskExistsValidator
|
||||
from taiga.projects.notifications.validators import WatchersValidator
|
||||
from taiga.projects.serializers import BasicTaskStatusSerializerSerializer
|
||||
from taiga.users.serializers import BasicInfoSerializer as UserBasicInfoSerializer
|
||||
|
||||
from . import models
|
||||
|
||||
|
@ -38,6 +40,8 @@ class TaskSerializer(WatchersValidator, serializers.ModelSerializer):
|
|||
blocked_note_html = serializers.SerializerMethodField("get_blocked_note_html")
|
||||
description_html = serializers.SerializerMethodField("get_description_html")
|
||||
is_closed = serializers.SerializerMethodField("get_is_closed")
|
||||
status_extra_info = BasicTaskStatusSerializerSerializer(source="status", required=False, read_only=True)
|
||||
assigned_to_extra_info = UserBasicInfoSerializer(source="assigned_to", required=False, read_only=True)
|
||||
|
||||
class Meta:
|
||||
model = models.Task
|
||||
|
|
|
@ -26,6 +26,8 @@ from taiga.projects.validators import ProjectExistsValidator
|
|||
from taiga.projects.validators import UserStoryStatusExistsValidator
|
||||
from taiga.projects.userstories.validators import UserStoryExistsValidator
|
||||
from taiga.projects.notifications.validators import WatchersValidator
|
||||
from taiga.projects.serializers import UserStoryStatusSerializer
|
||||
from taiga.users.serializers import BasicInfoSerializer as UserBasicInfoSerializer
|
||||
|
||||
from . import models
|
||||
|
||||
|
@ -51,6 +53,8 @@ class UserStorySerializer(WatchersValidator, serializers.ModelSerializer):
|
|||
origin_issue = serializers.SerializerMethodField("get_origin_issue")
|
||||
blocked_note_html = serializers.SerializerMethodField("get_blocked_note_html")
|
||||
description_html = serializers.SerializerMethodField("get_description_html")
|
||||
status_extra_info = UserStoryStatusSerializer(source="status", required=False, read_only=True)
|
||||
assigned_to_extra_info = UserBasicInfoSerializer(source="assigned_to", required=False, read_only=True)
|
||||
|
||||
class Meta:
|
||||
model = models.UserStory
|
||||
|
|
|
@ -108,6 +108,11 @@ class UserAdminSerializer(UserSerializer):
|
|||
read_only_fields = ("id", "email")
|
||||
|
||||
|
||||
class BasicInfoSerializer(UserSerializer):
|
||||
class Meta:
|
||||
model = User
|
||||
fields = ("username", "full_name_display","photo", "big_photo")
|
||||
|
||||
class RecoverySerializer(serializers.Serializer):
|
||||
token = serializers.CharField(max_length=200)
|
||||
password = serializers.CharField(min_length=6)
|
||||
|
|
Loading…
Reference in New Issue