From 0b34c4c69e798749f803c1351b641718557d2120 Mon Sep 17 00:00:00 2001 From: aaron <> Date: Sun, 23 Mar 2025 23:40:22 +0800 Subject: [PATCH] update --- app/api/endpoints/dashboard.py | 28 +++++++++++++++++++++++++++- jobs.sqlite | Bin 24576 -> 24576 bytes 2 files changed, 27 insertions(+), 1 deletion(-) diff --git a/app/api/endpoints/dashboard.py b/app/api/endpoints/dashboard.py index 932868d..e696b7c 100644 --- a/app/api/endpoints/dashboard.py +++ b/app/api/endpoints/dashboard.py @@ -29,6 +29,13 @@ async def get_dashboard_info( # 总用户数 total_user_count = db.query(UserDB).count() + # 今日新增用户数 + users = db.query(UserDB).all() + today_user_count = len([user for user in users if user.create_time.date() == datetime.now().date()]) + + # 昨日新增用户数 + yesterday_user_count = len([user for user in users if user.create_time.date() == datetime.now().date() - timedelta(days=1)]) + # 查询已下单用户数 orders = db.query(ShippingOrderDB).filter(ShippingOrderDB.status != OrderStatus.CANCELLED).all() has_order_user_count = len(set([order.userid for order in orders])) @@ -36,6 +43,13 @@ async def get_dashboard_info( has_paid_user_count = len(set([order.userid for order in orders if order.status == OrderStatus.COMPLETED and order.final_amount > 0])) order_count = len(orders) + + # 今日新增配送订单数 + today_order_count = len([order for order in orders if order.create_time.date() == datetime.now().date()]) + + # 昨日新增配送订单数 + yesterday_order_count = len([order for order in orders if order.create_time.date() == datetime.now().date() - timedelta(days=1)]) + order_completed_count = len([order for order in orders if order.status == OrderStatus.COMPLETED or order.status == OrderStatus.UNPAID]) #需要支付的订单数量 @@ -50,6 +64,12 @@ async def get_dashboard_info( pay_amount = sum([order.final_amount for order in orders if order.status == OrderStatus.COMPLETED and order.final_amount > 0]) unpaid_amount = sum([order.original_amount_with_additional_fee for order in orders if order.status == OrderStatus.UNPAID]) + # 今日订单金额 + today_order_amount = sum([order.original_amount_with_additional_fee for order in orders if order.create_time.date() == datetime.now().date()]) + + # 昨日订单金额 + yesterday_order_amount = sum([order.original_amount_with_additional_fee for order in orders if order.create_time.date() == datetime.now().date() - timedelta(days=1)]) + return success_response(data={ "total_community_count": total_community_count, "total_user_count": total_user_count, @@ -64,7 +84,13 @@ async def get_dashboard_info( "order_amount": order_amount, "pay_amount": pay_amount, "unpaid_amount": unpaid_amount, - "completed_order_amount": completed_order_amount + "completed_order_amount": completed_order_amount, + "today_user_count": today_user_count, + "yesterday_user_count": yesterday_user_count, + "today_order_count": today_order_count, + "yesterday_order_count": yesterday_order_count, + "today_order_amount": today_order_amount, + "yesterday_order_amount": yesterday_order_amount }) @router.get("/deliveryman") diff --git a/jobs.sqlite b/jobs.sqlite index 5ec58a82f84c260c28700e2f7371afc284097e85..f6b1f2366f93abfd794f1bdf911936ecca1b3662 100644 GIT binary patch delta 19 acmZoTz}Rqrae_1>??f4AM&6AH3*rGmD+Wpc delta 19 acmZoTz}Rqrae_1>>qHr6M%Il93*rGlvj#c<