This commit is contained in:
admin
2026-03-03 00:01:43 +09:00
parent 3b028b8fc0
commit 068903b933
31 changed files with 3204 additions and 889 deletions

48
check_revisions.py Normal file
View File

@@ -0,0 +1,48 @@
#!/usr/bin/env python3
import psycopg2
from psycopg2.extras import RealDictCursor
import os
# 接続設定
conn = psycopg2.connect(
user=os.getenv('DB_USER', 'postgres'),
password=os.getenv('DB_PASSWORD', 'postgres'),
host='localhost',
port='5432',
database=os.getenv('DB_NAME', 'accounting_db')
)
cur = conn.cursor(cursor_factory=RealDictCursor)
# 修正版本revision_count > 1があるか確認
cur.execute("""
SELECT COUNT(*) as total,
COUNT(CASE WHEN is_latest = true THEN 1 END) as latest_count,
COUNT(CASE WHEN revision_count > 1 THEN 1 END) as revised_count,
MAX(revision_count) as max_revision
FROM journal_entries
WHERE is_deleted = false
""")
result = cur.fetchone()
print("📊 修正版本統計")
print(f" • 全記録: {result['total']}")
print(f" • 最新版本: {result['latest_count']}")
print(f" • 修正版本: {result['revised_count']}")
print(f" • 最大改版數: {result['max_revision']}")
# 修正版本の例を表示
if result['revised_count'] > 0:
print("\n📝 修正版本の例(最初の 5 件):")
cur.execute("""
SELECT journal_entry_id, entry_date, description, revision_count, is_latest
FROM journal_entries
WHERE revision_count > 1 AND is_deleted = false
ORDER BY revision_count DESC, journal_entry_id DESC
LIMIT 5
""")
for row in cur.fetchall():
print(f" • ID {row['journal_entry_id']}: {row['entry_date']} - {row['description']} (v{row['revision_count']}, latest={row['is_latest']})")
cur.close()
conn.close()