ai-chatbot/lib/product-planning/server-config.ts
Your Name 987ab3f6a0
Some checks failed
Lint / build (20) (push) Has been cancelled
Playwright Tests / test (push) Has been cancelled
feat: support batch competitor planning lookup
2026-04-30 17:35:25 +08:00

29 lines
1.3 KiB
TypeScript

import "server-only";
import { getSystemSetting } from "@/lib/db/queries";
import {
normalizeProductPlanningApiConfig,
PRODUCT_PLANNING_API_CONFIG_KEY,
} from "./config";
export async function getResolvedProductPlanningApiConfig() {
const setting = await getSystemSetting({ key: PRODUCT_PLANNING_API_CONFIG_KEY }).catch(() => null);
return normalizeProductPlanningApiConfig(setting?.value, {
taobaoApiKey: process.env.TAOBAO_API_KEY,
taobaoApiSecret: process.env.TAOBAO_API_SECRET,
detailPlusBaseUrl: process.env.PRODUCT_PLANNING_DETAIL_PLUS_BASE_URL,
detailPlusInternalBaseUrl: process.env.PRODUCT_PLANNING_DETAIL_PLUS_INTERNAL_BASE_URL,
detailPlusApiKey: process.env.PRODUCT_PLANNING_DETAIL_PLUS_API_KEY,
qaToken: process.env.PRODUCT_PLANNING_QA_TOKEN,
saleToken: process.env.TAOBAO_SALE_API_TOKEN,
planningDbHost: process.env.PRODUCT_PLANNING_DB_HOST,
planningDbPort: process.env.PRODUCT_PLANNING_DB_PORT,
planningDbDatabase: process.env.PRODUCT_PLANNING_DB_DATABASE || process.env.PRODUCT_PLANNING_DB_NAME,
planningDbUser: process.env.PRODUCT_PLANNING_DB_USER,
planningDbPassword: process.env.PRODUCT_PLANNING_DB_PASSWORD,
planningDbCharset: process.env.PRODUCT_PLANNING_DB_CHARSET,
planningDbSsl: process.env.PRODUCT_PLANNING_DB_SSL === "true",
});
}