|
|
@@ -241,6 +241,7 @@ const normalizeSummaryMeeting = (
|
|
|
companyName: String(data.companyName || ''),
|
|
|
meetingDate: data.meetingDate as number | string | Date | undefined,
|
|
|
support: String(data.support || ''),
|
|
|
+ cumulative: data.cumulative as boolean | undefined,
|
|
|
meetingSeries: parseMeetingSeries(data.meetingSeries)
|
|
|
},
|
|
|
details: details.map((item) => normalizeDetailItem(item as Record<string, unknown>))
|
|
|
@@ -296,6 +297,7 @@ const summaryDetailRows = computed<SummaryDetailItem[]>(() =>
|
|
|
summaryDetailKey: `${item.key}-${detailIndex}`,
|
|
|
meetingKey: item.key,
|
|
|
companyName,
|
|
|
+ cumulative: item.meeting.cumulative,
|
|
|
companyFilterValue,
|
|
|
deptId: item.meeting.deptId
|
|
|
}))
|
|
|
@@ -333,7 +335,12 @@ const formatSummaryNumber = (value: number) =>
|
|
|
})
|
|
|
|
|
|
const getDetailSummaryTotal = (field: DetailSummaryField) =>
|
|
|
- filteredDetailRows.value.reduce((sum, item) => sum + Number(item[field] || 0), 0)
|
|
|
+ filteredDetailRows.value.reduce((sum, item) => {
|
|
|
+ if (item.companyFilterValue === filterForm.companyFilterValue || (item as any).cumulative) {
|
|
|
+ return sum + Number(item[field] || 0)
|
|
|
+ }
|
|
|
+ return sum
|
|
|
+ }, 0)
|
|
|
|
|
|
const detailSummaryCards = computed(() =>
|
|
|
detailSummaryFields.map((field) => ({
|