summaryrefslogtreecommitdiff
path: root/lib/site-visit/client-site-visit-wrapper.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'lib/site-visit/client-site-visit-wrapper.tsx')
-rw-r--r--lib/site-visit/client-site-visit-wrapper.tsx21
1 files changed, 17 insertions, 4 deletions
diff --git a/lib/site-visit/client-site-visit-wrapper.tsx b/lib/site-visit/client-site-visit-wrapper.tsx
index 6801445d..aa466771 100644
--- a/lib/site-visit/client-site-visit-wrapper.tsx
+++ b/lib/site-visit/client-site-visit-wrapper.tsx
@@ -36,10 +36,23 @@ function getTotalShiAttendees(shiAttendees: Record<string, unknown> | null): num
let total = 0
Object.entries(shiAttendees).forEach(([, value]) => {
- if (value && typeof value === 'object' && 'checked' in value && 'count' in value) {
- const attendee = value as { checked: boolean; count: number }
- if (attendee.checked) {
- total += attendee.count
+ if (value && typeof value === 'object' && 'checked' in value) {
+ const attendeeData = value as {
+ checked: boolean;
+ attendees?: Array<{ name: string; department?: string; email?: string }>;
+ // 기존 구조 호환성
+ count?: number;
+ }
+
+ if (attendeeData.checked) {
+ // 새로운 구조인 경우 (attendees 배열)
+ if (attendeeData.attendees && Array.isArray(attendeeData.attendees)) {
+ total += attendeeData.attendees.length
+ }
+ // 기존 구조인 경우 (count)
+ else if (attendeeData.count !== undefined) {
+ total += attendeeData.count
+ }
}
}
})