Добавил фильтр статуса на страницу списания
All checks were successful
Deploy MES Core / deploy (push) Successful in 12s

This commit is contained in:
2026-04-14 07:43:36 +03:00
parent 49e9080d0e
commit 9006f4c5ab
2 changed files with 45 additions and 8 deletions

View File

@@ -5148,6 +5148,7 @@ class LegacyWriteOffsView(LoginRequiredMixin, TemplateView):
start_date = (self.request.GET.get('start_date') or '').strip()
end_date = (self.request.GET.get('end_date') or '').strip()
is_synced = (self.request.GET.get('is_synced') or '').strip()
reset = self.request.GET.get('reset')
if not start_date or not end_date or reset:
@@ -5158,6 +5159,8 @@ class LegacyWriteOffsView(LoginRequiredMixin, TemplateView):
ctx['start_date'] = start_date
ctx['end_date'] = end_date
ctx['is_synced'] = is_synced if is_synced in ['0', '1'] else ''
ctx['is_synced'] = is_synced if is_synced in ['0', '1'] else ''
reports_qs = (
CuttingSession.objects.select_related('machine', 'operator')
@@ -5165,6 +5168,12 @@ class LegacyWriteOffsView(LoginRequiredMixin, TemplateView):
.order_by('-date', '-id')
)
if is_synced in ['0', '1']:
reports_qs = reports_qs.filter(is_synced_1c=bool(int(is_synced)))
if is_synced in ['0', '1']:
reports_qs = reports_qs.filter(is_synced_1c=bool(int(is_synced)))
reports = list(
reports_qs.prefetch_related(
'tasks__task__deal',
@@ -6149,6 +6158,7 @@ class WriteOffsView(LoginRequiredMixin, TemplateView):
start_date = (self.request.GET.get('start_date') or '').strip()
end_date = (self.request.GET.get('end_date') or '').strip()
is_synced = (self.request.GET.get('is_synced') or '').strip()
reset = self.request.GET.get('reset')
if not start_date or not end_date or reset:
@@ -6159,6 +6169,7 @@ class WriteOffsView(LoginRequiredMixin, TemplateView):
ctx['start_date'] = start_date
ctx['end_date'] = end_date
ctx['is_synced'] = is_synced if is_synced in ['0', '1'] else ''
reports_qs = (
CuttingSession.objects.select_related('machine', 'operator')
@@ -6166,6 +6177,9 @@ class WriteOffsView(LoginRequiredMixin, TemplateView):
.order_by('-date', '-id')
)
if is_synced in ['0', '1']:
reports_qs = reports_qs.filter(is_synced_1c=bool(int(is_synced)))
reports = list(
reports_qs.prefetch_related(
'tasks__task__deal',
@@ -6218,6 +6232,9 @@ class WriteOffsView(LoginRequiredMixin, TemplateView):
.filter(status__in=['done', 'partial'], date__gte=start_date, date__lte=end_date)
.order_by('-date', '-id')
)
if is_synced in ['0', '1']:
items_qs = items_qs.filter(is_synced_1c=bool(int(is_synced)))
ctx['items'] = list(items_qs)
return ctx
@@ -6241,4 +6258,9 @@ class WriteOffsView(LoginRequiredMixin, TemplateView):
start_date = (request.POST.get('start_date') or '').strip()
end_date = (request.POST.get('end_date') or '').strip()
return redirect(f"{reverse_lazy('writeoffs')}?start_date={start_date}&end_date={end_date}")
is_synced = (request.POST.get('is_synced') or '').strip()
url = f"{reverse_lazy('writeoffs')}?start_date={start_date}&end_date={end_date}"
if is_synced in ['0', '1']:
url += f"&is_synced={is_synced}"
return redirect(url)