Commit f458c8bf authored by xianyang's avatar xianyang

优化角色 账户

parent 5540ed9e
...@@ -14,6 +14,8 @@ from libs.orm import QueryAllData ...@@ -14,6 +14,8 @@ from libs.orm import QueryAllData
from models import account as models from models import account as models
from models.account import AccountFinance, AccountFinanceDetails, AccountType from models.account import AccountFinance, AccountFinanceDetails, AccountType
locka = threading.Lock()
def get_account(name): def get_account(name):
"""查询单个账户""" """查询单个账户"""
...@@ -96,8 +98,7 @@ class HDUd(): ...@@ -96,8 +98,7 @@ class HDUd():
data_sql = f"select id,name,unique_tag,uuid,config_key,beneficiary,description,create_time, income, output from fi_account ORDER BY id DESC LIMIT {(int(page) - 1) * size},{size}" data_sql = f"select id,name,unique_tag,uuid,config_key,beneficiary,description,create_time, income, output from fi_account ORDER BY id DESC LIMIT {(int(page) - 1) * size},{size}"
query_res = LinkMysql(env.DB_3YV2).query_mysql(data_sql) query_res = LinkMysql(env.DB_3YV2).query_mysql(data_sql)
if not query_res: if not query_res:
return [] return [], 0
# 多线程 # 多线程
ths = [] ths = []
# 创建线程 # 创建线程
......
...@@ -53,12 +53,17 @@ def create_role(db: Session, user: schemas.RoleCreate): ...@@ -53,12 +53,17 @@ def create_role(db: Session, user: schemas.RoleCreate):
def update_role(db: Session, role_info): def update_role(db: Session, role_info):
db.query(models.Role).filter(models.Role.id == role_info.id).update( try:
{models.Role.role_name: role_info.role_name, db.query(models.Role).filter(models.Role.id == role_info.id).update(
models.Role.authority: ','.join(map(str, role_info.authority)) if role_info.authority else '', {models.Role.role_name: role_info.role_name,
models.Role.remark: role_info.remark}) models.Role.authority: ','.join(map(str, role_info.authority)) if role_info.authority else '',
models.Role.remark: role_info.remark})
except Exception as e:
if 'role_name' in str(e):
return '角色名称重复'
return e
db.commit() db.commit()
return ''
def delete_role(db: Session, role_id: int): def delete_role(db: Session, role_id: int):
......
...@@ -25,7 +25,9 @@ def create_user(data: schemas.RoleCreate, token=Depends(login_required), db: Ses ...@@ -25,7 +25,9 @@ def create_user(data: schemas.RoleCreate, token=Depends(login_required), db: Ses
@router.post("/update") @router.post("/update")
def read_user(data: schemas.RoleUpdate, token=Depends(login_required), db: Session = Depends(get_db)): def read_user(data: schemas.RoleUpdate, token=Depends(login_required), db: Session = Depends(get_db)):
"""角色权限分配""" """角色权限分配"""
crud.update_role(db, data) res = crud.update_role(db, data)
if res:
return HttpResultResponse(code=500, msg=res)
return HttpResultResponse() return HttpResultResponse()
......
...@@ -142,6 +142,15 @@ def outon_account_data(db: Session, dbname, params): ...@@ -142,6 +142,15 @@ def outon_account_data(db: Session, dbname, params):
return data, count return data, count
def account_thead_task(data):
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)
if not 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']
def accout_list_data(**params): def accout_list_data(**params):
accout_filters = [] accout_filters = []
...@@ -165,6 +174,14 @@ def accout_list_data(**params): ...@@ -165,6 +174,14 @@ def accout_list_data(**params):
total = future1.result() total = future1.result()
res = future2.result() res = future2.result()
if res: if res:
# 多线程
ths = []
for x in range(len(res)):
ths.append(threading.Thread(target=account_thead_task, args=[res[x]]))
for y in range(len(res)):
ths[y].start()
for z in range(len(res)):
ths[z].join()
return res, total[0]['num'] return res, total[0]['num']
return [], 0 return [], 0
......
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