{% load i18n %}
{% if not cost.has_routing %}
{% trans "No manufacturing routing defined — add operations in the mBOM tab." %}
{% else %}
{% trans "Assembly Cost Breakdown" %} {% trans "batch" %} × {{ cost.batch_size }}
{% trans "Component" %} {% trans "Per Unit" %} {% trans "Batch Total" %}
{% trans "Material (eBOM)" %} {{ cost.per_unit_material_min|floatformat:4 }} EUR {{ cost.material_cost_min|floatformat:4 }} EUR
{% trans "Labor" %} {{ cost.per_unit_labor|floatformat:4 }} EUR {{ cost.labor_cost|floatformat:4 }} EUR
{% trans "Machine" %} {{ cost.per_unit_machine|floatformat:4 }} EUR {{ cost.machine_cost|floatformat:4 }} EUR
{% trans "Total Assembly" %} {{ cost.per_unit_total_min|floatformat:4 }} EUR —
{% trans "CO₂ Estimate" %} {{ cost.co2_kg|floatformat:4 }} kg ({% trans "total batch" %})
{% blocktrans with size=cost.batch_size %} Costs shown for a standard batch of {{ size }} unit(s). Setup costs are amortised across the batch. {% endblocktrans %}
{% if op_breakdown %}
{% trans "Operation Detail" %}
{% for op in op_breakdown %}
{{ op.sequence_number }}
{{ op.name }}
{{ op.labor_rate_name }} {% if op.machine_name != "—" %} / {{ op.machine_name }}{% endif %} • Setup {{ op.setup_time|floatformat:1 }}min • Cycle {{ op.cycle_time|floatformat:2 }}min/unit {% if op.sub_count > 0 %} • +{{ op.sub_count }} sub-step(s) {% endif %}
/unit
{{ op.per_unit_cost|floatformat:4 }} EUR
{% endfor %}
{% endif %} {% endif %}