任务描述
暂无
需求描述

一、需求背景

1、线上测试时,订单预占库存导致“平衡库存”的2类策略,执行“调整可售数”时不准确

2、成因:前期JD对接人未说明“库存数量、订单预占”的关系、接口对应的参数,故为了避免影响上线,仅考虑了“库存数量”

3、现状:通过线上数据,验证了数据关系


二、已验证

(一)JD参数关系&业务含义:库存数量(改listing所有库存)=订单预占(listing出单锁定的库存)+锁定库存+可销售库存

1、考虑到业务中、API中,未出现参数“锁定库存”(JD未回复用途),预计是非业务情况,则暂时不考虑此参数

(二)API&页面的参数对应关系、业务含义

1、instockNum=库存数量

2、preLockNum=订单预占

(三)SKU有多个仓库,API出参格式是
-1,instockNum=4,preLockNum=2
-2,instockNum=5,preLockNum=5


三、补偿逻辑

PS、产品定义:平衡库存之前产生的订单预占库存,视为已经出库的库存。故平衡库存的目标值,不计算订单预占库存


(一)自动补货策略:条件-可售数

1、获取该listing所有可发货仓库的可售数,求和,得出listing总可售数【即,页面上的可销售库存】

2、各仓库可售数=instockNum-preLockNum【变更点】

E.g.下方listing的总可售数=(4-2)+(5-5)=2

 


(二)自动补货、防超卖策略:策略执行环节“调用API-调整可售数”。【为了保证listing总可售数=目标可售数(定义:策略执行的目标值)】【可接口调整的是instockNum;即,执行目标值=参数instockNum】

1、确认该listing的可售数差值=目标可售数-所有仓库可售数之和【仓库可售数=instockNum-preLockNum】

1.1“可售数差值”【后称差值】≥0

1.1.1以“中国默认仓”、storecode“-1”为“执行目标仓(定义:要修改的仓库)”

1.1.2以“差值+当前instock”【变动点;此场景未改动其他仓】为执行目标值

1.1.3以上述2者执行策略

E.g.按上述例子

策略目标可售数=20

差值=20-(4-2)-(5-5)=18

接口可调整的只有instockNum

当前instockNum=4,那么调用API的值=18+4=22

验证可售数:(22-2)-(5-5)=20


1.2“可售数差值”<0

1.2.1以“差值”遍历仓库(非“中国默认仓”优先),与仓库可售数做加法;

1.2.2新差值=旧差值+仓库可售数【仓库可售数=instockNum-preLockNum】

1.2.3新差值<0,记录“计算过的仓库”的“可售数=0”,以新值循环“1.2.2”

1.2.4新差值N≥0,停止,记录本轮循环的仓库、使“新差值N≥0”的前一个“差值M”【定义:≥0的新差值是新差值N,新差值N前一个差值是新差值M】

1.2.5以“计算过的仓库”为“执行目标仓”(可能有N个)

①记录“可售数=0”的仓库【当前instockNum-preLockNum=0】,以当前该仓库的“preLockNum”【变更点】为执行目标值,执行策略

②“触发1.2.4”的仓库,以“差值M+当前instock”【变更点】为执行目标值,执行策略

E.g.假设instockNum=24(-1仓)、25(-2仓),prolockNum=2、5

策略目标可售数=20

差值=20-(24-2)-(25-5)=-22

1、新差值M=-22+(25-5)=-2

2、新差值N=-2+(24-2)=20

那么调用API的值

1、-2仓:5

2、-1仓:当前instock+差值+=24+(-2)=22

验证可售数:(22-2)-(5-5)=20

验收标准
暂无
历史记录  
  1. 2022-11-21 16:34:33, 由 王谦 创建。
  2. 2022-11-21 16:35:11, 由 王谦 编辑。
    修改了 最初预计,旧值为 "2",新值为 "4"。
    修改了 预计剩余,旧值为 "2",新值为 "4"。
  3. 2022-11-21 16:35:34, 由 宋宁 启动。
    修改了 实际开始,旧值为 "0000-00-00 00:00:00",新值为 "2022-11-21 16:35:32"。
    修改了 任务状态,旧值为 "wait",新值为 "doing"。
  4. 2022-11-21 19:26:55, 由 宋宁 完成。
    修改了 总计消耗,旧值为 "0",新值为 "4"。
    修改了 指派给 ,旧值为 "songning",新值为 "wangqian"。
    修改了 实际完成,旧值为 "",新值为 "2022-11-21 19:26:51"。
    修改了 任务状态,旧值为 "doing",新值为 "done"。
    修改了 预计剩余,旧值为 "4",新值为 "0"。
    修改了 由谁完成,旧值为 "",新值为 "songning"。
  5. 2022-11-22 10:07:51, 由 王谦 关闭。
    修改了 任务状态,旧值为 "done",新值为 "closed"。
    修改了 指派给 ,旧值为 "wangqian",新值为 "closed"。
    修改了 由谁关闭,旧值为 "",新值为 "wangqian"。
    修改了 关闭时间,旧值为 "0000-00-00 00:00:00",新值为 "2022-11-22 10:07:51"。
    修改了 关闭原因,旧值为 "",新值为 "done"。
所属迭代 JDWalmart平衡库存
所属模块 /
相关需求 综合平台-平衡库存-JDW1.0.1:preLockNum补偿逻辑
指派给 Closed 于 2022-11-22 10:07:51
任务类型 后端
任务标签 初始
开发组 百货开发组
任务状态 已关闭
进度 100%
优先级 P2
关键词
抄送给
由谁创建 王谦 于 2022-11-21 16:34:33
由谁完成 宋宁 于 2022-11-21 19:26:51
由谁取消 暂无
由谁关闭 王谦 于 2022-11-22 10:07:51
关闭原因 已完成
最后编辑 王谦 于 2022-11-22 10:07:51
团队 最初预计 总计消耗 预计剩余
工时信息
最初预计 4工时
总计消耗 4工时
预计剩余 0工时
预计开始 0000-00-00
实际开始 2022-11-21
截止日期 0000-00-00