yeg
2026-09-17 20e19d8693d08ccb47e6533d8523fd44cd546a70
refs
用户 yeg <1347747024@qq.com>
星期四, 九月 17, 2026 13:12 +0800
提交者 yeg <1347747024@qq.com>
星期四, 九月 17, 2026 13:12 +0800
提交20e19d8693d08ccb47e6533d8523fd44cd546a70
目录 903967507b0d00294b79aafd66dd2644f04dde97 目录 | zip | gz
parent e2c9202b578bfdce8d46085a7c3932bcaa3ba22b 查看 | 对比
fix(merchant): 收款能力自查不再因缺列打成 500

真机点击「收款能力」报 Unknown column 'capability_sync_until':开发库 flyway 关着,
新列靠启动时 MerchantOnboardingSchemaInitializer 补,而那条 alter table 没成功(初始化等
DDL 元数据锁的上限 5 秒,等不到就记 error 放行)。已在开发库按 V148 的 DDL 手工补列。

代码侧同时修掉那处脆弱点:capabilityCooldownSeconds 是本文件里唯一点名列的查询,
缺列会让整条 SQL 报错、把商户页打成 500;现在改用申请行上已经读到的 capability_sync_until
自己算剩余秒数——少一条 select,缺列只是少一个字段(按没有冷却处理,页面照常显示判定)。
时区显式取 Asia/Shanghai,与 serverTimezone 对 datetime 的解释一致;verifiedAt/nextVerifyAt
的对外字符串格式未变。

Application 记录里的两个能力时间戳改为 LocalDateTime(DatabaseRows 归一后的真实类型),
展示处统一走 clean()。
2个文件已修改
45 ■■■■■ 已修改文件
.scratch/merchant-capability-visibility/issues/03-manual-capability-verify-with-cooldown.md 3 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
talent-card-server/src/main/java/com/talentcard/server/business/merchant/MerchantPaymentReadinessService.java 42 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史