修正
This commit is contained in:
74
compare_scenarios.py
Normal file
74
compare_scenarios.py
Normal file
@@ -0,0 +1,74 @@
|
||||
import psycopg2
|
||||
|
||||
conn = psycopg2.connect(
|
||||
host="192.168.0.61",
|
||||
port=55432,
|
||||
database="njts_acct",
|
||||
user="njts_app",
|
||||
password="njts_app2025"
|
||||
)
|
||||
|
||||
cur = conn.cursor()
|
||||
|
||||
# 现在的余额(ID 445已删除,ID 444还在)
|
||||
cur.execute("""
|
||||
SELECT
|
||||
SUM(CASE WHEN jl.debit > 0 THEN jl.debit ELSE 0 END) as debit_total,
|
||||
SUM(CASE WHEN jl.credit > 0 THEN jl.credit ELSE 0 END) as credit_total
|
||||
FROM journal_entries je
|
||||
LEFT JOIN journal_lines jl ON je.journal_entry_id = jl.journal_entry_id
|
||||
WHERE je.entry_date >= '2025-06-01'
|
||||
AND je.entry_date <= '2025-08-31'
|
||||
AND jl.account_id = 2
|
||||
AND je.is_deleted = false
|
||||
AND je.is_latest = true
|
||||
""")
|
||||
|
||||
result = cur.fetchone()
|
||||
if result:
|
||||
debit, credit = result
|
||||
debit = debit or 0
|
||||
credit = credit or 0
|
||||
balance = debit - credit
|
||||
print("=" * 100)
|
||||
print("【現在の状況】ID 445削除済み、ID 444はまだ存在")
|
||||
print("=" * 100)
|
||||
print(f"借方合計: {debit:>15,.0f}")
|
||||
print(f"貸方合計: {credit:>15,.0f}")
|
||||
print(f"期末残高: {balance:>15,.0f}")
|
||||
print(f"期待値: {14916322:>15,.0f}")
|
||||
print(f"差額: {abs(balance - 14916322):>15,.0f}")
|
||||
|
||||
# 现在检查删除 ID 444 后的情况
|
||||
print("\n" + "=" * 100)
|
||||
print("【シミュレーション】ID 444も削除した場合")
|
||||
print("=" * 100)
|
||||
|
||||
cur.execute("""
|
||||
SELECT
|
||||
SUM(CASE WHEN jl.debit > 0 THEN jl.debit ELSE 0 END) as debit_total,
|
||||
SUM(CASE WHEN jl.credit > 0 THEN jl.credit ELSE 0 END) as credit_total
|
||||
FROM journal_entries je
|
||||
LEFT JOIN journal_lines jl ON je.journal_entry_id = jl.journal_entry_id
|
||||
WHERE je.entry_date >= '2025-06-01'
|
||||
AND je.entry_date <= '2025-08-31'
|
||||
AND jl.account_id = 2
|
||||
AND je.is_deleted = false
|
||||
AND je.is_latest = true
|
||||
AND je.journal_entry_id != 444
|
||||
""")
|
||||
|
||||
result2 = cur.fetchone()
|
||||
if result2:
|
||||
debit2, credit2 = result2
|
||||
debit2 = debit2 or 0
|
||||
credit2 = credit2 or 0
|
||||
balance2 = debit2 - credit2
|
||||
print(f"借方合計: {debit2:>15,.0f}")
|
||||
print(f"貸方合計: {credit2:>15,.0f}")
|
||||
print(f"期末残高: {balance2:>15,.0f}")
|
||||
print(f"期待値: {14916322:>15,.0f}")
|
||||
print(f"差額: {abs(balance2 - 14916322):>15,.0f}")
|
||||
|
||||
cur.close()
|
||||
conn.close()
|
||||
Reference in New Issue
Block a user