@ -1,42 +0,0 @@
|
||||
from core.serializers.model_notes import (
|
||||
ModelNoteBaseSerializer,
|
||||
ModelNoteModelSerializer,
|
||||
ModelNoteViewSerializer
|
||||
)
|
||||
|
||||
from settings.models.external_link_notes import (
|
||||
ExternalLinkNotes
|
||||
)
|
||||
|
||||
|
||||
class ExternalLinkNoteBaseSerializer(ModelNoteBaseSerializer):
|
||||
|
||||
pass
|
||||
|
||||
|
||||
class ExternalLinkNoteModelSerializer(
|
||||
ModelNoteModelSerializer
|
||||
):
|
||||
|
||||
|
||||
class Meta:
|
||||
|
||||
model = ExternalLinkNotes
|
||||
|
||||
fields = ModelNoteModelSerializer.Meta.fields + [
|
||||
'model',
|
||||
]
|
||||
|
||||
read_only_fields = ModelNoteModelSerializer.Meta.read_only_fields + [
|
||||
'model',
|
||||
'content_type',
|
||||
]
|
||||
|
||||
|
||||
|
||||
class ExternalLinkNoteViewSerializer(
|
||||
ModelNoteViewSerializer,
|
||||
ExternalLinkNoteModelSerializer,
|
||||
):
|
||||
|
||||
pass
|
@ -11,41 +11,30 @@ from centurion_feature_flag.urls.routers import DefaultRouter
|
||||
from core.viewsets import (
|
||||
celery_log as celery_log_v2,
|
||||
manufacturer as manufacturer_v2,
|
||||
manufacturer_notes,
|
||||
ticket_category,
|
||||
ticket_category_notes,
|
||||
ticket_comment_category,
|
||||
ticket_comment_category_notes,
|
||||
|
||||
)
|
||||
|
||||
from itam.viewsets import (
|
||||
device_model as device_model_v2,
|
||||
device_model_notes,
|
||||
device_type as device_type_v2,
|
||||
device_type_notes,
|
||||
software_category as software_category_v2,
|
||||
software_category_notes,
|
||||
)
|
||||
|
||||
from itim.viewsets import (
|
||||
cluster_type as cluster_type_v2,
|
||||
cluster_type_notes,
|
||||
port as port_v2,
|
||||
port_notes,
|
||||
)
|
||||
|
||||
from project_management.viewsets import (
|
||||
project_state as project_state_v2,
|
||||
project_state_notes,
|
||||
project_type as project_type_v2,
|
||||
project_type_notes,
|
||||
)
|
||||
|
||||
from settings.viewsets import (
|
||||
app_settings as app_settings_v2,
|
||||
external_link as external_link_v2,
|
||||
external_link_notes,
|
||||
index as settings_index_v2,
|
||||
user_settings as user_settings_v2
|
||||
)
|
||||
@ -74,38 +63,18 @@ router.register(
|
||||
prefix = 'cluster_type', viewset = cluster_type_v2.ViewSet,
|
||||
basename = '_api_v2_cluster_type'
|
||||
)
|
||||
router.register(
|
||||
prefix = 'cluster_type/(?P<model_id>[0-9]+)/notes',
|
||||
viewset = cluster_type_notes.ViewSet,
|
||||
basename = '_api_v2_cluster_type_note'
|
||||
)
|
||||
router.register(
|
||||
prefix = 'device_model', viewset = device_model_v2.ViewSet,
|
||||
basename = '_api_v2_device_model'
|
||||
)
|
||||
router.register(
|
||||
prefix = 'device_model/(?P<model_id>[0-9]+)/notes',
|
||||
viewset = device_model_notes.ViewSet,
|
||||
basename = '_api_v2_device_model_note'
|
||||
)
|
||||
router.register(
|
||||
prefix = 'device_type', viewset = device_type_v2.ViewSet,
|
||||
basename = '_api_v2_device_type'
|
||||
)
|
||||
router.register(
|
||||
prefix = 'device_type/(?P<model_id>[0-9]+)/notes',
|
||||
viewset = device_type_notes.ViewSet,
|
||||
basename = '_api_v2_device_type_note'
|
||||
)
|
||||
router.register(
|
||||
prefix = 'external_link', viewset = external_link_v2.ViewSet,
|
||||
basename = '_api_v2_external_link'
|
||||
)
|
||||
router.register(
|
||||
prefix = 'external_link/(?P<model_id>[0-9]+)/notes',
|
||||
viewset = external_link_notes.ViewSet,
|
||||
basename = '_api_v2_external_link_note'
|
||||
)
|
||||
router.register(
|
||||
prefix = 'knowledge_base_category',
|
||||
viewset = knowledge_base_category_v2.ViewSet,
|
||||
@ -115,66 +84,32 @@ router.register(
|
||||
prefix = 'manufacturer', viewset = manufacturer_v2.ViewSet,
|
||||
basename = '_api_v2_manufacturer'
|
||||
)
|
||||
router.register(
|
||||
prefix = 'manufacturer/(?P<model_id>[0-9]+)/notes',
|
||||
viewset = manufacturer_notes.ViewSet,
|
||||
basename = '_api_v2_manufacturer_note'
|
||||
)
|
||||
router.register(
|
||||
prefix = 'port', viewset = port_v2.ViewSet,
|
||||
basename = '_api_v2_port'
|
||||
)
|
||||
router.register(
|
||||
prefix = 'port/(?P<model_id>[0-9]+)/notes', viewset = port_notes.ViewSet,
|
||||
basename = '_api_v2_port_note'
|
||||
)
|
||||
router.register(
|
||||
prefix = 'project_state',
|
||||
viewset = project_state_v2.ViewSet,
|
||||
basename = '_api_v2_project_state'
|
||||
)
|
||||
router.register(
|
||||
prefix = 'project_state/(?P<model_id>[0-9]+)/notes',
|
||||
viewset = project_state_notes.ViewSet,
|
||||
basename = '_api_v2_project_state_note'
|
||||
)
|
||||
router.register(
|
||||
prefix = 'project_type', viewset = project_type_v2.ViewSet,
|
||||
basename = '_api_v2_project_type'
|
||||
)
|
||||
router.register(
|
||||
prefix = 'project_type/(?P<model_id>[0-9]+)/notes',
|
||||
viewset = project_type_notes.ViewSet,
|
||||
basename = '_api_v2_project_type_note'
|
||||
)
|
||||
router.register(
|
||||
prefix = 'software_category', viewset = software_category_v2.ViewSet,
|
||||
basename = '_api_v2_software_category'
|
||||
)
|
||||
router.register(
|
||||
prefix = 'software_category/(?P<model_id>[0-9]+)/notes',
|
||||
viewset = software_category_notes.ViewSet,
|
||||
basename = '_api_v2_software_category_note'
|
||||
)
|
||||
router.register(
|
||||
prefix = 'ticket_category',
|
||||
viewset = ticket_category.ViewSet, basename = '_api_v2_ticket_category'
|
||||
)
|
||||
router.register(
|
||||
prefix = 'ticket_category/(?P<model_id>[0-9]+)/notes',
|
||||
viewset = ticket_category_notes.ViewSet,
|
||||
basename = '_api_v2_ticket_category_note'
|
||||
)
|
||||
router.register(
|
||||
prefix = 'ticket_comment_category',
|
||||
viewset = ticket_comment_category.ViewSet,
|
||||
basename = '_api_v2_ticket_comment_category'
|
||||
)
|
||||
router.register(
|
||||
prefix = 'ticket_comment_category/(?P<model_id>[0-9]+)/notes',
|
||||
viewset = ticket_comment_category_notes.ViewSet,
|
||||
basename = '_api_v2_ticket_comment_category_note'
|
||||
)
|
||||
router.register(
|
||||
prefix = 'user_settings', viewset = user_settings_v2.ViewSet,
|
||||
basename = '_api_v2_user_settings'
|
||||
|
@ -1,60 +0,0 @@
|
||||
from drf_spectacular.utils import extend_schema, extend_schema_view, OpenApiResponse
|
||||
|
||||
from core.viewsets.model_notes import ModelNoteViewSet
|
||||
|
||||
from settings.serializers.external_links_notes import (
|
||||
ExternalLinkNotes,
|
||||
ExternalLinkNoteModelSerializer,
|
||||
ExternalLinkNoteViewSerializer
|
||||
)
|
||||
|
||||
|
||||
|
||||
@extend_schema_view(
|
||||
create=extend_schema(
|
||||
summary = 'Add a note to a External Link',
|
||||
description = '',
|
||||
responses = {
|
||||
201: OpenApiResponse(description='created', response=ExternalLinkNoteViewSerializer),
|
||||
400: OpenApiResponse(description='Validation failed.'),
|
||||
403: OpenApiResponse(description='User is missing create permissions'),
|
||||
}
|
||||
),
|
||||
destroy = extend_schema(
|
||||
summary = 'Delete a External Link note',
|
||||
description = ''
|
||||
),
|
||||
list = extend_schema(
|
||||
summary = 'Fetch all External Link notes',
|
||||
description='',
|
||||
),
|
||||
retrieve = extend_schema(
|
||||
summary = 'Fetch a single External Link note',
|
||||
description='',
|
||||
),
|
||||
update = extend_schema(exclude = True),
|
||||
partial_update = extend_schema(
|
||||
summary = 'Update a External Link note',
|
||||
description = ''
|
||||
),
|
||||
)
|
||||
class ViewSet(ModelNoteViewSet):
|
||||
|
||||
model = ExternalLinkNotes
|
||||
|
||||
|
||||
def get_serializer_class(self):
|
||||
|
||||
if (
|
||||
self.action == 'list'
|
||||
or self.action == 'retrieve'
|
||||
):
|
||||
|
||||
self.serializer_class = ExternalLinkNoteViewSerializer
|
||||
|
||||
|
||||
else:
|
||||
|
||||
self.serializer_class = ExternalLinkNoteModelSerializer
|
||||
|
||||
return self.serializer_class
|
Reference in New Issue
Block a user