import type { AgreementType } from './agreement.types' function parseEnvId(value: string | undefined): number | undefined { if (value === undefined || value === '') return undefined const n = Number(value) return Number.isFinite(n) && n >= 0 ? n : undefined } /** 与后端协议主键对应,可在 .env 中配置 */ export function resolveAgreementId(type: AgreementType): number { const fromEnv = type === 'service' ? parseEnvId(import.meta.env.VITE_AGREEMENT_ID_SERVICE) : parseEnvId(import.meta.env.VITE_AGREEMENT_ID_PRIVACY) if (fromEnv !== undefined) return fromEnv return 0 } export function parseAgreementIdFromQuery(raw: unknown): number | undefined { if (raw === undefined || raw === null || raw === '') return undefined const n = Number(raw) return Number.isFinite(n) && n >= 0 ? n : undefined }