WMS库存占用详细逻辑流程图
2022-01-01 11:43:22 0 举报
WMS库存占用详细逻辑流程图,货位维度
作者其他创作
大纲/内容
释放redis锁
以MD5值为key加入redis锁
调用库存主流程结束,其他操作,提交事务
是
记录SKU流水、记录子件流水(请求参数无子件跳过)
根据传入的五个字段(qty、inStockQty、outStockQty、freezeQty、occupyQty)操作识别
库存记账开始(doAccount)
添加库存记录
否
循环对每个SKU进行库存处理
更新库存可能引发数量都为0,此时需要删除库存记录
保存库存操作日志(入参以及入参明细结构化存储)
更新库存
更新货位使用信息
刷新货位使用信息
更新该货位占用标记为占用
是否查询到库存属性
计算已用体积、已用重量
设置箱内是否混sku
上游是否指定了库存id
校验token以及其他入参
判断ContentEntity是不是为null
调用基础dubbo接口,设置货位对应的巷道编码、拣选区域编码、工作区域编码
建档资料sku体积、重量发生变化时,可能会导致库存已使用体积和已使用重量变为负数,因此需要进行修正处理
根据MD5值查询库存属性
以库存ID为key,加入Redis锁
库存定位
抛异常
计算算已用体积、已用重量
调用基础商品接口填充入参(设置单件体积、设置单件重量、设置商品名称)
返回false
如果请求参数有子件信息,添加子件或者删除子件
通过
根据属性编码从批次属性基础资料中获取校验字段,并拼接成md5值
将库存属性ID设置到请求参数中重新定位库存
添加库存属性
根据库存ID直接查询库存表
是否定位到库存
根据其他参数查找库存(根据属性生成MD5值,根据MD5值查找库存提高定位库存的效率)
是否更新成功
设置ContentEntity
根据入参传入的订单类型设置单据配置
商品无重量、长、宽、高
不通过
0 条评论
下一页