changes 流程列表分页

This commit is contained in:
P3ngSaM 2022-11-24 14:06:20 +08:00
parent 95c18e8179
commit 63b6ed16b3
4 changed files with 19 additions and 6 deletions

View File

@ -99,3 +99,4 @@ def change_rating_status(db, _id: str, status: bool):
db.query(RatingFlowNode).filter_by(id=_id).update(update_data) db.query(RatingFlowNode).filter_by(id=_id).update(update_data)
db.commit() db.commit()
return db.query(RatingFlowNode).filter_by(id=_id).first() return db.query(RatingFlowNode).filter_by(id=_id).first()

View File

@ -3,6 +3,11 @@ from sqlalchemy.orm import Session
from App.Model.RatingFlowModel import RatingFlowParticipant from App.Model.RatingFlowModel import RatingFlowParticipant
def list_users_rating_flows(db: Session, user_id): def list_users_rating_flows(db: Session, user_id, page, pagesize):
items = db.query(RatingFlowParticipant).filter_by(user_id=user_id).all() page = 1 if page < 1 else (100 if page > 100 else page)
return items pagesize = 5 if pagesize < 5 else (20 if pagesize > 20 else pagesize)
items = db.query(RatingFlowParticipant).filter_by(user_id=user_id).offset((page-1)*pagesize).limit(pagesize).all()
count = db.query(RatingFlowParticipant).filter_by(user_id=user_id).count()
return items, count

View File

@ -91,12 +91,14 @@ def func(schema: RatingFlowSchema.SaveRatingFlowNodeReqBody, db: Session = Depen
@router.post("/list", summary="获取用户参与的所有评级流程", tags=["评级流程"]) @router.post("/list", summary="获取用户参与的所有评级流程", tags=["评级流程"])
def func(token: str = Header(...), db: Session = Depends(get_db)): def func(schema: RatingFlowSchema.RatingFlowListReqBody, token: str = Header(...), db: Session = Depends(get_db)):
decoded_info = decode_token(token=token) decoded_info = decode_token(token=token)
user_info = decoded_info.get("user_info") user_info = decoded_info.get("user_info")
user_id = user_info.get("uid") user_id = user_info.get("uid")
page = schema.page
pagesize = schema.pagesize
items = list_users_rating_flows(db=db, user_id=user_id) items, total = list_users_rating_flows(db=db, user_id=user_id, page=page, pagesize=pagesize)
_list = [] _list = []
for item in items: for item in items:
rating_flow = { rating_flow = {
@ -107,7 +109,7 @@ def func(token: str = Header(...), db: Session = Depends(get_db)):
} }
_list.append(rating_flow) _list.append(rating_flow)
return _list return {"items": _list, "total": total}
@router.post("/node_data", summary="获取流程节点数据", tags=["评级流程"]) @router.post("/node_data", summary="获取流程节点数据", tags=["评级流程"])

View File

@ -83,3 +83,8 @@ class ChangeStatusReqBody(BaseModel):
rating_flow_id: str rating_flow_id: str
node_name: str node_name: str
status: bool status: bool
class RatingFlowListReqBody(BaseModel):
page: int = 1
pagesize: int = 10