From 83e02acb22a70a38723cc67616ffe1602313e9f9 Mon Sep 17 00:00:00 2001 From: GW_MC <72297530+GWMCwing@users.noreply.github.com> Date: Wed, 7 Jan 2026 15:58:03 +0800 Subject: [PATCH] Fix: Refactor upstream count retrieval and improve query filtering logic --- apps/api/src/services/nginx/upstream.rs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/apps/api/src/services/nginx/upstream.rs b/apps/api/src/services/nginx/upstream.rs index 9678989..5ed9a14 100644 --- a/apps/api/src/services/nginx/upstream.rs +++ b/apps/api/src/services/nginx/upstream.rs @@ -173,7 +173,7 @@ impl UpstreamService for UpstreamServiceImpl { let count_info = with_conn!(&*self.connection, tx, conn, { upstream::Entity::find() .select_only() - .column_as(upstream::Column::Id, "count") + .column_as(upstream::Column::Id.count(), "count") .into_model::() .one(*conn) .await? @@ -199,9 +199,10 @@ impl UpstreamService for UpstreamServiceImpl { )))?; let targets = upstream_target::Entity::find() .filter(upstream_target::Column::UpstreamId.eq(upstream_id)) - .apply_if(Some(concrete_options.filter_by_enabled), |query, _v| { - query.filter(upstream_target::Column::Enabled.eq(true)) - }) + .apply_if( + concrete_options.filter_by_enabled.then_some(true), + |query, _v| query.filter(upstream_target::Column::Enabled.eq(true)), + ) .all(*conn) .await?; (up, targets)