добавил отображение прогресса
All checks were successful
Deploy timelaps / deploy (push) Successful in 5s

This commit is contained in:
ack
2026-04-19 20:14:52 +03:00
parent c220a3efca
commit cc07dd4373
2 changed files with 18 additions and 6 deletions

View File

@@ -1,6 +1,9 @@
{% extends 'base.html' %}
{% block content %}
{% if has_active_jobs %}
<meta http-equiv="refresh" content="5">
{% endif %}
<div class="d-flex justify-content-between align-items-center mb-4">
<h2>Очередь задач</h2>
<div class="d-flex gap-2">
@@ -56,12 +59,19 @@
<td>{{ job.get_sampling_preset_display }}</td>
<td>{{ job.fps }}</td>
<td>{{ job.get_status_display }}</td>
<td>
{% if job.status == 'success' %}
100%
{% else %}
{{ job.progress_percent }}%
{% endif %}
<td style="min-width: 170px;">
<div class="progress" role="progressbar" aria-valuenow="{{ job.progress_percent }}" aria-valuemin="0" aria-valuemax="100">
<div
class="progress-bar {% if job.status == 'error' %}bg-danger{% elif job.status == 'success' %}bg-success{% else %}progress-bar-striped progress-bar-animated{% endif %}"
style="width: {% if job.status == 'success' %}100{% else %}{{ job.progress_percent }}{% endif %}%"
>
{% if job.status == 'success' %}
100%
{% else %}
{{ job.progress_percent }}%
{% endif %}
</div>
</div>
</td>
<td>
{% if job.status == 'error' and job.error_message %}

View File

@@ -64,6 +64,7 @@ def job_list(request):
if camera_id:
qs = qs.filter(camera_id=camera_id)
jobs = qs.order_by('-created_at')[:200]
has_active_jobs = qs.filter(status__in=[TimelapseJob.Status.PLANNED, TimelapseJob.Status.RUNNING]).exists()
return render(
request,
'camlaps/job_list.html',
@@ -71,6 +72,7 @@ def job_list(request):
'jobs': jobs,
'queue_started': request.GET.get('started'),
'retried': request.GET.get('retried'),
'has_active_jobs': has_active_jobs,
},
)