import { $fetch } from 'ofetch' import { createError, defineEventHandler, readBody } from 'h3' import { useRuntimeConfig } from '#imports' import { getTenantFromContext } from '../../utils/tenant' /** * 企业注册(一站式:企业 + 经办人 + 授权 + 证件材料) * POST /api/tender/register { enterpriseName, password, creditCode, ..., materials: [] } * 代理到 mp-api /api/hjc/auth/register。 * * 约定:mp-api 的业务结果(含校验失败)一律 HTTP 200 + ApiResult{code,message,data}, * 这里**原样透传**给前端,由 useHjcAuth 依据 code===0 判定并把 message 展示出来。 * 仅网络/HTTP 层错误才抛 createError。 */ export default defineEventHandler(async (event) => { const config = useRuntimeConfig() const ctx = getTenantFromContext(event, config) const body = await readBody(event) try { return await $fetch('/hjc/auth/register', { baseURL: config.public.modulesApiBase, method: 'POST', headers: { TenantId: ctx.tenantId }, query: { TenantId: ctx.tenantId }, body }) } catch (error: any) { throw createError({ statusCode: error?.statusCode || error?.response?.status || 502, statusMessage: error?.data?.message || error?.statusMessage || 'Failed to register' }) } })