Implemented the feature to identify and update estimates based on the ACR value, consumption start date, and ramp-up

This commit is contained in:
2026-10-20 15:55:58 -03:00
parent 71d550dfb1
commit 60daabfe91
31 changed files with 2800 additions and 43 deletions

View File

@@ -15,6 +15,7 @@ function createOpportunitiesController({
requestOpportunitiesPage,
resetCrmServiceRequests,
resetWorkloadActions,
resetWorkloads,
requestOpptyProductsInBackground,
requestTokenRelayOnce,
ensureCurrentUser,
@@ -24,6 +25,7 @@ function createOpportunitiesController({
const dateRange = getFiscalPeriodRange(period, new Date());
const requestVersion = ++opportunitiesQueryState.periodRequestVersion;
resetWorkloadActions();
resetWorkloads();
await ensureCurrentUser();
if (!isCurrentPeriodRequest(requestVersion)) return;
@@ -109,6 +111,7 @@ function createOpportunitiesController({
function resetOpportunitiesTable() {
resetWorkloadActions();
resetWorkloads();
resetCrmServiceRequests();
opportunitiesFilterState.selectedStages = new Set(STAGE_OPTIONS);
opportunitiesFilterState.selectedStatuses = new Set(STATUS_OPTIONS);

View File

@@ -10,6 +10,7 @@ function createOpportunitiesTable({
createDetailLink,
createProductsCountButton,
createProductsRampBadge,
createProjectionIndicator,
createCrmServiceRequestBadge,
closeCrmSrPopover,
createWorkloadActionsBadge,
@@ -146,6 +147,9 @@ function createOpportunitiesTable({
if (srBadge) productActions.append(srBadge);
const actionsBadge = createWorkloadActionsBadge(item.OptyNumber);
if (actionsBadge) productActions.append(actionsBadge);
const projectionIndicator = createProjectionIndicator(productsResult, item,
productsContentState.expandedProductOptyNumbers.has(String(item.OptyNumber)));
if (projectionIndicator) productActions.append(projectionIndicator);
nameCellContent.append(opportunityLink, productActions);
cell.append(nameCellContent);
} else if (column.key === "optyNumber" && item.OptyNumber) {