Files
arbit/templates/inventory/dashboard.html
2026-05-18 14:08:13 -04:00

63 lines
2.8 KiB
HTML

{% extends "base.html" %}
{% block title %}Dashboard | Arbit{% endblock %}
{% block content %}
<section class="grid grid-3">
<div class="card"><div class="muted">Items</div><h2>{{ stats.item_count }}</h2></div>
<div class="card"><div class="muted">Sold</div><h2>{{ stats.sold_count }}</h2></div>
<div class="card"><div class="muted">Inventory cost</div><h2>${{ stats.inventory_value }}</h2></div>
</section>
<section style="margin-top: 1rem; display:flex; justify-content:space-between; align-items:center; gap:1rem;">
<div style="flex:1">
<h2>Current items</h2>
<div class="muted">Focus on inventory, suggested resale pricing, and quick actions.</div>
</div>
<div>
<a href="{% url 'item-create' %}" style="background:var(--accent); color:white; padding:0.6rem 1rem; border-radius:10px;">Add item</a>
</div>
</section>
<section class="card" style="margin-top: 1rem;">
<h3>Search inventory</h3>
<form method="get" class="grid grid-3">
{{ item_filter.query.label_tag }}{{ item_filter.query }}
{{ item_filter.status.label_tag }}{{ item_filter.status }}
{{ item_filter.category.label_tag }}{{ item_filter.category }}
{{ item_filter.created_by.label_tag }}{{ item_filter.created_by }}
{{ item_filter.min_purchase_price.label_tag }}{{ item_filter.min_purchase_price }}
{{ item_filter.max_purchase_price.label_tag }}{{ item_filter.max_purchase_price }}
{{ item_filter.min_profit.label_tag }}{{ item_filter.min_profit }}
<div style="grid-column: 1 / -1;"><button type="submit">Filter</button></div>
</form>
</section>
<section class="card" style="margin-top: 1rem; overflow-x: auto;">
<h3>Latest items</h3>
<table>
<thead>
<tr><th>Title</th><th>Category</th><th>Status</th><th>Cost</th><th>Creator</th><th>Profit</th></tr>
</thead>
<tbody>
{% for item in items %}
<tr>
<td><a href="{{ item.get_absolute_url }}">{{ item.title }}</a></td>
<td>{{ item.category }}</td>
<td>{{ item.get_status_display }}</td>
<td>${{ item.purchase_price }}</td>
<td>{{ item.created_by.username }}</td>
<td>{% if item.profit is not None %}${{ item.profit }}{% else %}<span class="muted">Pending sale</span>{% endif %}</td>
</tr>
{% empty %}
<tr><td colspan="6" class="muted">No items yet.</td></tr>
{% endfor %}
</tbody>
</table>
</section>
<section class="grid grid-3" style="margin-top: 1rem;">
<div class="card"><div class="muted">Inventory cost</div><h2>${{ stats.inventory_value }}</h2></div>
<div class="card"><div class="muted">Profit total</div><h2>${{ stats.profit_total }}</h2></div>
<div class="card"><div class="muted">Sold count</div><h2>{{ stats.sold_count }}</h2></div>
</section>
{% endblock %}