2026-05-27 13:16:37 +08:00

41 lines
1.4 KiB
TypeScript

import { NextResponse } from "next/server";
import { auth } from "@/app/(auth)/auth";
import { getPointsSystemConfig, getSystemSetting } from "@/lib/db/queries";
import {
ENHANCE_PRO_KREA_SETTING_KEY,
normalizeEnhanceProKreaConfig,
sanitizeEnhanceProKreaConfigForClient,
} from "@/lib/enhance-pro/config";
import { createLogger } from "@/lib/observability/logger";
import { normalizeEnhanceProPointsPricingConfig } from "@/lib/points/config";
const logger = createLogger("enhance-pro-config-api");
export async function GET() {
try {
const session = await auth();
if (!session?.user?.id) {
return NextResponse.json({ error: "未授权,请先登录" }, { status: 401 });
}
const setting = await getSystemSetting({ key: ENHANCE_PRO_KREA_SETTING_KEY });
const config = normalizeEnhanceProKreaConfig(setting?.value);
const pointsConfig = await getPointsSystemConfig();
return NextResponse.json({
success: true,
config: sanitizeEnhanceProKreaConfigForClient(config),
pointsConfig: {
enabled: pointsConfig.enabled === true,
blockOnInsufficient: pointsConfig.blockOnInsufficient !== false,
enhanceProPricing: normalizeEnhanceProPointsPricingConfig(
pointsConfig.enhanceProPricing
),
},
});
} catch (error) {
logger.error("config_fetch_failed", error);
return NextResponse.json({ error: "获取图像增强 Pro 配置失败" }, { status: 500 });
}
}