# feat: 产品详情自动生成早鸟优惠文案字段 earlyBirdTip > **服务**: hl-product-service-v2 > **PR**: #918 > **Issue**: #915 > **日期**: 2026-04-19 > **前端是否需要改动**: **展示新字段** --- ## 一、新增字段 管理端 + 小程序端产品详情接口**新增** `earlyBirdTip: String` 字段: | 接口 | 方法 | 路径 | 新字段 | |------|------|------|--------| | 管理端产品详情 | GET | `/admin/product/item/{id}` | `earlyBirdTip: String` | | 小程序端产品详情 | GET | `/mp/product/{id}` | `earlyBirdTip: String` | **其他字段不变**。 ## 二、字段语义 后端根据产品绑定的生效早鸟优惠计划**自动生成**的营销文案字符串。 ### 生成规则 - 正常格式:`满 {minPeople} 人订单总价优惠 {discountAmount} 元` - `minPeople=null/0` 降级:`订单总价优惠 {discountAmount} 元` - 金额自动去除小数尾零:`100.00 → 100`、`99.50 → 99.5` - 未绑定 / 早鸟过期 / 早鸟禁用 / Feign 异常 → **`null`**(前端不渲染) ### 业务约束 一个产品**最多绑定一个**早鸟优惠计划(1-1 关系,由 order-v2 保证,Issue #917 跟进)。 ## 三、前端建议展示位置 营销区块 / 价格区块附近,高亮展示。例如: ```html
🎉 {{ product.earlyBirdTip }}
``` ## 四、测试环境验证 | 场景 | 结果 | |------|------| | 产品绑定 55 元/2 人早鸟 | `"满 2 人订单总价优惠 55 元"` ✓ | | 产品未绑定早鸟 | `null` ✓ | 两端完全对称,行为一致。 ## 五、相关 Issues(顺带跟进,非本 PR) - Issue #916 早鸟编辑页适用产品回显 ID 而非名称 - Issue #917 强制"一产品一早鸟"唯一约束