业务需求
需求描述
2
验收标准
2
价值描述
数据统计更加方便
001-2
001+ 赛盒WMS库龄库存导出优化
001-修改了 需求描述,区别为:2
001+ 赛盒WMS库龄库存导出优化
001-2
001+ 1. 需求概述
002+ 1.1. 背景
003+ 158反馈,我们的赛盒wms库存库龄报告,账号首选业务人员部门,里面的数据需要拆分出几项进行展示,方便统计;
004+
005+ 1.2. 目标
006+ 赛盒WMS库龄库存导出优化;
007+
008+ 2. 功能设计
009+ 2.1. 业务流程
010+ 无
011+ 2.2. 赛盒WMS库龄库存导出优化;
012+ 2.2.1 操作路径
013+ 报告中心->报表导出->自定义报告导出
014+ 2.2.1.1功能点清单
015+ 赛盒WMS库龄库存导出优化;
016+ 2.2.1.2功能详细描述
017+ 2.2.1.2.1赛盒WMS库龄库存导出优化
018+ 功能点描述:“账号首选业务人员部门”列进行拆分,拆分情况如下图所示;
019+ <a href="http://developer.winit.com.cn/document/detail/id/14.html" target="_blank" rel="noreferrer noopener">
020+ 相关限制:无
021+ 页面:无
022+ 1.原导出数据
023+
024+
025+ 2.需更改为
026+
027+
028+ 2.2.2原型界面
029+ 原型地址:无
001-修改了 验收标准,区别为:2
001+ <h1 style="margin-left:21.25pt;color:#141414;background-color:#FFFFFF;text-indent:-21.25pt;">1. 需求概述</h1>
002+ <h2 style="color:#141414;background-color:#FFFFFF;margin-left:1cm;text-indent:-1cm;">1.1. 背景</h2>
003+ <p style="font-size:14px;background-color:#FFFFFF;"><span>158反馈,我们的赛盒wms库存库龄报告,账号首选业务人员部门,里面的数据需要拆分出几项进行展示,方便统计</span><span style="color:#58666E;">;</span></p>
004+ <p class="p" style="margin-left:0pt;font-size:14px;text-indent:0pt;background:#FFFFFF;"><br /></p>
005+ <p class="MsoListParagraph" style="font-size:14px;text-indent:0cm;background-color:#FFFFFF;"><span style="font-size:18px;font-weight:700;">1.2. 目标</span></p>
006+ <p style="font-size:14px;background-color:#FFFFFF;">赛盒WMS库龄库存导出优化;</p>
007+ <p class="p" style="margin-left:0pt;font-size:14px;text-indent:0pt;background:#FFFFFF;"><br /></p>
008+ <p class="MsoListParagraph" style="font-size:14px;text-indent:0cm;background-color:#FFFFFF;"><span style="font-size:20px;font-weight:700;">2. 功能设计</span></p>
009+ <h2 style="color:#141414;background-color:#FFFFFF;margin-left:1cm;text-indent:-1cm;">2.1. 业务流程</h2>
010+ <p style="font-size:14px;background-color:#FFFFFF;">无</p>
011+ <h2 style="color:#141414;background-color:#FFFFFF;margin-left:1cm;text-indent:-1cm;">2.2. 赛盒WMS库龄库存导出优化;</h2>
012+ <h3 style="color:#141414;background-color:#FFFFFF;">2.2.1 操作路径</h3>
013+ <p style="font-size:14px;background-color:#FFFFFF;">报告中心->报表导出->自定义报告导出</p>
014+ <h3 style="color:#141414;background-color:#FFFFFF;">2.2.1.1功能点清单</h3>
015+ <p style="font-size:14px;background-color:#FFFFFF;">赛盒WMS库龄库存导出优化;</p>
016+ <h3 style="color:#141414;background-color:#FFFFFF;">2.2.1.2功能详细描述</h3>
017+ <h3 style="color:#141414;background-color:#FFFFFF;">2.2.1.2.1赛盒WMS库龄库存导出优化</h3>
018+ <p class="MsoNormal" style="font-size:14px;background-color:#FFFFFF;"><span style="font-weight:700;">功能点描述:</span>“<span style="font-size:14px;background-color:#FFFFFF;">账号首选业务人员部门</span>”列进行拆分,拆分情况如下图所示;</p>
019+ <p class="MsoNormal" style="font-size:14px;background-color:#FFFFFF;"><a href="http://developer.winit.com.cn/document/detail/id/14.html" target="_blank" rel="noreferrer noopener"></a></p>
020+ <span style="font-size:14px;font-weight:700;background-color:#FFFFFF;">相关限制:无</span><span style="font-size:14px;background-color:#FFFFFF;"><br /></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span>
021+ <p style="font-size:14px;background-color:#FFFFFF;"><span style="font-weight:700;">页面:无</span></p>
022+ <p style="font-size:14px;background-color:#FFFFFF;"><span>1.原导出数据</span></p>
023+ <p style="font-size:14px;background-color:#FFFFFF;"><span style="font-weight:700;"><img src="{185203.png}" alt="" /></span></p>
024+ <p style="font-size:14px;background-color:#FFFFFF;"><span style="font-weight:700;"><br /></span></p>
025+ <p style="font-size:14px;background-color:#FFFFFF;"><span>2.需更改为</span></p>
026+ <p style="font-size:14px;background-color:#FFFFFF;"><span style="font-weight:700;"><img src="{185204.png}" alt="" /><br /></span></p>
027+ <span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span>
028+ <h3 style="color:#141414;background-color:#FFFFFF;">2.2.2原型界面</h3>
029+ <p class="p" style="margin-left:0pt;font-size:14px;text-indent:0pt;background:#FFFFFF;"><span style="color:#337FE5;">原型地址:无</span></p>
001-2
001+
001-2
001+
020-相关限制:无
020+ 相关限制:无
027-
027+
020-<span style="font-size:14px;font-weight:700;background-color:#FFFFFF;">相关限制:无</span><span style="font-size:14px;background-color:#FFFFFF;"><br /></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span>
020+ <span style="font-size:14px;font-weight:700;background-color:#FFFFFF;">相关限制:无</span><span style="font-size:14px;background-color:#FFFFFF;"><br /></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span>
027-<span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span>
027+ <span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span><span style="font-size:14px;background-color:#FFFFFF;"></span>
| 提报业务部门 | |
|---|---|
| 提报人员 | 林浩娜 |
| 需求来源 | 业务方迭代需求 |
| 所属模块 | 供应链 仓储物流 |
| 所属计划 |
|
| 开发组 | |
| 受益业务部门 | |
| 验收人员 | |
| 业务价值 | 提升人效 |
| 每月价值量 | 2人天/月 |
| 每月节省人数 | 0 |
| 优先级 | P2 |
| 价值类型 | |
| 预计工时 | 6 |
| 成本 | |
| ROI | |
| 操作手册 | |
| 更新点 | |
| 是否高危 | 否 |
| 评分 | |
| 当前状态 | 已关闭 |
| 所处阶段 | 已关闭 |
| 关键词 | |
| 计划上线 | |
| 上线时间 | |
| 计划验收时间 | |
| 业务验收时间 | |
| 满意度 | |
| 价值验收 | |
| 满意度分值 | |
| 业务回填价值 | |
| 验收达成价值 | |
| 验收达成ROI |
| 由谁创建 | wushengqiang 于 2022-01-15 22:55:41 |
|---|---|
| 指派给 | Closed 于 2022-03-16 19:39:21 |
| 由谁评审 | 李源肇 |
| 评审时间 | 0000-00-00 |
| 由谁关闭 | zhengqiao 于 2022-03-16 19:39:21 |
| 关闭原因 | 已完成 |
| 最后修改 | 周杰 于 2023-11-16 20:27:08 |
请产品经理配置 脚本
操作步骤:
关键脚本:
osa.UserFullPathName [账号首选业务人员一级部门],
osa.UserFullPathName [账号首选业务人员二级部门],
osa.UserFullPathName [账号首选业务人员三级部门],
SELECT
w.WareHouseName [仓库],
ia.OrderSourceName [渠道编码],
os.SaleAdminName [账号首选业务人员],
osa.EmpoyeeNumber [账号首选业务人员工号],
osa.UserFullPathName [账号首选业务人员一级部门],
osa.UserFullPathName [账号首选业务人员二级部门],
osa.UserFullPathName [账号首选业务人员三级部门],
(
SELECT
top 1 poss.BusinessAdminName
FROM
dbo.RB_WareHouse_Product wp (nolock)
INNER JOIN dbo.RB_Product_OrderSourceSKU poss (nolock) on poss.CustomerID = wp.CustomerID
and poss.OrderSourceID = wp.OrderSourceID
and poss.OrderSourceSKU = wp.OrderSourceSKU
where
wp.CustomerID = ia.CustomerId
and wp.OrderSourceID = ia.OrderSourceId
and isnull(wp.FNSKU, '') <> ''
and wp.FNSKU = ia.FNSKU
order by
wp.id desc
) [销售人员],
(
SELECT
top 1 rba.EmpoyeeNumber
FROM
dbo.RB_WareHouse_Product wp (nolock)
INNER JOIN dbo.RB_Product_OrderSourceSKU poss (nolock) on poss.CustomerID = wp.CustomerID
and poss.OrderSourceID = wp.OrderSourceID
and poss.OrderSourceSKU = wp.OrderSourceSKU
LEFT JOIN dbo.RB_Admin rba (nolock) ON rba.ID = poss.BusinessAdminID
where
wp.CustomerID = ia.CustomerId
and wp.OrderSourceID = ia.OrderSourceId
and isnull(wp.FNSKU, '') <> ''
and wp.FNSKU = ia.FNSKU
order by
wp.id desc
) [销售人员工号],
(
SELECT
top 1 rbt.DeptFullPathName
FROM
dbo.RB_WareHouse_Product wp (nolock)
INNER JOIN dbo.RB_Product_OrderSourceSKU poss (nolock) on poss.CustomerID = wp.CustomerID
and poss.OrderSourceID = wp.OrderSourceID
and poss.OrderSourceSKU = wp.OrderSourceSKU
LEFT JOIN dbo.RB_Admin rba (nolock) ON rba.ID = poss.BusinessAdminID
LEFT JOIN dbo.RB_BusinessTeam rbt (nolock) ON rbt.ID = rba.BusinessTeamID
where
wp.CustomerID = ia.CustomerId
and wp.OrderSourceID = ia.OrderSourceId
and isnull(wp.FNSKU, '') <> ''
and wp.FNSKU = ia.FNSKU
order by
wp.id desc
) [销售人员所属部门],
(
SELECT
top 1 tbtp.BusinessTeamName
FROM
dbo.RB_WareHouse_Product wp (nolock)
INNER JOIN dbo.RB_Product_OrderSourceSKU poss (nolock) on poss.CustomerID = wp.CustomerID
and poss.OrderSourceID = wp.OrderSourceID
and poss.OrderSourceSKU = wp.OrderSourceSKU
LEFT JOIN dbo.RB_Admin rba (nolock) ON rba.ID = poss.BusinessAdminID
AND rba.CustomerID = poss.CustomerID
LEFT JOIN dbo.RB_BusinessTeam rbt (nolock) ON rbt.ID = rba.BusinessTeamID
AND rbt.CustomerID = rba.CustomerID
LEFT JOIN dbo.RB_BusinessTeam tbtp (nolock) ON tbtp.ID = rbt.BusinessTeamParentID
AND tbtp.CustomerID = rbt.CustomerID
where
wp.CustomerID = ia.CustomerId
and wp.OrderSourceID = ia.OrderSourceId
and isnull(wp.FNSKU, '') <> ''
and wp.FNSKU = ia.FNSKU
order by
wp.id desc
) [上级销售小组],
(
SELECT
top 1 rbt.BusinessTeamName
FROM
dbo.RB_WareHouse_Product wp (nolock)
INNER JOIN dbo.RB_Product_OrderSourceSKU poss (nolock) on poss.CustomerID = wp.CustomerID
and poss.OrderSourceID = wp.OrderSourceID
and poss.OrderSourceSKU = wp.OrderSourceSKU
LEFT JOIN dbo.RB_Admin rba (nolock) ON rba.ID = poss.BusinessAdminID
LEFT JOIN dbo.RB_BusinessTeam rbt (nolock) ON rbt.ID = rba.BusinessTeamID
where
wp.CustomerID = ia.CustomerId
and wp.OrderSourceID = ia.OrderSourceId
and isnull(wp.FNSKU, '') <> ''
and wp.FNSKU = ia.FNSKU
order by
wp.id desc
) [销售小组],
ISNULL(pc1.ClassNameCn, '') [产品一级类别],
ISNULL(pc2.ClassNameCn, '') [产品二级类别],
ISNULL(pc3.ClassNameCn, '') [产品三级类别],
ISNULL(pb.BrandNameCN, '无') [品牌],
case
ia.StorageModeId
when 1 then '直发'
when 2 then '中转箱产品'
when 3 then '中转箱'
end [库存类型],
ia.ItemCode [商品编码],
ia.FNSKU,
ia.ProductSku [海外仓SKU],
ia.RelationSKU [系统SKU],
case
when isnull(ia.FNSKU, '') = '' then ''
else (
SELECT
top 1 wp.OrderSourceSKU
FROM
dbo.RB_WareHouse_Product wp (nolock)
where
wp.CustomerID = ia.CustomerId
and wp.OrderSourceID = ia.OrderSourceId
and isnull(wp.FNSKU, '') <> ''
and wp.FNSKU = ia.FNSKU
)
end [渠道SKU],
case
when isnull(ia.FNSKU, '') = '' then ''
else (
SELECT
top 1 wp.ASIN
FROM
dbo.RB_WareHouse_Product wp (nolock)
where
wp.CustomerID = ia.CustomerId
and wp.OrderSourceID = ia.OrderSourceId
and isnull(wp.FNSKU, '') <> ''
and wp.FNSKU = ia.FNSKU
)
end [ASIN],
case
p.ProductProperty
when 1 then '非仿牌'
when 2 then '仿牌'
when 3 then '灰色产品'
end [侵权状态],
ia.TotalQty [数量],
p.ProductNameCN [产品中文名称],
p.ProductName [产品英文名称],
case
when p.LastBuyPrice > 0 then p.LastBuyPrice
else p.LastSupplierPrice
end [最新采购价],
(
case
when p.LastBuyPrice > 0 then p.LastBuyPrice
else p.LastSupplierPrice
end
) * ia.TotalQty [库存总额],
ia.A30 [0-30天库龄数],
ia.A60 [31-60天库龄数],
ia.A90 [61-90天库龄数],
ia.A180 [91-180天库龄数],
ia.A360 [181-360天库龄数],
ia.G360 [大于360天库龄数],
ia.A30 * (
case
when p.LastBuyPrice > 0 then p.LastBuyPrice
else p.LastSupplierPrice
end
) [0-30天库存金额],
ia.A60 * (
case
when p.LastBuyPrice > 0 then p.LastBuyPrice
else p.LastSupplierPrice
end
) [31-60天库存金额],
ia.A90 * (
case
when p.LastBuyPrice > 0 then p.LastBuyPrice
else p.LastSupplierPrice
end
) [61-90天库存金额],
ia.A180 * (
case
when p.LastBuyPrice > 0 then p.LastBuyPrice
else p.LastSupplierPrice
end
) [91-180天库存金额],
ia.A360 * (
case
when p.LastBuyPrice > 0 then p.LastBuyPrice
else p.LastSupplierPrice
end
) [181-360天库存金额],
ia.G360 * (
case
when p.LastBuyPrice > 0 then p.LastBuyPrice
else p.LastSupplierPrice
end
) [大于360天库存金额],
convert(varchar(10), pa.OnlineTime, 120) [产品首次上架时间]
from
(
select
oia.CustomerId,
oia.WarehouseId,
oia.OrderSourceId,
oia.OrderSourceName,
oia.StorageModeId,
oia.ItemCode,
oia.ProductSku,
oia.RelationSKU,
case
when oia.MultiCodeType = 2 then oia.MultiCode
else ''
end FNSKU,
convert(varchar(10), oia.InventoryAgeDate, 120) InventoryAgeDate,
sum(oia.Number) TotalQty,
sum(
case
when oia.Age between 0
and 30 then oia.Number
else 0
end
) A30,
sum(
case
when oia.Age between 31
and 60 then oia.Number
else 0
end
) A60,
sum(
case
when oia.Age between 61
and 90 then oia.Number
else 0
end
) A90,
SUM(
CASE
WHEN oia.Age BETWEEN 91
AND 180 THEN oia.Number
ELSE 0
END
) A180,
SUM(
CASE
WHEN oia.Age BETWEEN 181
AND 360 THEN oia.Number
ELSE 0
END
) A360,
SUM(
CASE
WHEN oia.Age > 360 THEN oia.Number
ELSE 0
END
) G360
from
RB_Oversea_InventoryAge oia (nolock)
where
oia.StorageModeId = 1
and oia.CustomerId = @CustomerId
and convert(varchar(10), oia.InventoryAgeDate, 120) = convert(varchar(10), @day, 120)
and {{ oia.WarehouseId in (@WarehouseId) }}
and {{ oia.StorageModeId = @StorageModeId }}
group by
oia.CustomerId,
oia.WarehouseId,
oia.OrderSourceId,
oia.OrderSourceName,
oia.StorageModeId,
oia.ItemCode,
oia.ProductSku,
oia.RelationSKU,
case
when oia.MultiCodeType = 2 then oia.MultiCode
else ''
end,
convert(varchar(10), oia.InventoryAgeDate, 120)
union all
select
oia.CustomerId,
oia.WarehouseId,
oia.OrderSourceId,
oia.OrderSourceName,
oia.StorageModeId,
oia.ItemCode,
oiad.ProductSku,
oiad.RelationSKU,
oiad.MultiCode FNSKU,
convert(varchar(10), oia.InventoryAgeDate, 120) InventoryAgeDate,
sum(oia.Number * oiad.ProductNumber) TotalQty,
sum(
case
when oia.Age between 0
and 30 then oia.Number * oiad.ProductNumber
else 0
end
) A30,
sum(
case
when oia.Age between 31
and 60 then oia.Number * oiad.ProductNumber
else 0
end
) A60,
sum(
case
when oia.Age between 61
and 90 then oia.Number * oiad.ProductNumber
else 0
end
) A90,
SUM(
CASE
WHEN oia.Age BETWEEN 91
AND 180 THEN oia.Number * oiad.ProductNumber
ELSE 0
END
) A180,
SUM(
CASE
WHEN oia.Age BETWEEN 181
AND 360 THEN oia.Number * oiad.ProductNumber
ELSE 0
END
) A360,
SUM(
CASE
WHEN oia.Age > 360 THEN oia.Number * oiad.ProductNumber
ELSE 0
END
) G360
from
RB_Oversea_InventoryAge oia (nolock)
INNER JOIN dbo.RB_Oversea_InventoryAgeDetail oiad (nolock) on oiad.CustomerId = oia.CustomerId
and oiad.InventoryAgeId = oia.InventoryAgeId
where
oia.StorageModeId <> 1
and oia.CustomerId = @CustomerId
and convert(varchar(10), oia.InventoryAgeDate, 120) = convert(varchar(10), @day, 120)
and {{ oia.WarehouseId in (@WarehouseId) }}
and {{ oia.StorageModeId = @StorageModeId }}
group by
oia.CustomerId,
oia.WarehouseId,
oia.OrderSourceId,
oia.OrderSourceName,
oia.StorageModeId,
oia.ItemCode,
oiad.ProductSku,
oiad.RelationSKU,
oiad.MultiCode,
convert(varchar(10), oia.InventoryAgeDate, 120)
) ia
INNER JOIN RB_Warehouse w (nolock) on w.CustomerID = ia.CustomerId
and ia.WarehouseId = w.ID
LEFT JOIN dbo.RB_OrderSource os (nolock) on os.CustomerID = ia.CustomerId
and ia.OrderSourceId = os.Id
LEFT JOIN RB_Product p (nolock) on p.CustomerID = ia.CustomerId
and p.SKU = ia.RelationSKU
LEFT JOIN dbo.RB_Product_Class pc1 (nolock) ON pc1.CustomerID = p.CustomerID
AND pc1.ID = p.ClassID1
LEFT JOIN dbo.RB_Product_Class pc2 (nolock) ON pc2.CustomerID = p.CustomerID
AND pc2.ID = p.ClassID2
LEFT JOIN dbo.RB_Product_Class pc3 (nolock) ON pc3.CustomerID = p.CustomerID
AND pc3.ID = p.ClassID
LEFT JOIN dbo.RB_Product_Brand pb (nolock) ON pb.CustomerID = p.CustomerID
AND p.BrandID = pb.ID
LEFT JOIN dbo.RB_Product_Admin pa (NOLOCK) ON pa.CustomerID = p.CustomerID
AND pa.SKU = p.SKU
LEFT JOIN dbo.RB_Admin osa(NOLOCK) ON os.CustomerID = osa.CustomerID
AND os.SaleAdminID = osa.ID