feat(consignment): 建议价精准匹配璀璨数 + 限制璀璨不超过钻石数量

- 修复价格匹配:parseSpecsFromText 支持「璀」字缩写(1璀/2璀/3璀)与「无璀/0璀」,
  避免生产规则被误判为 0 璀;suggestConsignmentPriceFromRules 增加 brillianceCount
  精准对齐匹配,未配对应模板则返回空,解决同钻级多条规则全中并取最高价的问题
- 透传参数:路由与打手端服务均增加 brillianceCount 传递
- 限制璀璨不超过钻级:
  - 前端选项动态禁用:大于当前钻级的璀璨芯片置灰
  - 钻级调小自动收敛:若原选璀璨大于新钻级,自动 clamp 至新钻级
  - 默认值与联动:璀璨数默认 initialValue=0,queryKey 纳入璀璨,切换即刻带出对应建议价
  - 前后端双重校验:前端表单 Validator 校验 + 后端提报硬拦截(brilliance_exceeds_diamond)
- 后端 487 / 前端 54 测试全绿,docs/寄卖系统优化方案.md 记录批次 Z
This commit is contained in:
yml2213
2026-09-17 19:14:04 +08:00
parent ccb5b6f4d6
commit 1526907005
8 changed files with 193 additions and 13 deletions
+2 -1
View File
@@ -484,11 +484,12 @@ export function submitWorkerConsignmentGiftEvidence(
)
}
/** 发布寄卖:按规格(系统/系列/钻级)从「接单模板」带出建议价,如 安卓+暗潮+1钻 → ¥120 */
/** 发布寄卖:按规格(系统/系列/钻级/璀璨)从「接单模板」带出建议价,如 安卓+暗潮+1钻+0璀 → ¥120 */
export function fetchWorkerConsignmentPriceSuggestion(params: {
system: string
series: string
diamondLevel: number
brillianceCount?: number
}) {
return apiGet<{
suggestedPriceFen: number | null