feat(sales): cancellation awareness in forecast summary, productSequence ordering

- Show fully/partially cancelled products in forecast summary table
- Add cancellation KPI card with full/partial breakdown
- Fully cancelled rows: strikethrough + reduced opacity + red badge
- Partially cancelled rows: amber border + badge + effective/total qty
- Add productSequence prop to ProductsTab for custom ordering
- Fall back to CW sequenceNumber when no productSequence set
- Add productSequence field to SalesOpportunity interface
This commit is contained in:
2026-03-01 18:02:46 -06:00
parent 4bec198db6
commit 9145ea5ba4
10 changed files with 1135 additions and 263 deletions
@@ -216,12 +216,13 @@
</div>
<div class="detail-pane-body">
{#if activeTab === "Overview"}
<OverviewTab {opportunity} {notes} {contacts} />
<OverviewTab {opportunity} {notes} {contacts} {products} />
{:else if activeTab === "Products"}
<ProductsTab
{products}
accessToken={data.accessToken}
{opportunityId}
productSequence={opportunity?.productSequence ?? null}
/>
{:else if activeTab === "Notes"}
<NotesTab