This commit is contained in:
admin
2026-02-20 15:47:27 +09:00
parent c60cbf2d9a
commit 584530937b
108 changed files with 12112 additions and 416 deletions

119
check_trial_balance.py Normal file
View File

@@ -0,0 +1,119 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os
import sys
# 添加backend目录到路径
sys.path.insert(0, os.path.join(os.path.dirname(__file__), 'backend'))
os.environ.setdefault("DB_HOST", "localhost")
os.environ.setdefault("DB_PORT", "5432")
os.environ.setdefault("DB_NAME", "accounting_db")
os.environ.setdefault("DB_USER", "postgres")
os.environ.setdefault("DB_PASSWORD", "root")
from app.core.database import get_connection
def check_accounts_data():
"""检查701账户的数据"""
with get_connection() as conn:
with conn.cursor() as cur:
# 查询原始交易数据
print("=== 521年6月份701账户的原始交易数据 ===")
sql = """
SELECT
e.journal_entry_id,
e.entry_date,
e.description,
l.account_id,
a.account_name,
COALESCE(l.debit, 0) as debit,
COALESCE(l.credit, 0) as credit,
e.is_deleted,
e.parent_entry_id
FROM journal_lines l
JOIN journal_entries e ON e.journal_entry_id = l.journal_entry_id
JOIN accounts a ON a.account_id = l.account_id
WHERE a.account_id = 701
AND e.entry_date >= '2025-06-01'
AND e.entry_date <= '2025-06-30'
ORDER BY e.entry_date, e.journal_entry_id
"""
cur.execute(sql)
rows = cur.fetchall()
total_debit_all = 0
total_credit_all = 0
total_debit_filtered = 0
total_credit_filtered = 0
for row in rows:
journal_id, date, desc, account_id, account_name, debit, credit, is_deleted, parent_id = row
print(f"ID:{journal_id:4d} | 日期:{date} | {desc:30s} | 借:{debit:12} | 贷:{credit:12} | 删除:{is_deleted} | Parent:{parent_id}")
total_debit_all += debit
total_credit_all += credit
# 只统计未删除、且不是被修正元的交易
if not is_deleted and parent_id is None:
total_debit_filtered += debit
total_credit_filtered += credit
print()
print(f"全部交易合计 - 借方: {total_debit_all:>12,} | 贷方: {total_credit_all:>12,}")
print(f"过滤后合计 - 借方: {total_debit_filtered:>12,} | 贷方: {total_credit_filtered:>12,}")
# 查看是否有逆仕訳标记
print()
print("=== 检查是否有逆仕訳 ===")
sql2 = """
SELECT COUNT(*) as cnt
FROM journal_entries
WHERE entry_date >= '2025-06-01'
AND entry_date <= '2025-06-30'
AND description LIKE '%[逆仕訳]%'
"""
cur.execute(sql2)
result = cur.fetchone()
print(f"标记为逆仕訳的交易数: {result['cnt']}")
# 检查是否有parent_entry_id的交易
print()
print("=== 检查修正記録 ===")
sql3 = """
SELECT COUNT(*) as cnt
FROM journal_entries
WHERE entry_date >= '2025-06-01'
AND entry_date <= '2025-06-30'
AND parent_entry_id IS NOT NULL
"""
cur.execute(sql3)
result = cur.fetchone()
print(f"有parent_entry_id的交易数: {result['cnt']}")
# 查看哪些交易是作为修正元的
print()
print("=== 作为修正元的交易 ===")
sql4 = """
SELECT DISTINCT parent_entry_id
FROM journal_entries
WHERE parent_entry_id IS NOT NULL
AND parent_entry_id IN (
SELECT journal_entry_id
FROM journal_entries
WHERE entry_date >= '2025-06-01'
AND entry_date <= '2025-06-30'
)
"""
cur.execute(sql4)
results = cur.fetchall()
for result in results:
print(f" 被修正的交易ID: {result['parent_entry_id']}")
if __name__ == "__main__":
check_accounts_data()