orders: add search filter to deleted party list api

This commit is contained in:
behruz-dev
2025-11-11 15:33:44 +05:00
parent e35ff6bda7
commit 53c0b760e1
2 changed files with 8 additions and 0 deletions

View File

@@ -124,6 +124,7 @@ class DeletedParty(BaseModel):
party = models.ForeignKey(Party, on_delete=models.CASCADE, related_name='deleted_parties')
deleted_date = models.DateField(auto_now_add=True)
comment = models.CharField(max_length=200, null=True, blank=True)
user = models.ForeignKey(User, on_delete=models.SET_NULL, related_name='deleted_parties', null=True, blank=True)
def __str__(self):
return f'{self.party} deleted at {self.deleted_date}'

View File

@@ -97,7 +97,14 @@ class DeletedPartyListApiView(generics.GenericAPIView):
permission_classes = [HasRolePermission]
def get(self, request):
search = request.query_params.get('q')
deleted_parties = DeletedParty.objects.select_related('party')
if search:
deleted_parties = deleted_parties.filter(
Q(party__number__istartswith=search)|
Q(party__comment__istartswith=search)|
Q(command__istartswith=search)
)
page = self.paginate_queryset(deleted_parties)
if page is not None:
serializer = self.serializer_class(page, many=True)