feat: show change timestamps in history compare

This commit is contained in:
hyunho
2026-03-30 10:10:44 +09:00
parent bbebe24763
commit 8d0cc78abc
3 changed files with 29 additions and 2 deletions

View File

@@ -639,7 +639,8 @@ def fetch_members_as_of(cur, as_of: datetime) -> list[dict[str, object]]:
mv.photo_url,
COALESCE(m.sort_order, 2147483647) AS sort_order,
mv.created_at,
mv.valid_from AS updated_at
mv.valid_from AS updated_at,
mv.valid_to AS history_valid_to
FROM member_versions mv
LEFT JOIN members m
ON m.id = mv.member_id
@@ -707,6 +708,7 @@ def build_member_compare_items(from_items: list[dict[str, object]], to_items: li
"status": "added",
"status_label": "신규",
"categories": ["신규"],
"changed_at": after.get("updated_at"),
"changes": [],
"before_lines": [],
"after_lines": build_summary(after),
@@ -721,6 +723,7 @@ def build_member_compare_items(from_items: list[dict[str, object]], to_items: li
"status": "removed",
"status_label": "삭제",
"categories": ["삭제"],
"changed_at": before.get("history_valid_to") or before.get("updated_at"),
"changes": [],
"before_lines": build_summary(before),
"after_lines": [],
@@ -757,6 +760,7 @@ def build_member_compare_items(from_items: list[dict[str, object]], to_items: li
"status": "updated",
"status_label": "변경",
"categories": sorted(categories),
"changed_at": after.get("updated_at") or before.get("updated_at"),
"changes": changes,
"before_lines": [f"{change['label']}: {change['before'] or '-'}" for change in changes],
"after_lines": [f"{change['label']}: {change['after'] or '-'}" for change in changes],