fix(模块化库存监控): 已配置MKH 改从聚水潭 SKU 级 BOM 维护(jst_skuBomItem)判定
业务反馈上一版「已配置MKH」数量不对(仅 29 个),原因是用了 jst_comboProductItem 组合装引用口径,漏掉了真正以 MKH 成品为父项的 BOM 配件。 修正: - 数据源由 jst_comboProductItem 改为 rpt.jst_skuBomItem(聚水潭 SKU 级 BOM 明细, 含配件商品编码 map_outer_sku_id)。 - 判定口径:目标仓商品编码出现在 jst_skuBomItem.map_outer_sku_id,且父项 sku_id 以 'MKH' 开头(即被某 MKH 模块化成品 BOM 引用为配件) → 已配置MKH。 - 实测目标仓 794 个 SKU 中 699 个命中(map_outer_sku_id 匹配、父项 MKH 过滤), 95 个未配置,合计 794,与接口返回 summary 一致。 - 同步前端状态列 tooltip 与页脚口径说明。 - 移除对「产品资料系统数据库商品档案」「jst_comboProductItem 组合装」两套旧口径的依赖。 注:pm_bomBaseInfo(聚水潭 BOM 维护) 的配件行无 SKU 编码列(仅中文品名/位号), 其组件 SKU 编码实际落在 jst_skuBomItem.map_outer_sku_id,故采用后者。
This commit is contained in:
parent
e6ea1246f9
commit
0bb7c5905d
@ -50,13 +50,18 @@ const WARNING_LEVEL = Object.freeze({
|
||||
NORMAL: '正常',
|
||||
});
|
||||
|
||||
// 模块化配置状态(2026-09-17 业务确认口径):
|
||||
// 「已配置MKH」= 该 SKU 作为配件被某个 MKH 模块化成品引用
|
||||
// (业务库 jst_comboProductItem 中 src_sku_id = 该 SKU
|
||||
// 且 combine_sku_id 以 'MKH' 开头,即 MKH 组合装 / 成品档案)
|
||||
// 「未配置MKH」= 未被任何 MKH 模块化成品引用
|
||||
// 实测目标仓 794 个 SKU 中 29 个命中(32 个被任意组合装引用,其中 29 个属 MKH 体系)。
|
||||
// ⚠️ 之前的「产品资料系统数据库商品档案」口径(661/794)已废弃,改用组合装引用口径。
|
||||
// 模块化配置状态(2026-09-17 业务确认口径,2026-09-17 晚修正):
|
||||
// 「已配置MKH」= 该 SKU 作为「配件商品编码」出现在聚水潭 SKU 级 BOM 维护中,
|
||||
// 被某个 MKH 模块化成品引用:
|
||||
// 业务库 rpt.jst_skuBomItem 中 map_outer_sku_id = 该 SKU
|
||||
// 且父项 sku_id 以 'MKH' 开头(即 MKH 成品档案,如 MKHSJZ0033260600001)。
|
||||
// 「未配置MKH」= 未出现在任何 MKH 成品的 BOM 配件清单中。
|
||||
// 实测目标仓 794 个 SKU 中 **699** 个命中(按 map_outer_sku_id 匹配、父项 MKH 过滤)。
|
||||
// ⚠️ 历史口径均已废弃:
|
||||
// · 早期「产品资料系统数据库商品档案」口径(661/794)—— 覆盖面过宽、与 BOM 无关;
|
||||
// · 上一版「jst_comboProductItem 组合装引用」口径(29/794)—— 仅命中 MKH- 组合装,
|
||||
// 漏掉了真正以 MKH 成品为父项的 BOM 配件,数量明显偏低。
|
||||
// ✅ 当前采用 rpt.jst_skuBomItem(聚水潭 SKU BOM 明细,含配件商品编码 map_outer_sku_id)。
|
||||
const MKH_STATUS = Object.freeze({
|
||||
CONFIGURED: '已配置MKH',
|
||||
UNCONFIGURED: '未配置MKH',
|
||||
@ -76,15 +81,15 @@ const SORTABLE_FIELDS = Object.freeze({
|
||||
});
|
||||
|
||||
/**
|
||||
* 「已配置MKH」判定表达式(2026-09-17 口径):
|
||||
* 该 SKU 作为配件被某个 MKH 模块化成品引用,即业务库 jst_comboProductItem 中
|
||||
* src_sku_id = 该 SKU 且 combine_sku_id 以 'MKH' 开头(MKH 组合装 / 成品档案)。
|
||||
* 「已配置MKH」判定表达式(2026-09-17 晚修正口径):
|
||||
* 该 SKU 作为「配件商品编码」(map_outer_sku_id)出现在聚水潭 SKU 级 BOM 维护
|
||||
* rpt.jst_skuBomItem 中,且父项 sku_id 以 'MKH' 开头(即被某个 MKH 模块化成品引用)。
|
||||
*/
|
||||
const buildConfiguredExistsSql = () => (
|
||||
`EXISTS (
|
||||
SELECT 1 FROM dbo.jst_comboProductItem x
|
||||
WHERE x.src_sku_id = s.sku_id
|
||||
AND x.combine_sku_id LIKE N'MKH%'
|
||||
SELECT 1 FROM rpt.jst_skuBomItem x
|
||||
WHERE x.map_outer_sku_id = s.sku_id
|
||||
AND x.sku_id LIKE N'MKH%'
|
||||
)`
|
||||
);
|
||||
|
||||
@ -268,10 +273,10 @@ async function attachProductImages(rows = []) {
|
||||
}
|
||||
|
||||
/**
|
||||
* 「已配置MKH」判定说明(2026-09-17):
|
||||
* 直接由 buildBaseSql 的 cfg 子查询判定(jst_comboProductItem.src_sku_id
|
||||
* 命中且 combine_sku_id 以 'MKH' 开头),不再依赖产品资料系统数据库。
|
||||
* 产品资料库仅用于补齐商品图片(见 attachProductImages)。
|
||||
* 「已配置MKH」判定说明(2026-09-17 晚修正):
|
||||
* 直接由 buildBaseSql 的 cfg 子查询判定,数据源为聚水潭 SKU 级 BOM 维护
|
||||
* rpt.jst_skuBomItem(map_outer_sku_id = 该 SKU 且父项 sku_id 以 'MKH' 开头),
|
||||
* 不再依赖产品资料系统数据库。产品资料库仅用于补齐商品图片(见 attachProductImages)。
|
||||
*/
|
||||
|
||||
const mapRow = (row = {}) => {
|
||||
|
||||
@ -157,7 +157,7 @@ const AccessoryStockPanel = () => {
|
||||
{
|
||||
title: <TipTitle
|
||||
title="状态"
|
||||
tip="该商品是否被 MKH 模块化成品作为配件引用。已配置MKH = 业务库 jst_comboProductItem 中 src_sku_id 命中该商品编码且 combine_sku_id 以 MKH 开头(被某 MKH 组合装/成品引用为配件);未配置MKH = 未被任何 MKH 模块化成品引用"
|
||||
tip="该商品(配件)是否作为「配件商品编码」出现在聚水潭 SKU 级 BOM 维护中、被某 MKH 模块化成品引用。已配置MKH = 业务库 rpt.jst_skuBomItem 中 map_outer_sku_id 命中该商品编码、且父项 sku_id 以 MKH 开头(被某 MKH 成品 BOM 引用为配件);未配置MKH = 未出现在任何 MKH 成品 BOM 的配件清单中"
|
||||
/>,
|
||||
dataIndex: 'mkhStatus',
|
||||
width: 110,
|
||||
@ -411,7 +411,7 @@ const ModularStockMonitor = () => (
|
||||
图片取自「产品资料系统数据库」商品档案(业务库图片字段均为空)。
|
||||
注:日均发货量 2026-09-17 起由近 7 天改为近 15 天(业务原要求 30 天,但业务库无 30 天日销,最长只到 15 天);
|
||||
库存可用天数仍沿用监控表 jsUseDays(源系统口径),故两者并非同一时间窗。
|
||||
状态列:基于「产品资料系统数据库」判断该 SKU 是否已建立商品档案——已配置MKH = 资料库中可查到该 SKU;未配置MKH = 查不到。
|
||||
状态列:基于聚水潭 SKU 级 BOM 维护(rpt.jst_skuBomItem)判断该商品是否作为「配件商品编码」被某 MKH 成品 BOM 引用——已配置MKH = 出现在某 MKH 成品的 BOM 配件清单中;未配置MKH = 未出现。
|
||||
</Text>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user