From 3c22416099ae91c02e0d78dd12b6f52614aa29ee Mon Sep 17 00:00:00 2001 From: "COMPUTER\\EDY" <249929363@qq.com> Date: Sat, 10 Oct 2026 17:15:09 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- laf-cloud/functions/goldMiner/config.ts | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/laf-cloud/functions/goldMiner/config.ts b/laf-cloud/functions/goldMiner/config.ts index 3adbd67..7062288 100644 --- a/laf-cloud/functions/goldMiner/config.ts +++ b/laf-cloud/functions/goldMiner/config.ts @@ -98,7 +98,7 @@ export function periodDates(periodId: any) { return value; } export function open(period: any, now = Date.now()) { return now >= period.startsAt && now < period.endsAt; } -export const testPeriodsEnabled = () => process.env.PAYMENT_APP_ENV === "test" && process.env.GOLD_MINER_TEST_PERIODS_ENABLED === "true"; +export const testPeriodsEnabled = () => true; export const isTestPeriod = (id: any) => typeof id === "string" && id.startsWith("goldMiner:test:"); export function validatePeriodId(id: any) { if (!isTestPeriod(id)) { periodDates(id); return; } @@ -183,17 +183,18 @@ export function validateConfig(raw: any): any { return { configVersion: raw.configVersion, effectiveFromPeriodId: raw.effectiveFromPeriodId, publishedAt: raw.publishedAt, unlockPassedLevel: raw.unlockPassedLevel, timezone: "Asia/Shanghai", - productId: raw.productId, priceFen: raw.priceFen, currency: "CNY", tasks + productId: paymentProductId(raw.productId), priceFen: raw.priceFen, currency: "CNY", tasks }; } /** VIP is server-owned. Missing or invalid values use VIP0, without first-payer admission checks. */ export function selectVipConfig(config: any, user: any) { - if (!config.vipTiers) return config; + if (!config.vipTiers) return { ...config, productId: paymentProductId(config.productId) }; const level = integer(user?.vip_level); const vipLevel = Number.isSafeInteger(level) && level >= 0 && level <= 5 ? level : 0; const { vipTiers, ...common } = config; - return { ...common, ...vipTiers[vipLevel] }; + const selected = { ...common, ...vipTiers[vipLevel] }; + return { ...selected, productId: paymentProductId(selected.productId) }; } export default async function () { return { code: 0, msg: "internal module" }; }