From 34c65c8c7cca790aba791f77e4137892c8e9b57b Mon Sep 17 00:00:00 2001 From: ouyangxq <775153912@qq.com> Date: Wed, 14 Oct 2026 14:00:38 +0800 Subject: [PATCH] docs(self-operated): align turnover eligibility and explicit zero stock --- 自营业务/库存周转视图设计.md | 15 +++++++++------ 自营业务/领星一件代发数据统计一期方案.md | 4 ++++ 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/自营业务/库存周转视图设计.md b/自营业务/库存周转视图设计.md index 0aea0eb..c04c717 100644 --- a/自营业务/库存周转视图设计.md +++ b/自营业务/库存周转视图设计.md @@ -78,10 +78,12 @@ SKU 列表是只读分析表,无须新增“操作”列。第一组身份列 三列出库量始终同屏;`baseWindowDays` 决定日均、可售天数、无出库、快慢查询和期间周转的计算基准,默认 30,不会偷偷把未齐的 30 天换成 7 天。每窗独立返回完整量、已采集量、完整/部分/未知日数、实际日期及原因。部分窗口显示“已采集 X,覆盖不足”,所有日均与派生判断不采用该部分量。 +SKU 窗口出库、日均、可售天数及无出库判断与库存明细使用相同资格:仓库固定销量版可信且日期覆盖完整、商品及实际出库数量单位有效时,缺销量行可确认为窗口内零出库,不再要求商品首次观察早于窗口起点。单日存在无效单位或异常出库数量时必须撤销该日资格,不能由缺行补零掩盖。首次观察时间继续服务于历史件数周转等证据判断,历史库存代表缺口仍不得补零。卡片汇总与列表筛选使用同一结果,真正未知的库存或出库继续保留已知小计和待核验数。 + | 指标 | 计算与命名 | 资格 | | --- | --- | --- | | N 日日均出库 | 同期完整实际出库件数 ÷ N,含真实零出库日 | 使用固定销量版日事实及完整日规则;不只除以有出库的天数 | -| 预计可售天数 | 当前正品可售量 ÷ N 日日均出库 | 沿用库存有效性、窗口完整性和本仓 SKU 观察资格;描述正品可售库存,不代表全部实物消化时间 | +| 预计可售天数 | 当前正品可售量 ÷ N 日日均出库 | 沿用库存有效性、可信窗口完整性及数量单位资格,不以 SKU 首次观察时间阻断;描述正品可售库存,不代表全部实物消化时间 | | N 日件数周转次数 | 同期完整实际出库件数 ÷ 同期每日全品质实物观测均值 | N 个合格同口径日代表、范围/单位/商品身份可靠、同期销量完整;显示“次/N日”,不叫财务周转率 | 期间平均库存为 `N 个每日代表的实物量之和 ÷ N`,沿用主方案 `DAILY_SCHEDULED_FIRST_V1`:每天指定的首次合格计划采集,不改用每天最新快照,不使用期初/期末二点平均,不是日终或时间加权平均。每个日代表的商品库存先按品质聚合一次,冻结和次品是实物子集,在途不加入。出库分子为同商品同单位全部实际出库,不以某个库存品质过滤重复累加订单。 @@ -115,13 +117,13 @@ SKU 列表是只读分析表,无须新增“操作”列。第一组身份列 | --- | --- | | 全部 ALL | 固定版本候选全集,保留零值、售空及未知;默认实物件数降序 | | 实物件数最多 | ALL+实物降序;不得称为占用空间最大 | -| 所选时段无出库 NO_OUTBOUND_IN_WINDOW | 有效正实物、所选完整时段出库为零及本仓观察资格;包含全冻结/次品;按所选基准窗口判定 | +| 所选时段无出库 NO_OUTBOUND_IN_WINDOW | 有效正实物、所选可信完整时段出库为零及有效数量单位;包含全冻结/次品;按所选基准窗口判定 | | 消化较慢 COVERAGE_GT | 有效正品可售量和 N 日日均均为正且正式可售天数 > 查询阈值;天数降序 | | 消化较快 COVERAGE_LE | 有效正品可售量和 N 日日均均为正且正式可售天数 ≤ 查询阈值;天数升序;只是消化估算,不代表持续销售或正式高周转等级 | | 冻结/次品 FROZEN/DEFECTIVE | 对应有效数量 >0,不依赖销量完整性;这些库存可能无法按日均正常售出 | -| 待评估 UNASSESSABLE | 当前库存、所选 N 日窗口或 SKU 观察资格不足,无法完整评估流转表现;有效零可售仍按优先规则显示0天,窗口不足时可同时标“待评估:销量覆盖不足”;完整零出库不属于此类 | +| 待评估 UNASSESSABLE | 当前库存、所选 N 日可信窗口或数量单位资格不足,无法完整评估流转表现;有效零可售仍按优先规则显示0天,窗口不足时可同时标“待评估:销量覆盖不足”;完整零出库不属于此类 | -可售天数判定固定为库存有效性 → 明确零可售 → 正可售的窗口/观察资格 → 分母是否为零;待评估标签不覆盖这一数值顺序,也不等同“可售天数必为空”。另提供“周转样本不足”状态/筛选 `turnoverStatus=INSUFFICIENT`,它与经营待评估独立:已有完整出库和可售天数的 SKU 可以仅缺历史库存样本。无出库与慢消化是不同集合,不将空天数伪装为超大数;冻结/次品与其他关注可重叠,不把标签命中数相加当总 SKU 数。 +可售天数判定固定为库存有效性 → 明确零可售 → 正可售的窗口/单位资格 → 分母是否为零;待评估标签不覆盖这一数值顺序,也不等同“可售天数必为空”。另提供“周转样本不足”状态/筛选 `turnoverStatus=INSUFFICIENT`,它与经营待评估独立:已有完整出库和可售天数的 SKU 可以仅缺历史库存样本。无出库与慢消化是不同集合,不将空天数伪装为超大数;冻结/次品与其他关注可重叠,不把标签命中数相加当总 SKU 数。 货主视图不把整个货主简单分为快/慢:使用“含此类 SKU 的货主”筛选,行内同时显示该类已确认 SKU 数、实物件数和待判断数;未输入阈值时快慢相关值为空并显示“未设查询阈值”。 @@ -163,7 +165,7 @@ SKU 数值表头支持实物件数、正品可售、7/15/30 日出库、所 | 三窗实际出库 | `ll_selfop_sku_daily_sales`,按固定销量版、仓库及最长max(30,N)日读取,一次条件聚合三窗;仓级概览优先复用 `ll_selfop_warehouse_daily_sales` 及原覆盖证据 | | 当前实物/可售库存 | `ll_selfop_inventory_snapshot`+其固定 profile,同 SKU 全品质先聚合,避免与日销量多行连接后乘倍 | | 历史平均库存 | `ll_selfop_sync_run.inventory_daily_sample_date/inventory_sample_rule_version` 对应的 snapshot、profile、范围与发布证据;最多366个不可变代表批次 | -| 商品观察与缺日 | 固定版本 profile+销量覆盖证明+各库存代表的资格;缺行不补零,不读取可变最新档案污染旧上下文 | +| 商品观察与缺日 | 固定版本 profile+销量覆盖证明+各库存代表的资格;可信完整销量覆盖内缺销量行可计零,缺库存代表行仍不得补零,不读取可变最新档案污染旧上下文 | | 查询上下文 | 沿现有版本上下文机制扩展日代表集合;可用服务端签名令牌或既有上下文存储,但冻结字段及权限行为一致,实施前总控确定唯一方式 | 本轮不新增 7/15/30 天销量表、不复制库存日明细、不存一张会被实时覆盖的“SKU 周转结果表”,也不新增采集调度。若实际执行计划证明需要索引或有界聚合缓存,由总控在唯一 SQL 基线中评审;不凭设计先引入缓存平台。没有历史代表时,周转值为空即可交付页面,不能为得到数值额外扫描领星或修改原样本标记。 @@ -201,7 +203,8 @@ SKU 数值表头支持实物件数、正品可售、7/15/30 日出库、所 | 7日齐、15/30日未齐 | 7日正式值可用;其他显示已采集量与不足;30日基准天数空,不自动缩短窗口 | | 30日出库齐、仅2个日代表/只有人工TEST库存 | 显示真实样本缺口,正式周转空;销量和符合资格的可售天数继续展示 | | 全冻结/次品正实物且完整30日零出库 | 可命中无出库和库存品质关注;可售为零不判消化较快,不重复累加实物 | -| 新品/来源缺行/负数/过期 | 对依赖指标逐项传播未知,不认定无出库、快消化或优秀;负数不取绝对值 | +| 新品/首次观察晚于窗口起点 | 可信完整销量窗口按实际出库计算日均、天数及无出库判断,不因观察时间变成覆盖不足;期间件数周转仍核对历史库存样本与观察证据 | +| 来源库存缺行/负数/过期或销量未覆盖 | 对依赖指标逐项传播未知;不得把真正未知数量补零,负数不取绝对值 | | 库存有效且可售0,但销量窗口不足 | 可售天数0并标无可售库存,同时保留销量覆盖不足及待评估;不因0天进入消化较快 | | 平均库存正且零出库/平均库存零且有出库 | 前者周转0;后者为空并说明单日观测局限,不显示无限大 | | 当前售空但期间有出库与历史库存 | 仍计入货主期间出库及平均库存;不因当前零库存丢失历史贡献 | diff --git a/自营业务/领星一件代发数据统计一期方案.md b/自营业务/领星一件代发数据统计一期方案.md index f9a5402..6f45f2c 100644 --- a/自营业务/领星一件代发数据统计一期方案.md +++ b/自营业务/领星一件代发数据统计一期方案.md @@ -169,6 +169,8 @@ OMP 的 `customerCode` 是外部货主编码,必须保存,不创建虚构客 | 可售数量 | 自营授权货主、指定仓库、正品 `productQuality=0` 的 `useStkQty`;不再次扣减冻结量,也不使用实物量自行推算 | | 单独留存 | `freezeQty`、`transitQty`,账号、货主、仓库、品质、同步批次、观测时间及质量标记 | +正品可售的明确零值例外:在已发布的完整库存批次中,同一货主+SKU只有次品行,且这些行均为VALID、实物/可用/冻结均明确为0时,正品可售聚合为0。存在正品行但其可用量缺失、缺行占位、异常品质、数量未知或非零时不适用;库存单位与时效校验仍生效。经营总览、库存明细及库存周转共用此规则,不改写来源快照。 + 库存保存产品库存接口全部品质的记录,只将正品可用库存纳入可售量,不将次品或在途混入。代理仓响应中的 `stockCompare` 是对照信息,不与本条库存再次累加。库存读取来自从库,有秒级同步延迟;库存组成、零值和空值的实际语义仍需页面对账。数量使用十进制类型保留源精度,列表 `qty` 的类型与描述存在差异,不应直接整数截断。金额、收件人、电话和地址不属于本期统计所需字段。 OMP 请求使用 `appKey`、秒级 `timestamp`、`sign` 及业务 `data`,签名按照 [OMP 官方加签说明](https://apidoc-omp.xlwms.com/docs/%E5%BC%80%E5%8F%91%E9%AA%8C%E7%AD%BE%E5%B7%A5%E5%85%B7.md)验证固定测试向量与参数序列化。密钥与签名不写日志、不提交源码;请求时钟同步、配额、并发和超时均由适配器管理。 @@ -743,6 +745,8 @@ SKU 每日出库销量 实物量为同 SKU 全部已核验品质的 `physical_quantity` 之和;冻结量按各品质 `frozen_quantity` 独立汇总,是实物中的受限数量,不再加到实物总量;次品实物也是实物的一部分。可售量只取正品 `available_quantity`;在途单列,不视为当前占仓。未知品质可保留来源实物,但不推断它是正品或次品。任何数量缺失或异常均按其指标依赖传播,不能把一个数值有效误当该 SKU 所有指标均有效。实物件数仅表示数量,不表示立方米、托盘或库位占用。 +完整发布的库存快照中,若某 SKU 仅有品质为次品、质量状态有效且实物/可用/冻结均明确为零的记录,可售量确认为零;不得仅因没有正品行而使全仓可售总量未知。存在正品行但字段缺失或异常、未知品质、缺整个 SKU 的库存行、库存过期或单位不明时,继续按未知处理。该规则同时适用于库存明细、经营总览和库存周转,不把一般的来源缺行统一补零。 + 关注条件使用下列明确语义;所需库存必须有效且不过期,销售资格沿用所选完整可信窗口及有效数量单位(经营总览及严格下钻的窗口以[经营总览图表设计](经营总览图表设计.md)为准)。标签可并存,不将冻结/次品与其他标签的命中数简单相加: | `attention` | 判定及输出 |