任务描述
计算进口税费服务
需求描述
背景
备库包裹没有自动计算进口税费
问题
计算进口税费的功能嵌套在计算运费的服务里面,因为订单数据不符合运费计算规则,所以运费计算失败,导致没有自动计算进口税费
优化方案
将计算进口税费的功能单独开发成一个服务
1. 每轮服务获取7天内已发货的备库包裹,并且运输方式设置了需要计算进口税费。
2. 每轮服务只获取1000个备库包裹。
3. 根据运输方式规则设置的进口税费公式,计算进口税费,更新到包裹的进口税费字段,并且添加订单日志。
4. 服务频率,60分钟执行一次。
注:计算进口税费的公式为=(产品1报关价*数量1 + 产品2报关价*数量2 + ...)*税费比例;
背景
备库订单(本地-FBA,海外-FBA),创建订单的时候,如果没有ASIN,可直接保存订单,导致报表功能导出没有数据;
问题
订单创建当时渠道sku没有对应的asin;所以保存订单不会保存到,当订单在草稿状态时可以编辑订单,这个时候如果渠道sku有asin,直接保存是会保存asin的;如果订单是已发货就不能编辑保存;所以这个时候有asin也保存不了;
优化方案
在导出EXCEL和页面显示的地方,关联渠道SKU表,取ASIN即可
验收标准
暂无
第一次计算的时候因为包裹产品的报关金额为0导致进口税费咩有计算出来,更改完价格后再次计算
备注:
查询的SQL语句
1、查询可进行进口运费计算的包裹
SELECT TOP 1000 pop.ID AS PackageID,
pop.CustomerID,
pop.TransportID,
pop.MergerPackageNo,
pop.Country,
CASE ISNULL(ts.DefaultSupplierID,0)
WHEN 0 THEN pop.TransportSupplierID
ELSE ts.DefaultSupplierID
END TransportSupplierID,
ts.TransportName,
tsp.SupplierName,ts.AutoCalcTaxPercent FROM RB_Procurement_Order_Package pop(NOLOCK)
LEFT JOIN RB_Transport ts(NOLOCK) ON pop.TransportID=ts.ID AND pop.CustomerID=ts.CustomerID
LEFT JOIN RB_Transport_Supplier tsp(NOLOCK) ON pop.TransportSupplierID=tsp.ID AND pop.CustomerID=tsp.CustomerID
WHERE pop.CustomerID=1 AND pop.IsStockOrderWithPackage=1 AND pop.FinalShippingFee>0 AND pop.TariffFee=0 AND pop.ShipTime>=CONVERT(VARCHAR(100),DATEADD(DAY,-7,GETDATE()),23)
AND ts.IsAutoCalcTax=1 AND ISNULL(ts.AutoCalcTaxPercent,0)>0 ORDER BY pop.ID
2、查询包裹的产品和报关价格信息
SELECT popd.CustomerID,popd.PackageID,popd.SKU,popd.ProductNum AS PackDetailPorductNumberUpdate,ISNULL(pod.DeclarationPrice,0) DeclarationPrice
FROM RB_Procurement_Order_Package_OrderDetail popd(NOLOCK)
INNER JOIN RB_Procurement_Order_Package_Detail pod(NOLOCK) ON popd.PackageID=pod.PackageID AND popd.SKU=pod.SKU AND popd.CustomerID=pod.CustomerID
WHERE popd.CustomerID=1 and popd.PackageID=70260