From 5c05f09e23a16a9877dac414d41af2fe6a860ced Mon Sep 17 00:00:00 2001 From: Yansong Zhang <916125788@qq.com> Date: Tue, 10 Feb 2026 11:08:41 +0800 Subject: [PATCH] fix: When the user is a non-sandbox user and has a paid balance, the paid limit will be displayed, otherwise the trail limit will be displayed. --- api/services/workspace_service.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/api/services/workspace_service.py b/api/services/workspace_service.py index 3ee41c2e8d..c36e4d8dc2 100644 --- a/api/services/workspace_service.py +++ b/api/services/workspace_service.py @@ -1,6 +1,7 @@ from flask_login import current_user from configs import dify_config +from enums.cloud_plan import CloudPlan from extensions.ext_database import db from models.account import Tenant, TenantAccountJoin, TenantAccountRole from services.account_service import TenantService @@ -53,7 +54,12 @@ class WorkspaceService: from services.credit_pool_service import CreditPoolService paid_pool = CreditPoolService.get_pool(tenant_id=tenant.id, pool_type="paid") - if paid_pool: + # if the tenant is not on the sandbox plan and the paid pool is not full, use the paid pool + if ( + feature.billing.subscription.plan != CloudPlan.SANDBOX + and paid_pool is not None + and paid_pool.quota_limit > paid_pool.quota_used + ): tenant_info["trial_credits"] = paid_pool.quota_limit tenant_info["trial_credits_used"] = paid_pool.quota_used else: