feat(consignment): 自动匹配改为进入待抢单前一次性匹配
1) 配置改为开启自动匹配 + 匹配订单生效时间,移除内部匹配等待与定时轮询;2) 所有进入待抢单的路径统一先自动匹配一次,未命中进大厅;3) 手动匹配仅允许待抢单;4) 新增迁移 160 回填配置并迁移存量 internal_matching。
This commit is contained in:
@@ -25,7 +25,7 @@ test('管理端:订单服务之后必须存在寄卖配置 tab', () => {
|
||||
)
|
||||
})
|
||||
|
||||
test('寄卖配置面板:必须覆盖保证金/服务费/数量限制/匹配/内部匹配/超时/降价', () => {
|
||||
test('寄卖配置面板:必须覆盖保证金/服务费/数量限制/匹配/超时/降价', () => {
|
||||
const panel = read('../src/pages/admin/panels/ConsignmentConfigPanel.tsx')
|
||||
for (const label of [
|
||||
'打手端 tab 名称',
|
||||
@@ -33,9 +33,9 @@ test('寄卖配置面板:必须覆盖保证金/服务费/数量限制/匹配/
|
||||
'按数量',
|
||||
'开启服务费',
|
||||
'开启单人寄售上限',
|
||||
'匹配模式',
|
||||
'关闭匹配',
|
||||
'手动匹配等待(分钟)',
|
||||
'开启自动匹配',
|
||||
'匹配订单生效时间',
|
||||
'仅精确匹配',
|
||||
'代练超时(小时)',
|
||||
'重新匹配并退还押金',
|
||||
'开启降价提示',
|
||||
@@ -44,10 +44,20 @@ test('寄卖配置面板:必须覆盖保证金/服务费/数量限制/匹配/
|
||||
}
|
||||
})
|
||||
|
||||
test('寄卖配置:旧配置缺少 internalMatch 时不能崩溃', () => {
|
||||
test('寄卖配置:旧配置缺少 autoMatchEnabled / orderEffectiveFrom 时不能崩溃', () => {
|
||||
const panel = read('../src/pages/admin/panels/ConsignmentConfigPanel.tsx')
|
||||
assert.ok(panel.includes('config.internalMatch?.delayMinutes'), '读取旧配置必须使用可选链')
|
||||
assert.ok(panel.includes('values.internalMatch?.delayMinutes'), '保存旧配置必须使用可选链')
|
||||
assert.ok(
|
||||
panel.includes('Boolean(config.matching.autoMatchEnabled)'),
|
||||
'缺少 autoMatchEnabled 时必须用 Boolean 容错',
|
||||
)
|
||||
assert.ok(
|
||||
panel.includes('dayjs(config.matching.orderEffectiveFrom || undefined)'),
|
||||
'缺少 orderEffectiveFrom 时必须回退到当前时间',
|
||||
)
|
||||
assert.ok(
|
||||
panel.includes('values.matching.orderEffectiveFrom?.toISOString()'),
|
||||
'保存时生效时间必须使用可选链',
|
||||
)
|
||||
assert.ok(panel.includes('staleTime: 0'), '配置查询必须每次重拉,避免旧缓存缺字段')
|
||||
})
|
||||
|
||||
|
||||
Reference in New Issue
Block a user