This commit is contained in:
freedakgmail
2025-11-23 16:46:36 +08:00
parent 8c53014714
commit d7bb86375d
18 changed files with 260 additions and 191 deletions
+13 -3
View File
@@ -168,6 +168,9 @@ export default function MembersPage() {
sortedFamilyMembers.forEach(member => {
result.push(member)
// 计算该家庭单元的成员数(主成员 + 配偶)
let familyUnitSize = 1 // 主成员自己
// 如果有配偶,将配偶紧跟在后面
if (member.spouseIds && member.spouseIds.length > 0) {
member.spouseIds.forEach(spouseId => {
@@ -175,11 +178,18 @@ export default function MembersPage() {
if (spouse && !processedSpouses.has(spouseId)) {
result.push(spouse)
processedSpouses.add(spouseId)
familyUnitSize++
}
})
} else {
// 没有配偶,添加空白占位符
result.push({ id: `placeholder-${member.id}`, isPlaceholder: true } as any)
}
// 计算需要添加的占位符数量,确保填满4的倍数
// 例如:1个主成员 + 1个配偶 = 2人,需要添加2个占位符
// 例如:1个主成员 + 3个配偶 = 4人,不需要占位符
// 例如:1个主成员 + 0个配偶 = 1人,需要添加3个占位符
const placeholdersNeeded = (4 - (familyUnitSize % 4)) % 4
for (let i = 0; i < placeholdersNeeded; i++) {
result.push({ id: `placeholder-${member.id}-${i}`, isPlaceholder: true } as any)
}
})