{% extends "planetary_operations/base.html" %} {% load static humanize %} {% block po_content %}

{{ plan.name }}

{{ plan.get_status_display }} · Updated {{ plan.updated_at }}

Adjust & build a copy Export build sheet
{% if plan.status == 'pending' or plan.status == 'running' %}
Reading character skills and building your network. This page will refresh when the calculation finishes.

If this remains queued, ask your administrator to check the AA Celery worker. You can leave this page and return to the saved plan.

{% elif plan.status == 'failed' %}
{{ plan.error }}
{% else %} {% if plan.replace_existing %}
Replacement plan: existing colonies must be removed or rebuilt in game to free the assigned capacity.
{% endif %}
FINISHED / PULL{{ plan.result.output|intcomma }}{{ plan.result.product }} · {{ plan.result.hours }} hours
PRODUCTION / DAY{{ plan.result.per_day|floatformat:2|intcomma }}{{ plan.result.per_week|floatformat:2|intcomma }} / week
DEPLOYMENT{{ plan.result.search.systems }} system{{ plan.result.search.systems|pluralize }}{{ plan.result.colonies|length }} colonies
JITA BUY / PULL{% if plan.valuation.available %}{{ plan.valuation.gross|floatformat:2|intcomma }}{% else %}Unavailable{% endif %}ISK · gross, filled volume only

Jita 4-4 valuation

{% if plan.valuation.error %}

{{ plan.valuation.error }}

{% elif plan.valuation.available %}

Best buy: {{ plan.valuation.best_buy|floatformat:2|intcomma }} ISK · Filled {{ plan.valuation.filled|intcomma }} / {{ plan.valuation.quantity|intcomma }} units.

{{ plan.valuation.per_day|floatformat:2|intcomma }} ISK/day · {{ plan.valuation.per_week|floatformat:2|intcomma }} ISK/week

{% if plan.valuation.unfilled %}

{{ plan.valuation.unfilled|intcomma }} units could not be valued against available qualifying buy orders.

{% endif %} {% else %}

No qualifying Jita 4-4 buy orders were returned. A missing price is not a zero-value estimate.

{% endif %}

{{ plan.valuation.note }} Price snapshot: {{ plan.valuation.fetched_at|default:"Unavailable" }}

{% csrf_token %}

Production build sheet

{{ plan.result.search.note }}

{% for colony in plan.result.colonies %}

COLONY {{ colony.id|add:1 }} · {{ colony.character }}

{{ colony.planet.name }}

{{ colony.planet_type }} · Planet ID {{ colony.planet.id }} · CCU {{ colony.ccu }}

CPU {{ colony.cpu|intcomma }} / {{ colony.capacity.cpu|intcomma }} · Power {{ colony.power|intcomma }} / {{ colony.capacity.power|intcomma }}

Install one matching command center and one launchpad. Service at least every {{ colony.service_hours }} hours; check actual pad inventory.

    {% for task in colony.facilities %}
  • {% if task.tier == 0 %}Extractor control unit: {{ task.name }} · {{ plan.config.heads }} heads{% else %}1 {% if task.tier == 1 %}basic processor{% elif task.tier == 4 %}high-tech plant{% else %}advanced processor{% endif %}: {{ task.name }} · Schematic {{ task.schematic }}{% endif %} — {{ task.quantity|intcomma }} units/pull{% if task.cycles %} ({{ task.cycles }} cycles){% endif %}
  • {% endfor %}
{% endfor %}

Material requirements

{% for row in plan.result.materials %}{% endfor %}
MaterialTierRequiredProduced / pullSurplus
{{ row.name }}P{{ row.tier }}{{ row.required|intcomma }}{{ row.produced|intcomma }}{{ row.surplus|intcomma }}
{% if plan.result.imports %}

Buy or supply each pull

{% endif %}

Routes, hauling & handoffs

Route inputs from the launchpad to each processor and route outputs back. Local routes stay on the colony. Transfer rows require POCO export/import and a character handoff where owners differ. Quantities are totals per pull; divide deliveries across the service intervals above.

{% for row in movements %}{% endfor %}
ActionFromToMaterialUnits / pullm³ / pull
{{ row.kind }}
{{ row.route }}{% if row.jumps %} ({{ row.jumps }} jumps){% endif %}
{{ row.source_label }}{{ row.target_label }}{{ row.name }}{{ row.quantity|intcomma }}{{ row.volume|floatformat:2|intcomma }}

Operating assumptions

Start with extraction/imports, fill each intermediate stage, then enable downstream production. The first pull will not match steady-state output unless intermediate buffers are prefilled.

{% endif %}
{% csrf_token %}
{% endblock %}