{% extends "base.html" %} {% block title %}Proposals - ICDEVβ„’{% endblock %} {% block content %} {% from "includes/classification_macros.html" import design_classification_banner %} {{ design_classification_banner('CUI') }} {% if pipeline_rollup %}
Weighted Pipeline Value
Total Potential
${{ "{:,.0f}".format(pipeline_rollup.total_potential_value) }}
Scored / Total
{{ pipeline_rollup.scored_count }} / {{ (pipeline_rollup.scored_count + pipeline_rollup.unscored_count) }}
{% endif %}
{{ opportunities | length }}
Total
{{ opportunities | selectattr('status', 'in', ['writing']) | list | length }}
In Writing
{{ opportunities | selectattr('status', 'equalto', 'review') | list | length }}
In Review
{{ opportunities | selectattr('status', 'equalto', 'submitted') | list | length }}
Submitted
{{ nearest_deadline if nearest_deadline is not none else 'β€”' }}
Days to Deadline
Executive Review Dashboard

Opportunities

{{ opportunities | length }}
{# Stage legend #} πŸ” Discover βš™οΈ Extract πŸ—ΊοΈ Map ✍️ Draft βœ… Submitted Export CSV
{% for opp in opportunities %} {# Determine pipeline stage #} {% set st = opp.status %} {% set cp = opp.capture_phase or '' %} {% if st in ('intake', 'bid_no_bid') %} {% set stage_icon = 'πŸ”' %}{% set stage_cls = 'prop-stage-discover' %}{% set row_color = 'rgba(74,144,217,.06)' %}{% set border_color = '#4a90d9' %} {% elif st == 'go' and cp == 'map' %} {% set stage_icon = 'πŸ—ΊοΈ' %}{% set stage_cls = 'prop-stage-map' %}{% set row_color = 'rgba(40,167,69,.06)' %}{% set border_color = '#4caf50' %} {% elif st == 'go' %} {% set stage_icon = 'βš™οΈ' %}{% set stage_cls = 'prop-stage-extract' %}{% set row_color = 'rgba(232,89,12,.06)' %}{% set border_color = '#f57c4a' %} {% elif st in ('writing', 'review', 'final') %} {% set stage_icon = '✍️' %}{% set stage_cls = 'prop-stage-draft' %}{% set row_color = 'rgba(156,39,176,.06)' %}{% set border_color = '#ce93d8' %} {% elif st == 'submitted' %} {% set stage_icon = 'βœ…' %}{% set stage_cls = 'prop-stage-submit' %}{% set row_color = 'rgba(40,167,69,.04)' %}{% set border_color = '#66bb6a' %} {% elif st == 'won' %} {% set stage_icon = 'πŸ†' %}{% set stage_cls = 'prop-stage-won' %}{% set row_color = 'rgba(0,137,123,.06)' %}{% set border_color = '#26a69a' %} {% else %} {% set stage_icon = 'β€”' %}{% set stage_cls = 'prop-stage-lost' %}{% set row_color = 'rgba(220,53,69,.04)' %}{% set border_color = '#ef5350' %} {% endif %} {% else %} {% endfor %}
Solicitation # Title Agency Due Days Type Set-Aside Status pWin Wtd Value Mgr
{{ stage_icon }} {{ opp.solicitation_number }} {{ opp.title[:52] }}{% if opp.title|length > 52 %}…{% endif %} {% if opp.section_count %} πŸ“„ {{ opp.section_count }} {% endif %} {{ opp.agency[:30] }}{% if opp.agency|length > 30 %}…{% endif %} {{ opp.due_date or 'β€”' }} {{ opp.days_left if opp.days_left is not none else 'β€”' }} {{ opp.proposal_type }} {{ opp.set_aside_type or 'β€”' }} {{ stage_icon }} {{ st | replace('_',' ') | title }} {% if opp.section_count %} WG {% endif %} {% set display_pwin = opp.computed_pwin_pct if opp.computed_pwin_pct is not none else opp.win_probability %} {% if display_pwin is not none %} {% set pct = display_pwin | int %} {% if pct >= 70 %}{% set bar_color = 'var(--status-green,#4caf50)' %} {% elif pct >= 40 %}{% set bar_color = 'var(--status-yellow,#ffc107)' %} {% else %}{% set bar_color = 'var(--status-red,#dc3545)' %}{% endif %}
{{ pct }}% {% if opp.has_pwin_model %} β„Ή {% else %} {% endif %}
{% else %} β€” {% endif %}
{% if opp.weighted_value is not none %}${{ "{:,.0f}".format(opp.weighted_value) }} {% else %}β€”{% endif %} {{ opp.proposal_manager or 'β€”' }}
No opportunities yet. Click "+ New Opportunity" to create one.
Showing {{ opportunities | length }} rows
{% endblock %} {% block scripts %} {% endblock %}