ixg_platform/templates/ops/batch_list.html

85 lines
3.1 KiB
HTML

{% extends 'ops/base_ops.html' %}
{% block title %}Batches - IXG Operations{% endblock %}
{% block content %}
<div class=page-header d-flex justify-content-between align-items-center>
<h2>Processing Batches</h2>
<span class=text-secondary>{{ page_obj.paginator.count }} total</span>
</div>
<div class=filter-bar>
<form method=get class=row g-2 align-items-end>
<div class=col-auto>
<input type=text name=q class=form-control form-control-sm placeholder=Search reference... value={{ current_q }}>
</div>
<div class=col-auto>
<select name=status class=form-select form-select-sm>
<option value=>All Statuses</option>
{% for val, label in status_choices %}
<option value={{ val }} {% if current_status == val %}selected{% endif %}>{{ label }}</option>
{% endfor %}
</select>
</div>
<div class=col-auto>
<select name=grade class=form-select form-select-sm>
<option value=>All Grades</option>
{% for val, label in grade_choices %}
<option value={{ val }} {% if current_grade == val %}selected{% endif %}>{{ label }}</option>
{% endfor %}
</select>
</div>
<div class=col-auto>
<button type=submit class=btn btn-sm btn-primary>Filter</button>
<a href={% url 'ops:batch_list' %} class=btn btn-sm btn-outline-secondary>Clear</a>
</div>
</form>
</div>
<div class=stat-card p-0>
<table class=table table-hover mb-0>
<thead>
<tr>
<th>Reference</th>
<th>Grade</th>
<th>Weight (kg)</th>
<th>Status</th>
<th>Harvest Date</th>
<th>Created</th>
<th></th>
</tr>
</thead>
<tbody>
{% for b in batches %}
<tr>
<td><strong>{{ b.batch_reference }}</strong></td>
<td>{{ b.grade|default:'-' }}</td>
<td>{{ b.weight_kg|default:'-' }}</td>
<td><span class=badge bg-secondary badge-status>{{ b.get_status_display }}</span></td>
<td>{{ b.harvest_date|date:'d/m/Y'|default:'-' }}</td>
<td>{{ b.created_at|date:'d/m/Y' }}</td>
<td><a href={% url 'ops:batch_detail' b.pk %} class=btn btn-sm btn-outline-primary>View</a></td>
</tr>
{% empty %}
<tr><td colspan=7 class=text-muted text-center py-3>No batches found</td></tr>
{% endfor %}
</tbody>
</table>
</div>
{% if page_obj.paginator.num_pages > 1 %}
<nav class=mt-3>
<ul class=pagination pagination-sm justify-content-center>
{% if page_obj.has_previous %}
<li class=page-item><a class=page-link href=?page=1>&laquo;</a></li>
<li class=page-item><a class=page-link href=?page={{ page_obj.previous_page_number }}>{{ page_obj.previous_page_number }}</a></li>
{% endif %}
<li class=page-item active><span class=page-link>{{ page_obj.number }}</span></li>
{% if page_obj.has_next %}
<li class=page-item><a class=page-link href=?page={{ page_obj.next_page_number }}>{{ page_obj.next_page_number }}</a></li>
<li class=page-item><a class=page-link href=?page={{ page_obj.paginator.num_pages }}>&raquo;</a></li>
{% endif %}
</ul>
</nav>
{% endif %}
{% endblock %}