Commit 581de553 authored by John Red Medrano's avatar John Red Medrano

modified the endpoint of application move all codes to viewset

parent fea7c857
import requests
from rest_framework import serializers
from .models import APIService, APIEndpoint, Application
from api.utils import BadRequestException, number_generator
......@@ -10,23 +9,13 @@ ACCOUNT_GROUP = settings.ACCOUNT_GROUP
class ApplicationSerializer(serializers.ModelSerializer):
groups = serializers.ListField(read_only=True)
modules = serializers.ListField(read_only=True)
def to_representation(self, data):
ids = data.id
req = requests.get(f'{ACCOUNT_GROUP}/{ids}/')
groups = req.json()['groups']
modules = req.json()['modules']
setattr(data, 'groups', groups)
setattr(data, 'modules', modules)
return super().to_representation(data)
class Meta:
model = Application
fields = ('id', 'application_no', 'name', 'theme', 'groups', 'modules')
fields = (
'id', 'application_no', 'name', "code", 'theme',
# 'groups', 'modules'
)
read_only_fields = (
'id', 'application_no', 'created_at', 'updated_at', 'deleted_at'
)
......
import requests
from django.db.models import F
from django.db.models import OuterRef, Subquery
# from django.db.models import F
# from django.db.models import OuterRef, Subquery
from django.conf import settings
from rest_framework import viewsets, status
from rest_framework.decorators import action
......@@ -62,11 +62,21 @@ class ApplicationViewSet(viewsets.ModelViewSet):
page = self.paginate_queryset(queryset)
if page is not None:
serializer = self.get_serializer(page, many=True)
results = []
for item in serializer.data:
ids = item['id']
req = requests.get(f'{ACCOUNT_GROUP}/{ids}/')
groups = req.json()['groups']
modules = req.json()['modules']
item['groups'] = groups
item['modules'] = modules
results.append(item)
message = {
'code': 200,
'status': 'success',
'message': 'List of applications found',
'results': serializer.data
'results': results
}
return self.get_paginated_response(message)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment