Add: resolved tickets filter

This commit is contained in:
Stepan Zhukovsky 2023-09-01 17:58:58 +09:00
parent 40a07bf78d
commit d314fe7e4e
2 changed files with 23 additions and 15 deletions

View File

@ -78,27 +78,27 @@ class ListAllTickets(LoginRequiredMixin, PageTitleViewMixin, generic.ListView):
def get_queryset(self): def get_queryset(self):
search_query = self.request.GET.get('search', '') search_query = self.request.GET.get('search', '')
if search_query: resolved_status_query = self.request.GET.get('resolved', '')
query_list = [] if search_query or resolved_status_query:
try:
for item in search_query.split(','):
query_list.append(int(item))
except ValueError:
return super().get_queryset()
queryset = self.model.objects.filter(
Q(number__in=query_list) | Q(number__icontains=query_list[0])
)
self.paginate_by = 100 # ? fake disable pagination) self.paginate_by = 100 # ? fake disable pagination)
if search_query:
query_list = []
try:
for item in search_query.split(','):
query_list.append(int(item))
except ValueError:
return super().get_queryset()
queryset = self.model.objects.filter(
Q(number__in=query_list) | Q(number__icontains=query_list[0]) # noqa:E501
)
if resolved_status_query:
queryset = self.model.objects.filter(Q(resolved=True))
return queryset return queryset
return super().get_queryset() return super().get_queryset()
class ListPlatformTickets( class ListPlatformTickets(LoginRequiredMixin, PageTitleViewMixin, generic.ListView): # noqa:E501
LoginRequiredMixin,
PageTitleViewMixin,
generic.ListView
):
model = Ticket model = Ticket
template_name = 'collector/tickets.html' template_name = 'collector/tickets.html'
context_object_name = 'tickets' context_object_name = 'tickets'

View File

@ -53,6 +53,14 @@
</li> </li>
{% endfor %} {% endfor %}
<li><hr class="dropdown-divider" /></li> <li><hr class="dropdown-divider" /></li>
<li>
<a
class="dropdown-item {% if request.GET.resolved %}active{% endif %}"
href="{% url 'collector:tickets' %}?resolved=true">
<i class="bi bi-check-circle"></i> Resolved
</a>
</li>
<li><hr class="dropdown-divider" /></li>
<li> <li>
<a class="dropdown-item" href="{% url 'collector:tickets' %}"> <a class="dropdown-item" href="{% url 'collector:tickets' %}">
<i class="bi bi-funnel"></i> Reset filter <i class="bi bi-funnel"></i> Reset filter