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

added listing for AMS Asset listing and added related name for Asset Stock...

added listing for AMS Asset listing and added related name for Asset Stock detail on field asset and asset_group
parent 9d90f9e1
from app.entities.models import AMSAsset
from rest_framework import serializers
class AMSAssetSerializer(serializers.ModelSerializer):
def to_representation(self, instance):
ret = super().to_representation(instance)
ret['asset_type'] = instance.asset_type.name
return ret
class Meta:
model = AMSAsset
fields = (
'code'
'name',
'asset_type',
)
read_only_fields = (
'created',
)
\ No newline at end of file
from django_filters import rest_framework as filters
from app.entities.models import AMSAsset
class AMSAssetFilter(filters.FilterSet):
class Meta:
model = AMSAsset
fields = '__all__'
\ No newline at end of file
from app.entities.models import AMSAsset
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.table_filters import AMSAssetFilter
from app.applicationlayer.ams.asset import serializers
from app.applicationlayer.utils import(
CustomPagination, status_message_response
)
class AMSAssetViewSet(viewsets.ModelViewSet):
queryset = models.AMSAsset.objects
serializer_class = serializers.AMSAssetSerializer
pagination_class = CustomPagination
lookup_field = 'code'
filter_backends(
DjangoFilterBackend, SearchFilter,
OrderingFilter
)
ordering_fields = '__all__'
search_filter = (
'code',
'name',
'asset_type__name'
)
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 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
)
......@@ -1458,12 +1458,14 @@ class AMSAssetStock(models.Model):
asset = models.ForeignKey(
AMSAsset,
on_delete=models.CASCADE,
to_field='code'
to_field='code',
related_name='ams_asset_to_assetdetail'
)
asset_group = models.ForeignKey(
AMSAssetGroup,
on_delete=models.CASCADE,
to_field='code'
to_field='code',
related_name='ams_asset_to_assetgroup'
)
created = models.DateTimeField(auto_now_add=True)
deleted_at = models.DateTimeField(null=True, blank=True)
......
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