任务描述

需求描述

需求背景:为了提升刊登效率,同时解决新店铺8571问题,运营研究发现全球同步可以不占用额度,且可以快速刊登。


需求实现:

一、全球同步服务

1.新增配置,配置进入全球同步服务的账号组,配置的账号组只刊登主站点,不做多站点上架。

2.新增一个全球同步任务写入服务。做以下处理

a.筛选实验账号组已经刊登成功的主站点listing,获取渠道SKU;

b.查找待刊登队列中与该listing同SKU&同账号组的数据(过滤禁售等), 写入到全球同步任务表

c.调用计算器计算价格同步写入到任务表


表需要包括以下字段:SKU,店铺ID,账号组ID,渠道SKU(美国站的),价格,货币,处理状态


二、采集

1.新增一个全球同步的采集服务,根据任务表到亚马逊后台查找对应的asin,执行全球同步任务(具体操作指引见附件)

2.如果站点处理正常,则将处理状态标记为成功,如果提醒失败则标记为失败


三、失败任务刊登服务

1.定时读取任务表,找到失败的任务,按照现有多站点上架逻辑进行刊登。


验收标准
暂无
历史记录  
  1. 2023-09-13 10:33:52, 由 罗友军 创建。
  2. 2023-09-19 18:36:01, 由 钟喜旺 完成。
    修改了 总计消耗,旧值为 "0",新值为 "30"。
    修改了 指派给 ,旧值为 "zhongxiwang",新值为 "luoyoujun"。
    修改了 实际完成,旧值为 "",新值为 "2023-09-19 18:28:41"。
    修改了 任务状态,旧值为 "wait",新值为 "done"。
    修改了 实际开始,旧值为 "0000-00-00 00:00:00",新值为 "2023-09-19 18:36:01"。
    修改了 预计剩余,旧值为 "26",新值为 "0"。
    修改了 由谁完成,旧值为 "",新值为 "zhongxiwang"。

    实现流程

    1. 新建表 GlobalSyncServiceAccountConfig 在 Amazon_AutoPublish 库
    -- 配置进入全球同步服务的账号组的表
    db.getSiblingDB("Amazon_AutoPublish").GlobalSyncConfig.find(); -- 全球同步任务表
    db.getSiblingDB("Amazon_AutoPublish").GlobalSyncTask.find(); 
    1. 根据配置表的账号组找出来源渠道
    SELECT a.OrderSourceGroupName,a.AssociationID,b.OrderSourceID,os.OrderSourceName,os.OrderSourceCountry FROM RB_Amazon_AutoPublish_OrderSourceGroup a(nolock) INNER JOIN RB_Amazon_AutoPublish_OrderSource  b(nolock) ON a.CustomerID=b.CustomerID AND a.AssociationID=b.OrderSourceGroupID INNER JOIN dbo.RB_OrderSource os(NOLOCK) ON b.CustomerID=os.CustomerID AND b.OrderSourceID=os.ID WHERE a.CustomerID=1 AND a.IsDelete=0 AND b.IsDelete=0 
    1. 根据来源渠道id+AddTime生成的id,来增量遍历, 且ASIN 不能为空,时间为一天前
    db.getSiblingDB("Amazon_AutoPublish").AutoPublishUploadProductQueue.find({ "OrderSourceID": {$in:[6448,5005,5517]} , "Status":2, // 成功 "OrderSourceSKUID":{$gt:0}, // 大于0 "IsVariation":false // 单变体 }) 

    找出主sku,通过 AutoPublishUploadProductQueue 表的 OrderSourceSKUID 查询
    AutoPublishQueueDetail 表找出 OrderSourceGroupId

    db.getSiblingDB("zhcxkj_amazon").AutoPublishQueueDetail.find({ "OrderSourceSkuIds": {$in:[2004311334]} , }) 
    1. 根据账号组和主 sku找出待刊登详情
    db.getSiblingDB("zhcxkj_amazon").AutoPublishQueueDetail.find({ "OrderSourceGroupId": NumberLong('5264194825837421475') , "Sku":"1251901", "PublishState":0 }); 
    1. 验证是否重复刊登
    通过 IAutoPublishService.GetModelsBySKUOrderSourceIds 调用接口验证sku是否重复
    1. 需求设计没考虑到变体,和产品商量,暂时只处理单变体
    AutoPublishUploadProductQueue IsVariation false 单体
    1. sku禁售过滤

    2. 通过价格计算器获取价格

    3. 获取是否授权api

    select * from RB_OrderSource_EbayAmazonAP where CustomerID=1 and OrderSourceID in (122); 

    定位查看Debug执行日志: amazon-worker 项目 cron库 ,查询条件: * and ClassName: "Erp.Amazon.Services.Implement.AutoPublish.GlobalSyncService"

    定时任务增量变量配置位置:

    db.getSiblingDB("zhcxkj_amazon").Dictionary.find({Type: 65}); 

    开发报告规范:
    1、说明修改发布项目工程和服务配置项

    项目:AmazonWork

    新增服务

    服务1: 全球同步服务

    服务名:AutoPublishGlobalSyncJob

    频率: 只执行一次

    {"ServiceName":"PublishQueueDetailArchiveJob","Params":{},"AssemblyFullName":" Erp.Amazon.Worker","TypeFullName":"Erp.Amazon.Worker.CronJob.AutoPublish.AutoPublishGlobalSyncJob","ExecMethod":"Execute","IsMultiThread":false,"TimeOut":0} 

    2、备注新增修改数据库表或字段
    无

    3、截图核心代码逻辑




    4、截图自测业务流


  3. 2023-09-21 16:13:00, 由 钟喜旺 编辑。
    修改了 任务描述,区别为:
    001- <img src="/zentao/file-read-304354.png" alt="" />
    001+
    001- <p><img src="/zentao/file-read-304354.png" alt="" /></p>
    001+ <p><img src="{304354.png}" alt="" /></p>

    后期补充逻辑

    1. 推送和拉取任务表的数据到采集组那边
    2. BR/DE/FR/IT/ES/SE/BE/TR/PL/NL 这些站点推送到采集组时 小数点用,


  4. 2023-10-31 16:39:03, 由 周杰 关闭。
    修改了 任务状态,旧值为 "done",新值为 "closed"。
    修改了 指派给 ,旧值为 "luoyoujun",新值为 "closed"。
    修改了 由谁关闭,旧值为 "",新值为 "zhoujie"。
    修改了 关闭时间,旧值为 "0000-00-00 00:00:00",新值为 "2023-10-31 16:39:03"。
    修改了 关闭原因,旧值为 "",新值为 "done"。
所属迭代 智能中心-智能选品迭代
所属模块 智能中心-需求池  战略独立项目   智能刊登
相关需求 全球同步listing测试
指派给 Closed 于 2023-10-31 16:39:03
任务类型 后端
任务标签 初始
开发组 仓储物流开发组
任务状态 已关闭
进度 100%
优先级 P0
关键词
抄送给
由谁创建 罗友军 于 2023-09-13 10:33:52
由谁完成 钟喜旺 于 2023-09-19 18:28:41
由谁取消 暂无
由谁关闭 周杰 于 2023-10-31 16:39:03
关闭原因 已完成
最后编辑 周杰 于 2023-10-31 16:39:03
团队 最初预计 总计消耗 预计剩余
工时信息
最初预计 26工时
总计消耗 30工时
预计剩余 0工时
预计开始 2023-09-13
实际开始 2023-09-19
截止日期 2023-09-30