计算财报总额
This commit is contained in:
parent
65b11cb3c2
commit
471facc12a
|
@ -52,7 +52,9 @@ def finance_query(db: Session, params: Schemas.FinanceQuery):
|
||||||
query = query.filter(getattr(db_model, key) <= datetime.fromtimestamp(value[1] / 1000))
|
query = query.filter(getattr(db_model, key) <= datetime.fromtimestamp(value[1] / 1000))
|
||||||
else:
|
else:
|
||||||
query = query.filter(getattr(db_model, key) == value)
|
query = query.filter(getattr(db_model, key) == value)
|
||||||
|
total = sum([item[0].income for item in query if item[0].income])
|
||||||
count = query.count()
|
count = query.count()
|
||||||
|
|
||||||
page = None
|
page = None
|
||||||
page_size = None
|
page_size = None
|
||||||
if 'page' in params_dict:
|
if 'page' in params_dict:
|
||||||
|
@ -63,6 +65,6 @@ def finance_query(db: Session, params: Schemas.FinanceQuery):
|
||||||
if page is not None and page_size is not None:
|
if page is not None and page_size is not None:
|
||||||
page_size = min(page_size, 100)
|
page_size = min(page_size, 100)
|
||||||
query = query.offset((page - 1) * page_size).limit(page_size).all()
|
query = query.offset((page - 1) * page_size).limit(page_size).all()
|
||||||
return count, query
|
return count, query,total
|
||||||
|
|
||||||
################
|
################
|
||||||
|
|
|
@ -40,13 +40,14 @@ def finance_get(req: Schemas.FinanceGetReq, db: Session = Depends(get_db)):
|
||||||
|
|
||||||
@router.post("/finance/query", summary="查询财务数据", response_model=Schemas.FinanceQueryRes)
|
@router.post("/finance/query", summary="查询财务数据", response_model=Schemas.FinanceQueryRes)
|
||||||
def finance_query(req: Schemas.FinanceQueryReq, db: Session = Depends(get_db)):
|
def finance_query(req: Schemas.FinanceQueryReq, db: Session = Depends(get_db)):
|
||||||
count, query = Crud.finance_query(db, req)
|
count, query,total = Crud.finance_query(db, req)
|
||||||
items = []
|
items = []
|
||||||
for item in query:
|
for item in query:
|
||||||
finance_info = item[0].to_dict()
|
finance_info = item[0].to_dict()
|
||||||
finance_info['user_info'] = item[1].to_dict()
|
finance_info['user_info'] = item[1].to_dict()
|
||||||
items.append(Schemas.FinanceInfo(**finance_info))
|
items.append(Schemas.FinanceInfo(**finance_info))
|
||||||
return Schemas.FinanceQueryRes(count=count, items=items)
|
print(total,"total")
|
||||||
|
return Schemas.FinanceQueryRes(count=count, items=items,total=total)
|
||||||
|
|
||||||
|
|
||||||
@router.post("/finance/query_common", summary="通用查询财务数据",
|
@router.post("/finance/query_common", summary="通用查询财务数据",
|
||||||
|
|
|
@ -70,6 +70,7 @@ class FinanceGetRes(FinanceInfo):
|
||||||
class FinanceQueryRes(BaseModel):
|
class FinanceQueryRes(BaseModel):
|
||||||
count: int
|
count: int
|
||||||
items: List[FinanceInfo]
|
items: List[FinanceInfo]
|
||||||
|
total: Optional[float]
|
||||||
|
|
||||||
|
|
||||||
class FinanceDeleteReq(BaseModel):
|
class FinanceDeleteReq(BaseModel):
|
||||||
|
|
Loading…
Reference in New Issue