{% extends 'ewoooc_base.html' %} {% block title %}營運成長報表 - EwoooC{% endblock %} {% block extra_css %} {% endblock %} {% macro ga_chart_snapshot(labels, values, mode='currency') %}
{% for label in labels %} {% set val = values[loop.index0]|default(0) %} {{ label }} {% if mode == 'pct' %}{{ "{:+.1f}%".format(val) }} {% else %}${{ "{:,.0f}".format(val) }}{% endif %} {% endfor %}
{% endmacro %} {% block ewooo_content %}
{% include 'components/_analysis_report_tabs.html' %} {# ── Page head ──────────────────────────────────── #}

營運成長策略報表

數據更新至 {{ chart_data.labels[-1] if chart_data.labels else '-' }}
{% if is_empty_state|default(false) %}

尚未匯入可分析的業績資料

{{ empty_message|default('匯入月度業績資料後,這裡會顯示 YTD、AOV、訂單數與成長趨勢。') }}

{% endif %} {# ── KPI Row (3 cards) ──────────────────────────── #}
YTD 本年度累計業績 ({{ kpi.current_year }})
${{ "{:,.0f}".format(kpi.ytd_revenue) }}
YoY Growth {{ "{:+.1f}%".format(kpi.ytd_growth) }} vs 去年同期
最新月平均單價
${{ "{:,.0f}".format(kpi.recent_aov) }}
月結銷售額 ÷ 銷量
總銷量
{{ "{:,.0f}".format(kpi.total_orders) }}
全時期累計件數
{# ── Charts Row 1 ──────────────────────────────── #}
月營收與年增率 (Revenue & YoY)
{{ ga_chart_snapshot(chart_data.labels, chart_data.revenue, 'currency') }}
月增率分析 (MoM)
{{ ga_chart_snapshot(chart_data.labels, chart_data.mom, 'pct') }}
{# ── Charts Row 2 ──────────────────────────────── #}
平均單價趨勢
{{ ga_chart_snapshot(chart_data.labels, chart_data.aov, 'currency') }}
獲利能力分析 (Gross Margin %)
{{ ga_chart_snapshot(chart_data.labels, chart_data.margin_rate, 'pct') }}
PChome 價格壓力趨勢
{{ ga_chart_snapshot(chart_data.labels, chart_data.competitor_gap_pct, 'pct') }}
比價資料品質
{% set coverage = chart_data.competitor_coverage | default({}) %}
高信心門檻 {{ coverage.match_score_floor | default(0.76) }} 決策支援覆蓋率 {{ coverage.decision_support_rate | default(coverage.decision_ready_rate | default(0)) }}% 精準可告警覆蓋 {{ coverage.decision_ready_rate | default(0) }}% 身份配對 {{ coverage.valid_matches | default(0) | number_format }} 身份覆蓋率 {{ coverage.match_rate | default(0) }}% 價格新鮮 {{ coverage.fresh_matches | default(0) | number_format }} 新鮮率 {{ coverage.fresh_match_rate | default(0) }}% 價格過期 {{ coverage.stale_matches | default(0) | number_format }} 未知新鮮度 {{ coverage.unknown_freshness_matches | default(0) | number_format }} 未形成有效身份配對 {{ coverage.pending | default(0) | number_format }} 需單位價覆核 {{ coverage.unit_comparable_count | default(0) | number_format }} 型錄/任選可比 {{ coverage.catalog_comparable_count | default(0) | number_format }} 重算待人工覆核 {{ coverage.rescore_accepted_count | default(0) | number_format }} 人工採用 {{ coverage.manual_accept_count | default(0) | number_format }} 人工否決 {{ coverage.manual_reject_count | default(0) | number_format }} 人工單位價 {{ coverage.manual_unit_price_count | default(0) | number_format }}
{% endblock %} {% block extra_js %} {% endblock %}