商业数据构造物料发布&投放

最近在写数据构造完成物料的发布&投放,有一些坑所以想简单说下。

首先想说写了一段时间scf的数据构造,和之前请求http请求思路基本都是一样,或者说单元测试也都差不多。三步骤:构造数据->q请求接口->校验结果(因为不是做测试仅仅就是为了构造数据,所以没有校验结果这步骤)。tcp层的好处不想http请求那样需要传cookie什么的,因为http层要保证安全会有各种校验,所以可能很难达到预期的效果,构造合理身份很麻烦,相对tcp层就会好很多直接ip+端口的形式,用scf.conf配置文件来区分你想访问test和线上环境,整体会方便不少。

先说一下构造思路:起初我的思路是想发布物料用title来区分,因为我们的物料是有类别的所以根据类别来区分,比如说cateid=101,那么从controllers穿过来的时候,我就在物料title字段加上手机。但是整体物料基本都是一个样子,感觉很不好。所以我换个思路。想通过zzproduct服务暴露的通过类别字段(cateid)来查询线上,为什么会想到这个呢,首先看一下zzproduct的scf接口如图:

在看一下zzprodquerycondition的查询条件,如图:

然后我想把类别属性放到实例中,比如说手机类别cateid=101。传入后发现返回null,这个我没有看源码整体比较复杂,猜测应该是必须根据userid查询(ps:我觉得其实就是类似orm那种,拼接条件查询数据库)。既然必须需要userid那么取数据这块就要改一下,必须要有模板账户嘛。思路就是用自己的账号作为模板(因为自己的账号用于测试肯定有很多发布帖子嘛)。做数据构造尤其是这种需要做数据清洗的(听着很高大上,其实就是把标题,价格,描述这些属性改一下变成你自己的帖子)。这样第一部分取数据的问题解决了。代码如下:

第二部分就是发布商品,思路就是把取到的productDTO实例转成pubDTO实例中,然后构建tcp请求。

以上就完成了发布商品,但是发布完成后前端还是看不到,因为前端要展示的话,还需要建立投放。主要原因其实首先物料发布调用中台的服务,写入中台的数据库。主要调用服务如下:

按照该server的调用关系,这样商品的状态并没有在我们这边数据库,所以在发布是还要建立投放,主要存在我们的数据库中。

投放建立的调用adsearch服务的promotionserver接口,暴露接口如图:

如图需要promotionEntity实例,构建代码如图:

以上就完成商品发布&投放,左右又串了个流程共controllers:

以上就是整体的,运行结果如图:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值