From bd1842f08a830170a6d9263b7533aa7dfa5152e3 Mon Sep 17 00:00:00 2001 From: weicw1996 Date: Thu, 8 Oct 2026 13:49:16 +0800 Subject: [PATCH] =?UTF-8?q?fix(review):=20=E4=BC=81=E4=B8=9A=E8=A1=A8?= =?UTF-8?q?=E5=8D=95=E5=88=A0=E9=99=A4=20snake=5Fcase=20=E6=AD=BB=E5=9B=9E?= =?UTF-8?q?=E9=80=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 与 hjc-h5 资质页同一处评审发现:`fill()` 里的 5 个基本户/发票类型字段曾写成 `data.bankAccountName ?? data.bank_account_name ?? ''` 的双键回退。 核实(不猜):后端只会下发 camelCase——hjc-java 的 JacksonConfig 无命名策略、 application.yml 的 spring.jackson 只配 time-zone/date-format、`/api/hjc/enterprise/my` 回的是实体属性名;而本仓的 `server/api/tender/enterprise.get.ts` 是**原样透传** 那个 JSON,不做任何键名变换。所以 snake 那一半永远取不到,是死代码。 只删这 5 个字段的蛇形回退(形态与 hjc-h5 侧保持一致),未动本仓其它改动。 守卫钉在 hjc-java 的 HjcEnterpriseJsonKeysTest(出参键 camelCase + 无人配置 property-naming-strategy)。 门禁:npx eslint . --quiet 通过(无输出);npm run build —— '✨ Build complete!'。 (worktree 里 .nuxt 残缺会先报 TSConfckParseError,已用 npm run postinstall 修复, 属环境问题不是代码问题。) --- app/components/HjcEnterpriseForm.vue | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/app/components/HjcEnterpriseForm.vue b/app/components/HjcEnterpriseForm.vue index e29f85d..10fdb9e 100644 --- a/app/components/HjcEnterpriseForm.vue +++ b/app/components/HjcEnterpriseForm.vue @@ -341,12 +341,15 @@ function fill(data: any) { f.contactPhone = data.contactPhone || '' f.contactEmail = data.contactEmail || '' f.address = data.address || '' - // 兼容后端列名风格(bank_account_name)与 Java 属性风格(bankAccountName)两种回显键 - f.bankAccountName = data.bankAccountName ?? data.bank_account_name ?? '' - f.bankAccountNo = data.bankAccountNo ?? data.bank_account_no ?? '' - f.bankName = data.bankName ?? data.bank_name ?? '' - f.bankBranch = data.bankBranch ?? data.bank_branch ?? '' - f.invoiceType = data.invoiceType ?? data.invoice_type ?? '' + // 后端出参就是 Java 属性名(camelCase):后端 Jackson 没有任何 snake_case 命名策略 + // (`/api/tender/enterprise` 也只是原样透传 `/api/hjc/enterprise/my` 的 JSON), + // 所以曾经写的 `?? data.bank_account_name` 这类回退是**死代码**,已删除; + // hjc-h5 的资质页同步做了同样的删除。守卫见 hjc-java 的 HjcEnterpriseJsonKeysTest。 + f.bankAccountName = data.bankAccountName ?? '' + f.bankAccountNo = data.bankAccountNo ?? '' + f.bankName = data.bankName ?? '' + f.bankBranch = data.bankBranch ?? '' + f.invoiceType = data.invoiceType ?? '' f.agentName = data.agentName || '' f.idCardNo = data.idCardNo || '' f.agentEmail = data.agentEmail || ''