{% extends "base.html" %} {% from "components/ui.html" import page_header %} {% block content %} {% set breadcrumbs = [ {'text': 'Inventory', 'url': url_for('inventory.list_stock_items')}, {'text': 'Transfers'} ] %} {{ page_header( icon_class='fas fa-truck', title_text='Stock Transfers', subtitle_text='View transfers between warehouses', breadcrumbs=breadcrumbs, actions_html='New Transfer' if (current_user.is_admin or has_permission('transfer_stock')) else None ) }}
{% for transfer_id, movements in transfer_groups.items() %} {% if movements|length >= 2 %} {% set out_movement = movements|selectattr('quantity', 'lt', 0)|first %} {% set in_movement = movements|selectattr('quantity', 'gt', 0)|first %} {% if out_movement and in_movement %} {% endif %} {% endif %} {% else %} {% endfor %}
{{ _('Date') }} {{ _('Item') }} {{ _('From Warehouse') }} {{ _('To Warehouse') }} {{ _('Quantity') }} {{ _('User') }}
{{ out_movement.moved_at.strftime('%Y-%m-%d %H:%M') if out_movement.moved_at else '—' }} {{ out_movement.stock_item.name }} ({{ out_movement.stock_item.sku }}) {{ out_movement.warehouse.code }} {{ in_movement.warehouse.code }} {{ in_movement.quantity }} {{ out_movement.moved_by_user.username if out_movement.moved_by_user else '—' }}
{{ _('No transfers found.') }}
{% endblock %}