diff --git a/tenant-service/src/main/java/com/xuqm/tenant/service/FeatureServiceManager.java b/tenant-service/src/main/java/com/xuqm/tenant/service/FeatureServiceManager.java index 6946abd..6cb87d8 100644 --- a/tenant-service/src/main/java/com/xuqm/tenant/service/FeatureServiceManager.java +++ b/tenant-service/src/main/java/com/xuqm/tenant/service/FeatureServiceManager.java @@ -86,12 +86,14 @@ public class FeatureServiceManager { String applyReason) { if (isAppWideService(serviceType)) { - requestRepository.findFirstByAppKeyAndServiceTypeOrderByCreatedAtDesc(appKey, serviceType) - .ifPresent(req -> { - if (req.getStatus() == Status.PENDING) { - throw new BusinessException(400, "已有待审核的开通申请,请等待运营人员处理"); - } - }); + var existing = requestRepository.findFirstByAppKeyAndServiceTypeOrderByCreatedAtDesc(appKey, serviceType); + if (existing.isPresent() && existing.get().getStatus() == Status.PENDING) { + if (deploymentProperties.isPrivate()) { + // 私有化模式:存量 PENDING 请求直接自动开通 + return approveRequest(existing.get().getId(), "私有化部署自动开通"); + } + throw new BusinessException(400, "已有待审核的开通申请,请等待运营人员处理"); + } } ServiceActivationRequestEntity req = new ServiceActivationRequestEntity();