update
This commit is contained in:
parent
292392b4a2
commit
64e61ab9a7
@ -8,6 +8,7 @@ from sqlalchemy.orm import Session
|
|||||||
from datetime import datetime, timedelta
|
from datetime import datetime, timedelta
|
||||||
from app.core.response import success_response, error_response, ResponseModel
|
from app.core.response import success_response, error_response, ResponseModel
|
||||||
from typing import Optional
|
from typing import Optional
|
||||||
|
from app.models.user_auth import UserAuthDB
|
||||||
router = APIRouter()
|
router = APIRouter()
|
||||||
|
|
||||||
# 获取基础信息
|
# 获取基础信息
|
||||||
@ -57,19 +58,20 @@ async def get_deliveryman_dashboard_info(
|
|||||||
db: Session = Depends(get_db)
|
db: Session = Depends(get_db)
|
||||||
):
|
):
|
||||||
# 获取配送员信息
|
# 获取配送员信息
|
||||||
query = db.query(UserDB).filter(UserDB.roles.contains(UserRole.DELIVERYMAN))
|
query = db.query(UserDB, UserAuthDB.name.label('auth_name')).join(UserAuthDB, UserDB.userid == UserAuthDB.user_id).filter(UserDB.roles.contains(UserRole.DELIVERYMAN))
|
||||||
if community_id:
|
if community_id:
|
||||||
query = query.filter(UserDB.community_id == community_id)
|
query = query.filter(UserDB.community_id == community_id)
|
||||||
deliverymans = query.all()
|
deliverymans = query.all()
|
||||||
|
|
||||||
result = []
|
result = []
|
||||||
for deliveryman in deliverymans:
|
for deliveryman in deliverymans:
|
||||||
orders = db.query(ShippingOrderDB).filter(ShippingOrderDB.deliveryman_user_id == deliveryman.userid, ShippingOrderDB.status.in_([OrderStatus.COMPLETED, OrderStatus.UNPAID])).all()
|
orders = db.query(ShippingOrderDB).filter(ShippingOrderDB.deliveryman_user_id == deliveryman.UserDB.userid, ShippingOrderDB.status.in_([OrderStatus.COMPLETED, OrderStatus.UNPAID])).all()
|
||||||
today_orders = db.query(ShippingOrderDB).filter(ShippingOrderDB.deliveryman_user_id == deliveryman.userid, ShippingOrderDB.status.in_([OrderStatus.COMPLETED, OrderStatus.UNPAID]), ShippingOrderDB.completed_time >= datetime.now().date()).all()
|
today_orders = db.query(ShippingOrderDB).filter(ShippingOrderDB.deliveryman_user_id == deliveryman.UserDB.userid, ShippingOrderDB.status.in_([OrderStatus.COMPLETED, OrderStatus.UNPAID]), ShippingOrderDB.completed_time >= datetime.now().date()).all()
|
||||||
result.append({
|
result.append({
|
||||||
"deliveryman_id": deliveryman.userid,
|
"deliveryman_id": deliveryman.UserDB.userid,
|
||||||
"deliveryman_name": deliveryman.nickname,
|
"deliveryman_name": deliveryman.UserDB.nickname,
|
||||||
"deliveryman_community_name": deliveryman.community.name,
|
"deliveryman_auth_name": deliveryman.auth_name,
|
||||||
|
"deliveryman_community_name": deliveryman.UserDB.community.name,
|
||||||
"order_count": len(orders),
|
"order_count": len(orders),
|
||||||
"order_amount": sum([order.original_amount_with_additional_fee for order in orders]),
|
"order_amount": sum([order.original_amount_with_additional_fee for order in orders]),
|
||||||
"today_order_count": len(today_orders),
|
"today_order_count": len(today_orders),
|
||||||
|
|||||||
@ -92,6 +92,13 @@ async def get_user_info(
|
|||||||
if community:
|
if community:
|
||||||
user_data['community_name'] = community.name
|
user_data['community_name'] = community.name
|
||||||
|
|
||||||
|
# 获取认证信息
|
||||||
|
auth_record = db.query(UserAuthDB).filter(UserAuthDB.user_id == current_user.userid).first()
|
||||||
|
if auth_record:
|
||||||
|
user_data['auth_name'] = auth_record.name
|
||||||
|
else:
|
||||||
|
user_data['auth_name'] = current_user.nickname
|
||||||
|
|
||||||
# 处理默认地址
|
# 处理默认地址
|
||||||
if default_address:
|
if default_address:
|
||||||
address_data = {
|
address_data = {
|
||||||
|
|||||||
BIN
jobs.sqlite
BIN
jobs.sqlite
Binary file not shown.
Loading…
Reference in New Issue
Block a user