修正
This commit is contained in:
48
check_revisions.py
Normal file
48
check_revisions.py
Normal 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()
|
||||
Reference in New Issue
Block a user