需求描述

1.    需求概述

1.1. 背景

目前称重发货后,经常存在进销存服务执行超时,导致已发货的包裹库存未扣减成功


2.    功能设计

2.1. 调库配货

2.1.1 需求说明

a)锁定库存

调库锁定库存的时候,将循环锁定,改为调用3部批量锁定库存方法,如3部方法返回失败,则需要将整个调库配货回滚。如果公共方法返回失败原因是并发,自动重试2次,重试间隔0.5s。

暂定公共方法一次传100个sku,最终结果待3部确定,截至9.15之前


b)扣减库存

未开启进销存 && 未开启一品多位,会在配货的时候进行扣减库存

配货时扣减库存,将循环扣减,改为调用3部批量扣减库存方法,如3部方法返回失败,则需要将整个配货回滚。同一个包裹的产品库存必须同时扣减和同时失败。如果公共方法返回失败原因是并发,自动重试2次,重试间隔0.5s。

暂定公共方法一次传100个sku,最终结果待3部确定,截至9.15之前


注:涉及正常调库、收货即发调库、直采调库、工厂直发调库


------------------------------------------

2.2. 称重发货

2.2.1 需求说明

a)在原进销存服务上,将进销存逻辑全部去掉,只保留扣减库存逻辑;

b)针对于开启了进销存或者开启了一品多位的商户,才跑此服务,并将已发货的未扣减库存的包裹查询出来,进行批量扣减库存;

c)由原来的循环扣减库存,改为调用3部批量扣减库存方法,扣减完之后再调用进销存公共方法(2.4需求点)。


注:如3部的方法中返回整批失败,我们这边需要重试。

这个服务待上线后申请开启服务-------请教熊威


----------------------------------------

2.3. 打回称重

2.3.1 需求说明

a)打回称重的包裹,必须是有扣减库存 才可打回,否则提示:库存正在扣减中,请稍后再试!

b)针对于开启了进销存或者开启了一品多位的商户,调用3部批量返回扣减库存的方法,实时返回扣减库存,并调用进销存公共方法(2.4需求点)

c)撤销订单包裹

针对 未开启进销存 && 未开启一品多位,在删除包裹的时候,调用3部批量返回扣减库存的方法,将扣减库存进行返回。

注:这点本身就是调用3部的方法,所以此需求点只是验证下即可


----------------------------------------

2.4. 进销存公共方法

2.4.1 需求说明

在扣减库存或者返回库存的时候,需调用进销存组RequestAPILogAddModels方法,数据结构如下:

Biz.Inventory.PackageWeightService.RequestAPILogAddModels
(
List<PackageWeighingInventoryDetail> packageResultList //参数一
,RB.DAL.DALHelper helper = null //参数二
)

参数一:必传
public class PackageWeighingInventoryDetail
{
public int CustomerID { get; set; } //商户号
public int PackageID { get; set; } //包裹ID
public DateTime? ShipTime { get; set; } //发货时间
public int IsCustomerReturn { get; set; } //是打回称重 0:称重出库 1:打回称重
public int AdminID { get; set; } //操作员
public string AdminName { get; set; } //操作人员
}
参数二:可不传,用于事务控制
DALHelper hp=nulll


注:发版先灰度,加商户号开关进行控制,一品多位和进销存客户各发布几个。


调库配货已更新,本次更新称重发货,打回称重操作量小,风险较大,暂不更新;


验收标准
暂无
历史记录  
  1. 2021-12-03 16:06:34, 由 程伟 创建。
  2. 2021-12-03 16:10:14, 由 程伟 编辑。
    修改了 截止日期,旧值为 "0000-00-00",新值为 "2021-12-10"。
  3. 2021-12-04 11:13:33, 由 程伟 编辑。
    修改了 截止日期,旧值为 "2021-12-10",新值为 "0000-00-00"。
  4. 2021-12-04 11:22:44, 由 程伟 编辑。
    修改了 截止日期,旧值为 "0000-00-00",新值为 "2021-12-17"。
  5. 2021-12-10 13:44:49, 由 fengjibo 添加备注。
    .


  6. 2021-12-22 16:03:51, 由 田子豪 确认需求变动,最新版本为#2。
  7. 2021-12-22 16:05:03, 由 田子豪 确认需求变动,最新版本为#3。
  8. 2021-12-23 10:09:04, 由 程伟 取消。
    修改了 任务状态,旧值为 "wait",新值为 "cancel"。
    修改了 指派给 ,旧值为 "fengjibo",新值为 "chengwei"。
    修改了 实际完成,旧值为 "",新值为 "0000-00-00"。
    修改了 由谁取消,旧值为 "",新值为 "chengwei"。
    修改了 取消时间,旧值为 "",新值为 "2021-12-23 10:09:04"。
  9. 2021-12-23 10:09:06, 由 程伟 关闭。
    修改了 任务状态,旧值为 "cancel",新值为 "closed"。
    修改了 指派给 ,旧值为 "chengwei",新值为 "closed"。
    修改了 由谁关闭,旧值为 "",新值为 "chengwei"。
    修改了 关闭时间,旧值为 "0000-00-00 00:00:00",新值为 "2021-12-23 10:09:06"。
    修改了 关闭原因,旧值为 "",新值为 "cancel"。
所属迭代 【主干】产品中心12月第二个版本(2021年)
所属模块 赛盒科技  赛盒ERP管理系统   物流发货组
相关需求 【物流】调库配货和称重发货由循环锁定或实扣更改为批量(称重发货)
指派给 Closed 于 2021-12-23 10:09:06
任务类型 后端
任务标签 初始
开发组
任务状态 已关闭
进度 0%
优先级 P2
关键词
抄送给
由谁创建 程伟 于 2021-12-03 16:06:34
由谁完成 暂无
由谁取消 程伟 于 2021-12-23 10:09:04
由谁关闭 程伟 于 2021-12-23 10:09:06
关闭原因 已取消
最后编辑 程伟 于 2021-12-23 10:09:06
团队 最初预计 总计消耗 预计剩余
工时信息
最初预计 6工时
总计消耗 0工时
预计剩余 6工时
预计开始 0000-00-00
实际开始 0000-00-00
截止日期 2021-12-17