Commit 04ac49a5 authored by Gladys Forte's avatar Gladys Forte

{devbugfix} Initial Asset Group and Asset Type Viewsets

parent 0d5dd7ab
......@@ -6,6 +6,6 @@ from app.applicationlayer.utils import model_to_dict
class AssetGroupSerializer(serializers.ModelSerializer):
class Meta:
model = models.AssetGroup
model = models.AMSAssetGroup
fields = '__all__'
read_only_fields = ['created', 'code']
\ No newline at end of file
from django_filters import rest_framework as filters
from app.entities.models import AssetGroup
from app.entities.models import AMSAssetGroup
class AssetGroupFilter(filters.FilterSet):
class Meta:
model = AssetGroup
model = AMSAssetGroup
fields = '__all__'
\ No newline at end of file
......@@ -15,14 +15,14 @@ from django.db import transaction
class AssetGroupViewset(viewsets.ModelViewSet):
queryset = models.AssetGroup.objects.all()
queryset = models.AMSAssetGroup.objects.all()
serializer_class = serializers.AssetGroupSerializer
pagination_class = CustomPagination
lookup_field = "code"
filter_backends = (DjangoFilterBackend, SearchFilter, OrderingFilter)
ordering_fields = '__all__'
search_fields = (
'code', 'name', 'asset_group'
'code', 'name'
)
@transaction.atomic
......
from app.entities import models
from rest_framework import serializers
from app.applicationlayer.utils import model_to_dict
class AssetTypeSerializer(serializers.ModelSerializer):
class Meta:
model = models.AMSAssetType
fields = '__all__'
read_only_fields = ['created', 'code']
\ No newline at end of file
from django_filters import rest_framework as filters
from app.entities.models import AMSAssetType
class AssetTypeFilter(filters.FilterSet):
class Meta:
model = AMSAssetType
fields = '__all__'
\ No newline at end of file
from app.entities import models
from rest_framework import viewsets, status
from rest_framework.response import Response
from django_filters import rest_framework as filters
from django_filters.rest_framework import DjangoFilterBackend
from rest_framework.filters import SearchFilter, OrderingFilter
from app.applicationlayer.ams.asset_type.table_filters import AssetTypeFilter
from app.applicationlayer.ams.asset_type import serializers
from app.applicationlayer.utils import (
CustomPagination, status_message_response
)
from app.helper import decorators
from django.db import transaction
class AssetTypeViewset(viewsets.ModelViewSet):
queryset = models.AMSAssetType.objects.all()
serializer_class = serializers.AssetTypeSerializer
pagination_class = CustomPagination
lookup_field = "code"
filter_backends = (DjangoFilterBackend, SearchFilter, OrderingFilter)
ordering_fields = '__all__'
search_fields = (
'code', 'name'
)
@transaction.atomic
def create(self, request, *args, **kwargs):
serializer = self.get_serializer(data=request.data)
serializer.is_valid(raise_exception=True)
self.perform_create(serializer)
message = status_message_response(
201, 'success',
'New Asset Type created', serializer.data
)
return Response(
message
)
def list(self, request, *args, **kwargs):
queryset = self.filter_queryset(self.get_queryset())
page = self.paginate_queryset(queryset)
if page is not None:
serializer = self.get_serializer(page, many=True)
message = status_message_response(
200,
'success',
'List of Asset Types found!',
serializer.data
)
return self.get_paginated_response(message)
serializer = self.get_serializer(self.queryset, many=True)
return Response(
serializer.data,
status=status.HTTP_200_OK
)
def retrieve(self, request, *args, **kwargs):
instance = self.get_object()
serializer = self.get_serializer(instance)
return Response(serializer.data)
@transaction.atomic
def destroy(self, request, *args, **kwargs):
instance = self.get_object()
self.perform_destroy(instance)
return Response(status=status.HTTP_204_NO_CONTENT)
......@@ -6,10 +6,12 @@ from rest_framework.urlpatterns import format_suffix_patterns
from app.applicationlayer.ams.asset_group import views as assetgroup
from app.applicationlayer.ams.ams_privilege import views as amsprivilege
from app.applicationlayer.ams.ams_user_type.views import AMSUserTypeViewSet
from app.applicationlayer.ams.asset_type import views as assettype
router = routers.DefaultRouter()
router.register(r'asset-group', assetgroup.AssetGroupViewset)
router.register(r'asset-type', assettype.AssetTypeViewset)
router.register(r'ams-privilege', amsprivilege.AMSPrivilegeViewSet)
urlpatterns = [
......
This diff is collapsed.
This diff is collapsed.
......@@ -802,7 +802,7 @@
],
"body": {
"mode": "raw",
"raw": "{\r\n\t\"application\":[\"APP-20190923-0000002\"],\r\n\t\"department\": \"\",\r\n\t\"user_type\": \"OUA\",\r\n\t\"name\": \"ss\",\r\n\t\"username\": \"jtc-sereness\",\r\n\t\"doa\":\"\",\r\n\t\"default_app\": \"APP-20190923-0000002\",\r\n\t\"contact_no\": \"1312313\",\r\n\t\"email\": \"t@gmail.com\"\r\n}\r\n"
"raw": "{\r\n\t\"application\":[\"APP-20190923-0000002\"],\r\n\t\"department\": \"DEPARTMENT-20200122-0000002\",\r\n\t\"user_type\": \"OUA\",\r\n\t\"name\": \"ss\",\r\n\t\"username\": \"jtc-sereness\",\r\n\t\"doa\":\"\",\r\n\t\"default_app\": \"APP-20190923-0000002\",\r\n\t\"contact_no\": \"1312313\",\r\n\t\"email\": \"t@gmail.com\"\r\n}\r\n"
},
"url": {
"raw": "{{baseurl}}/management/users/",
......@@ -832,17 +832,17 @@
],
"body": {
"mode": "raw",
"raw": "{\r\n\t\"application\":[\"APP-20190917-0000001\",\"APP-20190917-0000003\"],\r\n\t\"department\": \"DEPARTMENT-20190917-0000002\",\r\n\t\"user_type\": \"OUA\",\r\n\t\"name\": \"Ritas\",\r\n\t\"username\": \"obrit1a\",\r\n\t\"doa\":\"\",\r\n\t\"default_app\": \"APP-20190917-0000001\",\r\n\t\"contact_no\": \"1312313\",\r\n\t\"email\": \"test@gmail.com\"\r\n}\r\n"
"raw": "{\r\n\t\"application\":[\"APP-20190923-0000001\"],\r\n\t\"department\": \"DEPARTMENT-20200122-0000002\",\r\n\t\"user_type\": \"OUA\",\r\n\t\"name\": \"Ritas\",\r\n\t\"username\": \"obrita\",\r\n\t\"doa\":\"\",\r\n\t\"default_app\": \"APP-20190923-0000001\",\r\n\t\"contact_no\": \"1312313\",\r\n\t\"email\": \"test@gmail.com\"\r\n}\r\n"
},
"url": {
"raw": "{{baseurl}}/management/users/USER-20190919-0000028/",
"raw": "{{baseurl}}/management/users/USER-20200122-0000002/",
"host": [
"{{baseurl}}"
],
"path": [
"management",
"users",
"USER-20190919-0000028",
"USER-20200122-0000002",
""
]
}
......@@ -3461,7 +3461,7 @@
"method": "GET",
"header": [],
"url": {
"raw": "{{baseurl}}/asset-management/ams-privilege/",
"raw": "{{baseurl}}/asset-management/ams-privilege/?id_number=USER-20200311-0000007",
"host": [
"{{baseurl}}"
],
......@@ -3469,6 +3469,12 @@
"asset-management",
"ams-privilege",
""
],
"query": [
{
"key": "id_number",
"value": "USER-20200311-0000007"
}
]
}
},
......@@ -3481,7 +3487,7 @@
"header": [],
"body": {
"mode": "raw",
"raw": "{\n\t\"body_data\": [\n {\n \"id_number\": \"USER-20200122-0000002\",\n \"department\": \"DEPARTMENT-20200122-0000003\",\n \"ams_user_type\": \"MANAGER\"\n },\n {\n \"id_number\": \"USER-20200122-0000002\",\n \"department\": \"DEPARTMENT-20200122-0000002\",\n \"ams_user_type\": \"USER_CLIENT\"\n }\n ]\n}",
"raw": "{\n\t\"form\": [\n {\n \"id_number\": \"USER-20200310-0000016\",\n \"department\": \"DEPARTMENT-20200218-0000003\",\n \"ams_user_type\": \"MANAGER\"\n },\n {\n \"id_number\": \"USER-20200310-0000016\",\n \"department\": \"DEPARTMENT-20200211-0000002\",\n \"ams_user_type\": \"MANAGER\"\n }\n ]\n}",
"options": {
"raw": {
"language": "json"
......@@ -3636,6 +3642,32 @@
],
"protocolProfileBehavior": {},
"_postman_isSubFolder": true
},
{
"name": "Asset Type",
"item": [
{
"name": "List of Asset Type",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "{{baseurl}}/asset-management/asset-type/",
"host": [
"{{baseurl}}"
],
"path": [
"asset-management",
"asset-type",
""
]
}
},
"response": []
}
],
"protocolProfileBehavior": {},
"_postman_isSubFolder": true
}
],
"protocolProfileBehavior": {}
......@@ -3646,7 +3678,7 @@
"bearer": [
{
"key": "token",
"value": "4a6d5d4ce95b759f2718e64878d4be38d257022b",
"value": "6b7ae14960a219fb1dcc17768de07a4ccff58fe4",
"type": "string"
}
]
......
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