Files
openclaw-config/workspace-finances/query_jiayan.py
T

48 lines
1.6 KiB
Python

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import json, pymysql
cfg = json.load(open('db_config.json'))
conn = pymysql.connect(host=cfg['host'], port=cfg['port'], user=cfg['user'],
password=str(cfg['password']), database=cfg['database'], charset='utf8mb4')
cur = conn.cursor()
# 别名池
variants = ['佳艳','家艳','佳雁','桂艳','嘉艳']
cards = '%%'.join(['%' + v + '%' for v in variants]) # not used; do per-variant
like = ' OR '.join(['note LIKE %s OR source LIKE %s OR category LIKE %s']*len(variants))
params = []
for v in variants:
params += [f'%{v}%']*3
# family members
print('===== 家庭成员 =====')
cur.execute("SELECT id,name,role,is_active FROM family_members")
for r in cur.fetchall(): print(' ',r)
def show(table, where, extra):
pass
# 支出(转给佳艳)
print()
print('===== variable_expenses(支出转给佳艳) =====')
q = f"SELECT id,member_id,recorded_date,amount,category,note FROM variable_expenses WHERE ({like})"
cur.execute(q, params)
for r in cur.fetchall():
print(' ', r)
print()
print('===== income_records(从佳艳收到的收入) =====')
q = f"SELECT id,member_id,recorded_date,amount,source,frequency,note FROM income_records WHERE ({like}) OR source LIKE '%佳艳%'"
cur.execute(q, params)
for r in cur.fetchall():
print(' ', r)
print()
print('===== fixed_expenses(固定支出涉及佳艳,如定期转款/代付) =====')
q = f"SELECT id,member_id,category,amount,frequency,note FROM fixed_expenses WHERE ({like})"
cur.execute(q, params)
for r in cur.fetchall():
print(' ', r)
conn.close()