finance: add new api

This commit is contained in:
behruz-dev
2025-11-10 16:10:42 +05:00
parent 8f442780ed
commit 5606c96ab2
4 changed files with 45 additions and 1 deletions

View File

@@ -0,0 +1,18 @@
from rest_framework import serializers
from core.apps.finance.models import DeletedExpence
from core.apps.finance.serializers.expence import ExpenceListSerializer
class DeletedExpenceListSerializer(serializers.ModelSerializer):
expence = ExpenceListSerializer()
class Meta:
model = DeletedExpence
fields = [
'id',
'created_at',
'comment',
'expence',
]

View File

@@ -11,6 +11,7 @@ from core.apps.finance.views import income_contract as ic_views
from core.apps.finance.views import expence_contract as ec_views
from core.apps.finance.views import expence_chat as ex_chat_views
from core.apps.finance.views import income_chat as in_chat_views
from core.apps.finance.views import deleted_expence as deleted_expence_views
urlpatterns = [
@@ -110,4 +111,9 @@ urlpatterns = [
)),
]
)),
path('deleted_expence/', include(
[
path('list/', deleted_expence_views.DeletedExpenceListApiView.as_view()),
],
)),
]

View File

@@ -0,0 +1,20 @@
from rest_framework import generics, response
from rest_framework.response import Response
from core.apps.finance.models import DeletedExpence
from core.apps.finance.serializers.deleted_expence import DeletedExpenceListSerializer
from core.apps.accounts.permissions.permissions import HasRolePermission
class DeletedExpenceListApiView(generics.GenericAPIView):
serializer_class = DeletedExpenceListSerializer
queryset = DeletedExpence.objects.select_related('expence').order_by('-created_at')
permission_classes = [HasRolePermission]
def get(self, request):
page = self.paginate_queryset(queryset=self.queryset)
if page is not None:
serializer = self.serializer_class(page, many=True)
return self.get_paginated_response(serializer.data)
serializer = self.serializer_class(self.queryset, many=True)
return Response(serializer.data)