Commit a7f97615 authored by xianyang's avatar xianyang

优化修复报表

parent cae9c32b
...@@ -46,7 +46,7 @@ class FinanceDetails(PublicModel): ...@@ -46,7 +46,7 @@ class FinanceDetails(PublicModel):
class FixTable(BaseModel): class FixTable(BaseModel):
type: int type: int
unique_tag: str uuid: str
money: float money: float
amount_type: str = "" amount_type: str = ""
remark: str remark: str
......
...@@ -6,7 +6,6 @@ from app.api.account import schemas, crud ...@@ -6,7 +6,6 @@ from app.api.account import schemas, crud
from app.api.statement import crud as statement_crud from app.api.statement import crud as statement_crud
from libs.result_format import HttpResultResponse, HttpMessage from libs.result_format import HttpResultResponse, HttpMessage
from libs.token_verify import login_required from libs.token_verify import login_required
import pandas as pd
router = APIRouter() router = APIRouter()
......
...@@ -145,10 +145,12 @@ def outon_account_data(db: Session, dbname, params): ...@@ -145,10 +145,12 @@ def outon_account_data(db: Session, dbname, params):
def account_thead_task(data): def account_thead_task(data):
account_sql = f"select name from fi_account where uuid='{data['transfer_uuid']}' limit 0,1" account_sql = f"select name from fi_account where uuid='{data['transfer_uuid']}' limit 0,1"
account = LinkMysql(env.DB_3YV2).query_mysql(account_sql) account = LinkMysql(env.DB_3YV2).query_mysql(account_sql)
if not account: if account:
user_sql = f"select nick_name as name from v2_user where uuid='{data['transfer_uuid']}' limit 0,1"
account = LinkMysql(env.DB_3YV2).query_mysql(user_sql)
data['transfer_name'] = account[0]['name'] data['transfer_name'] = account[0]['name']
else:
user_sql = f"select nick_name from v2_user where uuid='{data['transfer_uuid']}' limit 0,1"
user_data = LinkMysql(env.DB_3YV2).query_mysql(user_sql)
data['transfer_name'] = user_data[0]['nick_name'] if user_data else data['transfer_uuid']
def accout_list_data(**params): def accout_list_data(**params):
...@@ -317,8 +319,8 @@ def transfer_money(db: Session, param, h_list): ...@@ -317,8 +319,8 @@ def transfer_money(db: Session, param, h_list):
def create_fix_table(db: Session, param, h_list): def create_fix_table(db: Session, param, h_list):
"""增加修复报表""" """增加修复报表"""
if param.amount_type == 'backpack': if param.amount_type == 'backpack':
guild_sql = f"select count(id) as num from guild where uuid='{param.unique_tag}'" guild_sql = f"select count(id) as num from guild where uuid='{param.uuid}'"
user_sql = f"select user_id,nick_name,user_number from v2_user where uuid='{param.unique_tag}'" user_sql = f"select user_id,nick_name,user_number from v2_user where uuid='{param.uuid}'"
with ThreadPoolExecutor(max_workers=2) as pool: with ThreadPoolExecutor(max_workers=2) as pool:
future1 = pool.submit(LinkMysql(env.DB_3YV2).query_mysql, guild_sql) future1 = pool.submit(LinkMysql(env.DB_3YV2).query_mysql, guild_sql)
future2 = pool.submit(LinkMysql(env.DB_3YV2).query_mysql, user_sql) future2 = pool.submit(LinkMysql(env.DB_3YV2).query_mysql, user_sql)
...@@ -369,7 +371,7 @@ def create_fix_table(db: Session, param, h_list): ...@@ -369,7 +371,7 @@ def create_fix_table(db: Session, param, h_list):
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.unique_tag}', '{param.amount_type}', '{param.remark}', '{user.get('username')}', {user.get('user_id')});" f"values({param.type}, {param.money}, {get_now_timestamp()}, '{param.uuid}', '{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
......
...@@ -152,6 +152,8 @@ def finance_fix(page: int, ...@@ -152,6 +152,8 @@ def finance_fix(page: int,
def finance_fix(data: acc_schemas.FixTable, request: Request, def finance_fix(data: acc_schemas.FixTable, request: Request,
token=Depends(login_required), db: Session = Depends(get_db)): token=Depends(login_required), db: Session = Depends(get_db)):
"""新增修复报表""" """新增修复报表"""
if not all([data.uuid, data.money, data.amount_type, data.remark]):
return HttpResultResponse(code=500, msg='缺少必传参数')
header_list = request.get("headers") header_list = request.get("headers")
res = guild.create_fix_table(db, data, header_list) res = guild.create_fix_table(db, data, header_list)
if res: if res:
......
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