Commit fea7c857 authored by John Red Medrano's avatar John Red Medrano

added group and modules key at application endpoint

parent bc2ee4c3
import requests
from rest_framework import serializers
from .models import APIService, APIEndpoint, Application
from api.utils import BadRequestException, number_generator
from rest_framework.exceptions import ValidationError
from django.utils.crypto import get_random_string
from django.conf import settings
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', 'created_at', 'updated_at', 'deleted_at')
read_only_fields = ('id', 'application_no', 'created_at', 'updated_at', 'deleted_at')
fields = ('id', 'application_no', 'name', 'theme', 'groups', 'modules')
read_only_fields = (
'id', 'application_no', 'created_at', 'updated_at', 'deleted_at'
)
def is_valid(self, raise_exception=False):
......
......@@ -8,9 +8,9 @@ from api.views import (
)
router = DefaultRouter()
router.register(r'api-applications', ApplicationViewSet)
router.register(r'api-services', APIServiceViewSet)
router.register(r'api-endpoint', APIEndpointViewSet)
router.register(r'applications', ApplicationViewSet)
router.register(r'services', APIServiceViewSet)
router.register(r'endpoint', APIEndpointViewSet)
urlpatterns = [
path('', include(router.urls)),
......
import requests
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
from rest_framework.response import Response
......@@ -7,6 +11,9 @@ from api.utils import (CustomPagination, BadRequestException,
status_message_response)
ACCOUNT_GROUP = settings.ACCOUNT_GROUP
class ApplicationViewSet(viewsets.ModelViewSet):
http_method_names = [
'get', 'post', 'put', 'patch', 'delete', 'head', 'options', 'trace'
......@@ -46,7 +53,6 @@ class ApplicationViewSet(viewsets.ModelViewSet):
def list(self, request, *args, **kwargs):
try:
queryset = Application.objects.filter(deleted_at__exact=None)
if not queryset.exists():
message = status_message_response(
200, 'success', 'No records found', []
......
......@@ -33,3 +33,4 @@ AUTHENTICATOR_IP = config['SERVICE']['AUTHENTICATOR_IP']
AUTHENTICATOR_PATH = '/api/v1/authenticator'
VALIDATE_TOKEN_URL = f'http://{AUTHENTICATOR_IP}{AUTHENTICATOR_PATH}/validate-token/'
ACCOUNT_GROUP = f'http://{AUTHENTICATOR_IP}{AUTHENTICATOR_PATH}/account-dependent'
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