feat(consignment): 关闭自动匹配仍可人工指定,匹配日志记录配置快照

- off 模式文案改为「关闭自动匹配(仍可人工指定)」,手动匹配弹窗增加警示
- 候选接口返回 matchingMode/profileVersionId/exactOnly
- 匹配日志新增 profile_version_id/matching_mode/exact_only 快照(迁移153)
- 修正拼单份额测试为库存售价口径(3×6000×95%=17100)
- 补 off 全链路、模式切换、并发占库、多数量拆分 E2E
This commit is contained in:
2026-11-09 12:19:53 +08:00
parent 01c2517f29
commit 75a5ee8192
7 changed files with 440 additions and 25 deletions
@@ -227,6 +227,14 @@ export default function ConsignmentWorkOrderMatchModal({
) : null}
{options.length > 0 ? (
<Space direction="vertical" size={12} style={{ width: '100%' }}>
{data?.matchingMode === 'off' ? (
<Alert
type="warning"
showIcon
message="该分类已关闭自动匹配"
description="关闭自动匹配不会禁止人工操作:本次手动匹配仍会直接占用寄卖现货并写入匹配留痕,请确认库存与订单规格后再提交。"
/>
) : null}
<Alert
type={remainingNeeded <= 0 ? 'warning' : 'info'}
showIcon
@@ -1864,7 +1864,7 @@ export default function ConsignmentConfigPanel() {
>
<Select
options={[
{ value: 'off', label: '关闭匹配' },
{ value: 'off', label: '关闭自动匹配(仍可人工指定)' },
{ value: 'manual', label: '手动匹配' },
{ value: 'auto', label: '自动匹配' },
]}
@@ -1911,7 +1911,7 @@ export default function ConsignmentConfigPanel() {
type="warning"
showIcon
style={{ marginTop: 12 }}
message="关闭匹配后:新单直接进入接单大厅,不等待内部库存,也不会自动匹配。"
message="关闭自动匹配后:新单直接进入接单大厅,不等待内部库存、也不会自动匹配;运营仍可在后台手动指定寄卖库存。"
/>
) : null}
{matchingMode === 'auto' ? (
+4
View File
@@ -545,6 +545,10 @@ export type ConsignmentMatchCandidate = {
export type ConsignmentMatchCandidatesResponse = {
workOrderId: number
profileId: number | null
profileVersionId: number | null
matchingMode: 'off' | 'manual' | 'auto' | null
exactOnly: boolean | null
categoryId: number | null
sharingEnabled: boolean
totalQuantity: number
activeQuantity: number