Commit 5d10c771 authored by Gladys Forte's avatar Gladys Forte

Merge branch 'feature/RMS.v2.1-AMS' into 'product-dev'

Feature/rms.v2.1 ams

See merge request rms/Backend/api-main-service!989
parents 2a5d3674 e6088c5c
...@@ -5,7 +5,15 @@ from app.applicationlayer.utils import model_to_dict ...@@ -5,7 +5,15 @@ from app.applicationlayer.utils import model_to_dict
class AssetGroupSerializer(serializers.ModelSerializer): class AssetGroupSerializer(serializers.ModelSerializer):
def to_representation(self, instance):
ret = super().to_representation(instance)
ret['asset_type_count'] = 0
ret['asset_count'] = 0
ret['asset_stock_count'] = instance.ams_asset_to_assetgroup.count()
return ret
class Meta: class Meta:
model = models.AMSAssetGroup model = models.AMSAssetGroup
fields = '__all__' fields = '__all__'
read_only_fields = ['created', 'code'] read_only_fields = ['created', 'created_by', 'code']
\ No newline at end of file \ No newline at end of file
...@@ -29,17 +29,21 @@ class AssetGroupViewset(viewsets.ModelViewSet): ...@@ -29,17 +29,21 @@ class AssetGroupViewset(viewsets.ModelViewSet):
def create(self, request, *args, **kwargs): def create(self, request, *args, **kwargs):
serializer = self.get_serializer(data=request.data) serializer = self.get_serializer(data=request.data)
serializer.is_valid(raise_exception=True) # serializer.is_valid(raise_exception=True)
self.perform_create(serializer)
message = status_message_response( if serializer.is_valid(raise_exception=True):
201, 'success', serializer.save(created_by=self.request.user)
'New Asset Group created', serializer.data
)
return Response( self.perform_create(serializer)
message
) message = status_message_response(
201, 'success',
'New Asset Group created', serializer.data
)
return Response(
message
)
def list(self, request, *args, **kwargs): def list(self, request, *args, **kwargs):
......
...@@ -5,6 +5,13 @@ from app.applicationlayer.utils import model_to_dict ...@@ -5,6 +5,13 @@ from app.applicationlayer.utils import model_to_dict
class AssetTypeSerializer(serializers.ModelSerializer): class AssetTypeSerializer(serializers.ModelSerializer):
def to_representation(self, instance):
ret = super().to_representation(instance)
ret['asset_count'] = instance.ams_asset_type.count()
ret['asset_stock_count'] = 0
return ret
class Meta: class Meta:
model = models.AMSAssetType model = models.AMSAssetType
fields = '__all__' fields = '__all__'
......
...@@ -46,7 +46,17 @@ class AssetTypeViewset(viewsets.ModelViewSet): ...@@ -46,7 +46,17 @@ class AssetTypeViewset(viewsets.ModelViewSet):
def list(self, request, *args, **kwargs): def list(self, request, *args, **kwargs):
queryset = self.filter_queryset(self.get_queryset()) queryset = self.filter_queryset(self.get_queryset())
# queryset = models.AMSAssetType.objects.annotate(
# view_count=Sum(
# When(relations_item__has_viewed=True, then=1),
# output_field=IntegerField(),
# ),
# love_count=Sum(
# When(relations_item__has_loved=True, then=1),
# output_field=IntegerField(),
# ),
# )
page = self.paginate_queryset(queryset) page = self.paginate_queryset(queryset)
if page is not None: if page is not None:
......
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