Commit ad7340ab authored by xianyang's avatar xianyang

优化分页,转账

parent a43f40e3
......@@ -20,7 +20,7 @@ def get_roles(db: Session, param):
name = param.role_name if param.role_name else ""
if name:
query_res = db.query(models.Role).filter(models.Role.role_name.like(f'%{name}%')).order_by(models.Role.id.desc()).\
offset((int(param.page) - 1) * param.size).limit(param.page * param.size).all()
offset((int(param.page) - 1) * param.size).limit(param.size).all()
count = db.query(func.count(models.Role.id)).filter(models.Role.role_name.like(f'%{name}%')).scalar()
else:
query_res = db.query(models.Role).order_by(models.Role.id.desc()).offset((int(param.page) - 1) * param.size).limit(param.size).all()
......
......@@ -74,9 +74,9 @@ class RechargeStatement(object):
if param.user_id:
not_null_filters.append(Recharge.user_id == param.user_id)
if param.sid:
not_null_filters.append(Recharge.sid.like(param.sid))
not_null_filters.append(Recharge.sid.like(f'%{param.sid}%'))
if param.pay_channel:
not_null_filters.append(Recharge.pay_channel.like(param.pay_channel))
not_null_filters.append(Recharge.pay_channel.like(f'%{param.pay_channel}%'))
if param.start_time:
not_null_filters.append(Recharge.current >= param.start_time)
if param.end_time:
......
import json
import math
import threading
from sqlalchemy import and_, func, engine
......@@ -162,15 +163,17 @@ def query_token(db, h_list):
def transfer_trigger_task(db, data):
"""转账验证"""
try:
dst = db.query(Account).filter(Account.id == data.dst_id).first() # 转出
transfer = db.query(Account).filter(Account.id == data.transfer_id).first() # 转入
dst = db.query(Account).filter(Account.uuid == data.dst_id).first() # 转出
transfer = db.query(Account).filter(Account.uuid == data.transfer_id).first() # 转入
if float(dst.consumable) < data.amount:
return "账户余额不足"
dst.consumable = float(dst.consumable) - data.amount
transfer.consumable = float(transfer.consumable) + data.amount
db.commit()
except Exception as e:
db.rollback()
return False
return True
return "操作失败"
return ""
def transfer_money(db: Session, param, h_list):
......@@ -199,8 +202,8 @@ def transfer_money(db: Session, param, h_list):
transfer_name = income.name if income else ""
# 转账
is_success = transfer_trigger_task(db, param)
if not is_success:
return False
if is_success:
return is_success
try:
present = Fitransferlog(dst_id=param.dst_id, dst_name=dst_name, amount=param.amount, type=param.type,
transfer_id=param.transfer_id, nick_name=param.nick_name, remark=param.remark,
......@@ -210,8 +213,8 @@ def transfer_money(db: Session, param, h_list):
db.commit()
db.refresh(present)
except Exception as e:
return {}
return present
return e
return {}
def create_fix_table(db: Session, param, h_list):
......
......@@ -119,9 +119,9 @@ def account_transfer_money(data: CreateBill, request: Request,
return HttpResultResponse(code=500, msg="缺少必传参数")
header_list = request.get("headers")
res_info = transfer_money(db, data, header_list)
if not res_info:
return HttpResultResponse(code=500, msg='创建失败')
return HttpResultResponse(data=res_info.id)
if res_info:
return HttpResultResponse(code=500, msg=res_info)
return HttpResultResponse()
@router.post("/guild/update")
......
......@@ -22,10 +22,10 @@ def get_users(db: Session, param):
"""
username = param.username if param.username else ""
if username:
res = db.query(models.User).filter(models.User.username.like(f'%{username}%')).order_by(models.User.id.desc()).offset((int(param.page) - 1) * param.size).limit(param.page * param.size)
res = db.query(models.User).filter(models.User.username.like(f'%{username}%')).order_by(models.User.id.desc()).offset((int(param.page) - 1) * param.size).limit(param.size)
count = db.query(func.count(models.User.id)).filter(models.User.username.like(f'%{username}%')).scalar()
else:
res = db.query(models.User).order_by(models.User.id.desc()).offset((int(param.page) - 1) * param.size).limit(param.page * param.size)
res = db.query(models.User).order_by(models.User.id.desc()).offset((int(param.page) - 1) * param.size).limit(param.size)
count = db.query(func.count(models.User.id)).scalar()
if not res:
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