需求价值:针对出现异常的类目模板做快速更新处理,避免新刊登的SKU出现因为类目模板属性导致的刊登失败问题,提高刊登成功率提高人效
需求说明:
1,定时检测Amazon上传队列V2刊登失败的记录(增量数据检查),判断存在因属性问题导致的失败Listing时,生成该Listing站点一级类目的模板采集任务(同一站点同一级类目一天只生成一条采集任务)
判断是否为属性问题的导致的失败的条件:
①报错信息包含“A value is required for the”
②报错信息包含“列に値が必要です”
③报错信息包含“字段的值必填”
生成采集任务时,必须的字段:ID,站点,一级类目名称,一级类目ID,生成时间,更新状态(未采集、已同步、已更新)
2,定时去采集库检查未采集状态的采集任务的采集状态,看对应的类目模板数据是否已采集回来,如采集库已采集解析好,则从采集库同步对应任务的类目ID、类目名称、类目模板下载路径等数据到ERP
3,根据同步回来的类目模板路径下载类目模板回来,进行Template sheeet表MD5 对比看是否存在变化
存在变化:对有变化的类目的模板进行解析,对属性表中该类目原有的类目属性做删除,然后用解析后的数据更新进去
不存在变化:没有变化的类目不进行更新
预计最终上线时间10月27日(分两次两个时间发布,第一次发布3,第二次发布1、2)
分三部分开发
一部分:类目1、从原来由采集小工具直接推送接口保存,变更为直接取采集数据库
2、创建服务轮训监控采集数据库任务的执行状态,对已经完成的任务数据完整获取
3、拿到完整数据后,跟现有所有类目进行比较,最好是逐级比较,对已经找不到的类目直接标识为失效IsEnabled=false,所有从采集数据库更新回来的类目,状态都更新为TemplateDownloadType=1
4、完成采集后保存本次操作记录,避免对同一次任务多次采集。(全量目前采集端是7天一次,我们自己不定时会全量或者增量采集)
二部分:报错
1、创建服务,定时检查上传队列V2(RB_AmazonUploadProduct_V2),查询指定异常编码的Listing的一级类目,向采集数据库插入任务数据(目前只进行指定站点+一级类目的采集)(MessageCode like '%99001%')
2、相同的类目一天只允许采一次(最后设计成小时,方便后期减小频率,变动的可能性较大)
三部分:下载
1、只下载E_Amazon_BrowseTree_Node_V2状态TemplateDownloadType in (1,3)的数据的,最后一级节点。
2、所有更新的节点,模板都需要下载(TemplateUrl),将下载后的模板的所有字段拼接求MD5,用来跟上一次的MD5对比,不同则代表有变动
3、存在变动的则开启下载逻辑,E_Amazon_ShelfTemplate需保存MD5 和上一次的模板路径,方便异常排查
4、其他按正常流程下载属性到E_Amazon_ShelfTemplateAttributes