工作中server调用和业务相关数据梳理

最近上线crm审核后台,虽然没啥特别的,但是有很多数据走向还是挺有典范的,所以想简单做个梳理,用作整理。

东西没啥就是列表页展示数据,点击进入详情页展示更加详细的数据,因为数据源存放的不同,还有调用服务方式的不同,所以想记录一下。

列表:

1.首先看一下页面,如图:

2.列表数据源

服务调用顺序:crmweb(api层)->bizuser(scf用户服务)->adstata(scf统计服务)、adpmc(scf商业扣费和计费服务)->mysql

模块A数据来自于dbzz_bizuser.user表,这里面主要是映射关系,以及相应商户昵称,create_time,first_recharge_time字段。

模块B数据来源于中台服务数据(其他业务部门统计的数据,bizuser只是调用获取数据并展示)通过job任务把数据统计到tdb.adstat.stat_user_total_count表中。

模块C数据来自tbd_adstat.stat_user_total_count表,这个表的数据首先会删除清除表中数据,然后从pmc统计表把数据统计过来一份并且在redis中存储一份,设计原因,列表页数据比较多,响应时间会比较快。

模块B&C同步数据来源图:

上图说得同步数据不是copy表数据,而是调用对应服务获取数据组装到上面总表中。

还有一个就是job服务,用于定时同步数据通过Elastic Job Console点击作业出发,作业名称“

biz_adstat_user_total_count_daily_job_offline”。

定时/点击->jobs->adstat

grep UserTotalCountBll 关键字查询

3.详情页数据源

详情页同步的一步,都是bizuser->bizpmc来商业数据,也有部分模块是直接查询数据库直接获取。

先查看一下页面,如图:

基本信息和经营信息一个直接查表展示另一个是中台服务提供,所以没啥说的,相对商业信息是我们自己相关计算得出所以想说一下问题。

转转币总余额=转转币现金总余额+转转币优惠总余额。我们会有一个充值优惠的一个概念所以会拆分两个字段。

转转币总余额=dbzz_bizpmc.biz_account.(available_cash+available_gift),这里面cash就是现金总余额,gift是优惠总余额。

但是这是一个统计表通过一个task任务来统计。

保证金余额=biz_deposit_account.balance

累计充值金额=sum(tdb_adstat.stat_count_day a) where a.biz_uid and a.app_id=0,这个表是每笔充值金额流入后写入该表中。

累计消耗金额=sum(tdb_adstat.stat_count_day.cash_cost+gift_cost)where bizuid,消耗金额及每笔点击扣费后记录该表中,这里面有一个cash和gift消耗比例的问题,及充值是赠予或者补偿时一个比值。同理累计消耗现金金额和累计消耗优惠金额对应值。其实这是一个总的统计表,每次点击的数据都记录在dbzz_bizpmc.biz_counsume_record_**(*从0-15)一共16个表,设计的原因是因为点击商户数据可能会比较多(当然不是每次点击都写入表中而是按天的维度先写入redis中累计最后一整天后写入表中)

该表数据是通过task表建立,如图:

充值单条记录表:

消耗单条记录:

统计表数据通过task任务触发后:

猜你喜欢

转载自blog.csdn.net/gogoboi_jin/article/details/82118094