62 lines
5.4 KiB
JavaScript
62 lines
5.4 KiB
JavaScript
/**
|
||
* 每日进销存 —— 列定义
|
||
*
|
||
* 表头取自桌面《库存监控.xlsx》,顺序与表格一致。
|
||
* source 标记该列数据来源,便于在页面上如实标注口径:
|
||
* - baseline:22 号基准值(业务库无对应单据表,无法还原)
|
||
* - runtime:运行时从业务库实时取数
|
||
*/
|
||
|
||
export const COLUMN_SOURCE = {
|
||
baseline: 'baseline',
|
||
runtime: 'runtime',
|
||
};
|
||
|
||
/** 表格存在两个名为「期初」的列,第二个加后缀区分 */
|
||
export const DAILY_INVENTORY_COLUMNS = [
|
||
{ key: 'warehouse', label: '仓库', source: 'baseline', tip: '取自主数据表 rpt.jst_warehouseInfo 的仓库名,表格显示为「XX主仓」' },
|
||
{ key: 'openingQty', label: '期初数量', source: 'baseline', tip: '22 号进销存基准值。业务库无按天的历史库存结存表,无法还原,取自 9-22 导出数据' },
|
||
{ key: 'processIn', label: '加工进仓', source: 'baseline', tip: '22 号基准值。业务库无加工单据表' },
|
||
{ key: 'purchaseReturn', label: '采购退货', source: 'baseline', tip: '22 号基准值(业务库 jst_purchaseout 虽有单据,但数值与该进销存口径不一致)' },
|
||
{ key: 'purchaseIn', label: '采购进仓', source: 'baseline', tip: '22 号基准值(同上,业务库数值与进销存口径不一致)' },
|
||
{ key: 'otherIn', label: '其它进仓', source: 'baseline', tip: '22 号基准值。业务库无对应单据表' },
|
||
{ key: 'otherReturn', label: '其它退货', source: 'baseline', tip: '22 号基准值。业务库无对应单据表' },
|
||
{ key: 'salesOut', label: '销售出仓', source: 'baseline', tip: '22 号基准值(负数为出库)。业务库 jst_salesOutboundInfo 数值与该进销存口径不一致' },
|
||
{ key: 'stocktaking', label: '盘点', source: 'baseline', tip: '22 号基准值。业务库无盘点单据表' },
|
||
{ key: 'processOut', label: '加工出仓', source: 'baseline', tip: '22 号基准值。业务库无加工单据表' },
|
||
{ key: 'transferOut', label: '调拨出', source: 'baseline', tip: '22 号基准值(负数为调出)。业务库无调拨单据表' },
|
||
{ key: 'salesReturn', label: '销售退货', source: 'baseline', tip: '22 号基准值(业务库 jst_returnAndRefundInfo 数值与该进销存口径不一致)' },
|
||
{ key: 'transferIn', label: '调拨入', source: 'baseline', tip: '22 号基准值。业务库无调拨单据表' },
|
||
{ key: 'openingQtyExtra', label: '期初(2)', source: 'baseline', tip: '表格中的第二个「期初」列(9-22 导出值)' },
|
||
{ key: 'otherOut', label: '其它出库', source: 'baseline', tip: '22 号基准值(负数为出库)。业务库无对应单据表' },
|
||
{ key: 'closingQty', label: '期末数量', source: 'runtime', tip: '聚水潭实时库存 rpt.jst_inventoryInfo,按仓库 wms_co_id 单仓统计(与表格 22 号期末一致,24/25 仓精确匹配)' },
|
||
{ key: 'turnoverDays', label: '库存周转天数', source: 'runtime', tip: '月度发货总件数 / 月度日均库存件数 × 100%(全员均值),数据来自 pm_stockMonitor' },
|
||
{ key: 'warnLevel', label: '滞销预警级库存量', source: 'runtime', tip: '库龄 < 3 个月 且 30% ≤ 周转率 ≤ 199% 的 SKU 库存合计' },
|
||
{ key: 'slowLevel', label: '商品慢流级库存量', source: 'runtime', tip: '库龄 < 3 个月且周转率 ≥ 200%,或库龄 ≥ 3 个月且周转率 30%~99% 的 SKU 库存合计' },
|
||
{ key: 'staleLevel', label: '商品呆滞级库存量', source: 'runtime', tip: '库龄 3~12 个月且周转率 ≥ 100%,或库龄 > 12 个月且周转率 100%~199% 的 SKU 库存合计' },
|
||
{ key: 'zombieLevel', label: '商品僵尸级库存量', source: 'runtime', tip: '库龄 > 12 个月 且 周转率 ≥ 200% 的 SKU 库存合计' },
|
||
];
|
||
|
||
/** 口径说明弹框文案 */
|
||
export const FORMULA_DESCRIPTION = [
|
||
'数据来源说明:',
|
||
'· 期初数量 / 加工进仓 / 采购退货 / 采购进仓 / 其它进仓 / 其它退货 / 销售出仓 / 盘点 / 加工出仓 / 调拨出 / 销售退货 / 调拨入 / 其它出库:',
|
||
' 取自 2026-09-22 聚水潭进销存导出值。业务库 JSReportReplica 无历史库存结存表,',
|
||
' 也缺少调拨 / 盘点 / 加工 / 其它出入库单据表;已有的采购与销售单据数值与该进销存口径不一致,故采用导出值。',
|
||
'· 期末数量:运行时取聚水潭实时库存 rpt.jst_inventoryInfo(按 wms_co_id 单仓),随刷新滚动。',
|
||
'· 库存周转天数 / 四级库存量:运行时由库存快照 rpt.pm_stockMonitor 计算,基准时刻为快照日次日 01:00。',
|
||
'',
|
||
'算式:',
|
||
'· 期末数量 = 期初数量 + 加工进仓 + 采购进仓 + 其它进仓 + 其它退货 + 销售退货 + 调拨入',
|
||
' − 采购退货 − 销售出仓 − 盘点 − 加工出仓 − 调拨出 − 其它出库',
|
||
'· 库存周转天数 = 月度发货总件数 / 月度日均库存件数 × 100%',
|
||
' 其中 月度发货总件数 = threeAvgSale × 30,月度日均库存件数 = jsStock',
|
||
'· 库存分级(库龄 + 周转率双维度):',
|
||
' 库龄 < 3 个月 且 周转率 30%~199% → 滞销预警',
|
||
' 库龄 < 3 个月 且 周转率 ≥ 200% → 商品慢流',
|
||
' 库龄 ≥ 3 个月 且 周转率 30%~99% → 商品慢流',
|
||
' 库龄 3~12 个月 且 周转率 ≥ 100% → 商品呆滞',
|
||
' 库龄 > 12 个月 且 周转率 100%~199% → 商品呆滞',
|
||
' 库龄 > 12 个月 且 周转率 ≥ 200% → 商品僵尸',
|
||
];
|