Commit 4b479e33 authored by xianyang's avatar xianyang

类型配置列表模糊查,财务修复报表,导出优化

parent 99463756
...@@ -259,9 +259,9 @@ def get_account_type(db: Session, **data): ...@@ -259,9 +259,9 @@ def get_account_type(db: Session, **data):
"""礼物类型配置列表""" """礼物类型配置列表"""
finance_filters = [] finance_filters = []
if data.get("key_name"): if data.get("key_name"):
finance_filters.append(AccountType.key_name == data.get("key_name")) finance_filters.append(AccountType.key_name.like(f'%{data.get("key_name")}%'))
if data.get("key_value"): if data.get("key_value"):
finance_filters.append(AccountType.key_value == data.get("key_value")) finance_filters.append(AccountType.key_value.like(f'%{data.get("key_value")}%'))
if data.get("type") or data.get("type") == 0: if data.get("type") or data.get("type") == 0:
finance_filters.append(AccountType.type == data.get("type")) finance_filters.append(AccountType.type == data.get("type"))
querydata, count = QueryAllData(db, AccountType, data, finance_filters).query_data() querydata, count = QueryAllData(db, AccountType, data, finance_filters).query_data()
......
...@@ -46,7 +46,7 @@ class FinanceDetails(PublicModel): ...@@ -46,7 +46,7 @@ class FinanceDetails(PublicModel):
class FixTable(BaseModel): class FixTable(BaseModel):
type: int type: int
uuid: str uuid: str = ''
money: float money: float
amount_type: str = "consumable" amount_type: str = "consumable"
remark: str remark: str
......
...@@ -63,7 +63,7 @@ def finance_info_excel(data: schemas.FinanceInfo, request: Request, ...@@ -63,7 +63,7 @@ def finance_info_excel(data: schemas.FinanceInfo, request: Request,
token=Depends(login_required), db: Session = Depends(get_db)): token=Depends(login_required), db: Session = Depends(get_db)):
"""账户财务详情导出""" """账户财务详情导出"""
headers = request.get("headers") headers = request.get("headers")
statement_list = crud.get_finance_info(data.unique_tag, data.page, data.size, data.start_time, data.end_time) statement_list = crud.get_finance_info(data.unique_tag, data.page, 99999, data.start_time, data.end_time)
df = ['表id', '金额', '入账', '出账', '时间'] df = ['表id', '金额', '入账', '出账', '时间']
return statement_crud.data_to_file(db, statement_list, "财务信息", headers, df) return statement_crud.data_to_file(db, statement_list, "财务信息", headers, df)
...@@ -87,7 +87,7 @@ def finance_info_excel(data: schemas.FinanceDetails, request: Request, ...@@ -87,7 +87,7 @@ def finance_info_excel(data: schemas.FinanceDetails, request: Request,
token=Depends(login_required), db: Session = Depends(get_db)): token=Depends(login_required), db: Session = Depends(get_db)):
"""账户财务明细导出""" """账户财务明细导出"""
headers = request.get("headers") headers = request.get("headers")
statement_list = crud.get_finance_details(data.page, data.size, data.uuid, data.start_time, data.end_time, data.type, data.gift_type) statement_list = crud.get_finance_details(data.page, 99999, data.uuid, data.start_time, data.end_time, data.type, data.gift_type)
field_head = ['订单号', '出入账方式', '礼物类型', '金额', '时间'] field_head = ['订单号', '出入账方式', '礼物类型', '金额', '时间']
return statement_crud.data_to_file(db, statement_list, "财务明细", headers, field_head) return statement_crud.data_to_file(db, statement_list, "财务明细", headers, field_head)
......
...@@ -357,6 +357,7 @@ class FinanceFix(object): ...@@ -357,6 +357,7 @@ class FinanceFix(object):
if i['type'] != 0: if i['type'] != 0:
i['name'] = i['unique_tag'] i['name'] = i['unique_tag']
i['create_time'] = timestamp_to_time_str(i['create_time']) i['create_time'] = timestamp_to_time_str(i['create_time'])
i['money'] = float(i['money'])
result.append(i) result.append(i)
return result, total[0]['num'] return result, total[0]['num']
return [], 0 return [], 0
...@@ -343,7 +343,7 @@ def create_fix_table(db: Session, param, h_list): ...@@ -343,7 +343,7 @@ def create_fix_table(db: Session, param, h_list):
method = 'Server.BaseExecute.Increase' method = 'Server.BaseExecute.Increase'
data = { data = {
"ip": ip, "ip": ip,
"dst_uuid": param.unique_tag, "dst_uuid": param.uuid,
"dst_amount_type": param.amount_type, "dst_amount_type": param.amount_type,
"amount": param.money, "amount": param.money,
"fee": 0, "fee": 0,
...@@ -356,7 +356,7 @@ def create_fix_table(db: Session, param, h_list): ...@@ -356,7 +356,7 @@ def create_fix_table(db: Session, param, h_list):
method = 'Server.BaseExecute.Reduce' method = 'Server.BaseExecute.Reduce'
data = { data = {
"ip": ip, "ip": ip,
"src_uuid": param.unique_tag, "src_uuid": param.uuid,
"src_amount_type": param.amount_type, "src_amount_type": param.amount_type,
"amount": param.money, "amount": param.money,
"fee": 0, "fee": 0,
...@@ -368,10 +368,15 @@ def create_fix_table(db: Session, param, h_list): ...@@ -368,10 +368,15 @@ def create_fix_table(db: Session, param, h_list):
clearing_res = search(data, method) clearing_res = search(data, method)
print(clearing_res) print(clearing_res)
if clearing_res['status']: if clearing_res['status']:
unique_res = []
if param.type == 0:
acc_sql = f"select unique_tag from fi_account where uuid='{param.uuid}'"
unique_res = LinkMysql(env.DB_3YV2).query_mysql(acc_sql)
unique_tag = unique_res[0]['unique_tag'] if unique_res else param.uuid
user = query_token(db, h_list) user = query_token(db, h_list)
try: try:
insert_fix_sql = f"insert into finance_fix_log(type, money, create_time, unique_tag, amount_type, remark, operator,operator_id) " \ insert_fix_sql = f"insert into finance_fix_log(type, money, create_time, unique_tag, amount_type, remark, operator,operator_id) " \
f"values({param.type}, {param.money}, {get_now_timestamp()}, '{param.uuid}', '{param.amount_type}', '{param.remark}', '{user.get('username')}', {user.get('user_id')});" f"values({param.type}, {param.money}, {get_now_timestamp()}, '{unique_tag}', '{param.amount_type}', '{param.remark}', '{user.get('username')}', {user.get('user_id')});"
LinkMysql(env.DB_3YV2).perform_mysql(insert_fix_sql) LinkMysql(env.DB_3YV2).perform_mysql(insert_fix_sql)
except Exception as e: except Exception as e:
return e return e
......
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