Commit 4c079e49 authored by xianyang's avatar xianyang

优化账户查询,保证金充值

parent 47ad657f
......@@ -153,50 +153,50 @@ def get_finance_info(unique_tag, page, size, start_time, end_time, is_list=None)
finance_condition.append(f"create_time < {time_str_to_timestamp(end_time + ' 23:59:59')} ")
if unique_tag == 'guild_account':
if finance_condition:
count_sql = f"select count(id) as num from v3_guild_account_statistics_copy where {' and '.join(finance_condition)}"
data_sql = f"select id,initial_money as balance,income,outcome,create_time from v3_guild_account_statistics_copy where {' and '.join(finance_condition)} order by id DESC limit {(int(page) - 1) * size},{size}"
count_sql = f"select count(id) as num from v3_guild_account_statistics_copy where {' and '.join(finance_condition)} GROUP BY create_time"
data_sql = f"select id,initial_money as balance,income,outcome,create_time from v3_guild_account_statistics_copy where {' and '.join(finance_condition)} GROUP BY create_time order by create_time DESC limit {(int(page) - 1) * size},{size}"
else:
count_sql = f"select count(id) as num from v3_guild_account_statistics_copy"
data_sql = f"select id,initial_money as balance,income,outcome,create_time from v3_guild_account_statistics_copy order by id DESC limit {(int(page) - 1) * size},{size}"
count_sql = f"select count(id) as num from v3_guild_account_statistics_copy GROUP BY create_time"
data_sql = f"select id,initial_money as balance,income,outcome,create_time from v3_guild_account_statistics_copy GROUP BY create_time order by create_time DESC limit {(int(page) - 1) * size},{size}"
elif unique_tag == 'anchor_account':
if finance_condition:
condition = [i.replace('create_time', 'date') for i in finance_condition]
count_sql = f"select count(id) as num from v3_user_account_statistics where type=2 and {' and '.join(condition)}"
data_sql = f"select id,initial_money as balance, income,pay as outcome,date as create_time from v3_user_account_statistics where type=2 and {' and '.join(condition)} order by id DESC limit {(int(page) - 1) * size},{size}"
count_sql = f"select count(id) as num from v3_user_account_statistics where type=2 and {' and '.join(condition)} GROUP BY calculation_time"
data_sql = f"select id,initial_money as balance, income,pay as outcome,date as create_time from v3_user_account_statistics where type=2 and {' and '.join(condition)} GROUP BY calculation_time order by calculation_time DESC limit {(int(page) - 1) * size},{size}"
else:
count_sql = f"select count(id) as num from v3_user_account_statistics where type=2"
data_sql = f"select id,initial_money as balance, income,pay as outcome,date as create_time from v3_user_account_statistics where type=2 order by id DESC limit {(int(page) - 1) * size},{size}"
count_sql = f"select count(id) as num from v3_user_account_statistics where type=2 GROUP BY calculation_time"
data_sql = f"select id,initial_money as balance, income,pay as outcome,date as create_time from v3_user_account_statistics where type=2 GROUP BY calculation_time order by calculation_time DESC limit {(int(page) - 1) * size},{size}"
elif unique_tag == 'user_account':
if finance_condition:
condition = [i.replace('create_time', 'calculation_time') for i in finance_condition]
count_sql = f"select count(id) as num from finance_data_calculation_sum where type=1 and {' and '.join(condition)}"
data_sql = f"select id,initial_money as balance,income,outcome,calculation_time as create_time from finance_data_calculation_sum where type=1 and {' and '.join(condition)} order by id DESC limit {(int(page) - 1) * size},{size}"
count_sql = f"select count(id) as num from finance_data_calculation_sum where type=1 and {' and '.join(condition)} GROUP BY calculation_time"
data_sql = f"select id,initial_money as balance,income,outcome,calculation_time as create_time from finance_data_calculation_sum where type=1 and {' and '.join(condition)} GROUP BY calculation_time order by calculation_time DESC limit {(int(page) - 1) * size},{size}"
else:
count_sql = f"select count(id) as num from finance_data_calculation_sum where type=1"
data_sql = f"select id,initial_money as balance,income,outcome,calculation_time as create_time from finance_data_calculation_sum where type=1 order by id DESC limit {(int(page) - 1) * size},{size}"
count_sql = f"select count(id) as num from finance_data_calculation_sum where type=1 GROUP BY calculation_time"
data_sql = f"select id,initial_money as balance,income,outcome,calculation_time as create_time from finance_data_calculation_sum where type=1 GROUP BY calculation_time order by calculation_time DESC limit {(int(page) - 1) * size},{size}"
elif unique_tag == 'knapsack_account':
if finance_condition:
condition = [i.replace('create_time', 'calculation_time') for i in finance_condition]
count_sql = f"select count(id) as num from finance_data_calculation_sum where type=4 and {' and '.join(condition)}"
data_sql = f"select id,initial_money as balance,income,outcome,calculation_time as create_time from finance_data_calculation_sum where type=4 and {' and '.join(condition)} order by id DESC limit {(int(page) - 1) * size},{size}"
count_sql = f"select count(id) as num from finance_data_calculation_sum where type=4 and {' and '.join(condition)} GROUP BY calculation_time"
data_sql = f"select id,initial_money as balance,income,outcome,calculation_time as create_time from finance_data_calculation_sum where type=4 and {' and '.join(condition)} GROUP BY calculation_time order by calculation_time DESC limit {(int(page) - 1) * size},{size}"
else:
count_sql = f"select count(id) as num from finance_data_calculation_sum where type=4"
data_sql = f"select id,initial_money as balance,income,outcome,calculation_time as create_time from finance_data_calculation_sum where type=4 order by id DESC limit {(int(page) - 1) * size},{size}"
count_sql = f"select count(id) as num from finance_data_calculation_sum where type=4 GROUP BY calculation_time"
data_sql = f"select id,initial_money as balance,income,outcome,calculation_time as create_time from finance_data_calculation_sum where type=4 GROUP BY calculation_time order by calculation_time DESC limit {(int(page) - 1) * size},{size}"
elif unique_tag == 'pledgeDeduction':
if finance_condition:
condition = [i.replace('create_time', 'calculation_time') for i in finance_condition]
count_sql = f"select count(id) as num from finance_data_calculation_sum where type=5 and {' and '.join(condition)}"
data_sql = f"select id,initial_money as balance,income,outcome,calculation_time as create_time from finance_data_calculation_sum where type=5 and {' and '.join(condition)} order by id DESC limit {(int(page) - 1) * size},{size}"
count_sql = f"select count(id) as num from finance_data_calculation_sum where type=5 and {' and '.join(condition)} GROUP BY calculation_time"
data_sql = f"select id,initial_money as balance,income,outcome,calculation_time as create_time from finance_data_calculation_sum where type=5 and {' and '.join(condition)} GROUP BY calculation_time order by calculation_time DESC limit {(int(page) - 1) * size},{size}"
else:
count_sql = f"select count(id) as num from finance_data_calculation_sum where type=5"
data_sql = f"select id,initial_money as balance,income,outcome,calculation_time as create_time from finance_data_calculation_sum where type=5 order by id DESC limit {(int(page) - 1) * size},{size}"
count_sql = f"select count(id) as num from finance_data_calculation_sum where type=5 GROUP BY calculation_time"
data_sql = f"select id,initial_money as balance,income,outcome,calculation_time as create_time from finance_data_calculation_sum where type=5 GROUP BY calculation_time order by calculation_time DESC limit {(int(page) - 1) * size},{size}"
else:
if finance_condition:
count_sql = f"select count(id) as num from v2_system_account_statistics where {' and '.join(finance_condition)}"
data_sql = f"select id,initial_money as balance,income,outcome,create_time from v2_system_account_statistics where {' and '.join(finance_condition)} order by id DESC limit {(int(page) - 1) * size},{size}"
count_sql = f"select count(id) as num from v2_system_account_statistics where {' and '.join(finance_condition)} GROUP BY create_time"
data_sql = f"select id,initial_money as balance,income,outcome,create_time from v2_system_account_statistics where {' and '.join(finance_condition)} GROUP BY create_time order by create_time DESC limit {(int(page) - 1) * size},{size}"
else:
count_sql = f"select count(id) as num from v2_system_account_statistics"
data_sql = f"select id,initial_money as balance,income,outcome,create_time from v2_system_account_statistics order by id DESC limit {(int(page) - 1) * size},{size}"
count_sql = f"select count(id) as num from v2_system_account_statistics GROUP BY create_time"
data_sql = f"select id,initial_money as balance,income,outcome,create_time from v2_system_account_statistics GROUP BY create_time order by create_time DESC limit {(int(page) - 1) * size},{size}"
with ThreadPoolExecutor(max_workers=2) as pool:
future1 = pool.submit(LinkMysql(env.DB_3YV2).query_mysql, count_sql)
future2 = pool.submit(LinkMysql(env.DB_3YV2).query_mysql, data_sql)
......@@ -211,6 +211,7 @@ def get_finance_info(unique_tag, page, size, start_time, end_time, is_list=None)
def get_finance_details(page, size, uuid, start_time, end_time, type, gift_type, is_list=None):
"""账户财务明细"""
details_condition = [f" uuid='{uuid}' "]
if type or type == 0:
details_condition.append(f" type={type}")
......
......@@ -88,7 +88,7 @@ class GuildMargin(object):
'amount': money,
'amount_type': 'withdrawable',
'reference_number': reference_number,
'reference_type': 'reference_type',
'reference_type': reference_type,
'reference_info': '保证金充值',
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment