首页接口流程图
2023-02-27 23:49:32 0 举报
home
作者其他创作
大纲/内容
数据库取值新增逻辑
否
Tips1 : 获取模块信息
遍历模块信息
是
Tips15 秒杀组件填充逻辑
移除小组件
获取模块类型
Tips10 热销榜填充逻辑
Tips17 竖列组件填充逻辑
判断总图片张数和分割后所有数值总和是否一致
添加item
获取小组件信息
最多只取4个item填充
满足的版本号: >=202003
判断类型是否为null
根据type、appid、version获取按钮信息
删除改模块
判断是否需要并行处理
获取模块信息以及模块详情信息
在缓存里面获取版块置灰时间
查询每个button的活动信息
任务数+1
判断获取的值是否为空
填充活动信息
获取items
根号appId_versionCode_模板类型拼接缓存key
在缓存中获取消息信息
打印错误日志
创建线程池
根据key取缓存
返回结果
返回默认版本号202001
判断extends_info格式是否正确
满足的版本号: >=202101
种缓存
Tips14 新人组件
填充帖子信息
根据分割后的值将将item分割为N份
判断是否取个人中新的版本号
主流程
只取一个
复用Tips2 逻辑
Tips3
Tips7
填充金刚位活动信息
根据类型获取小组件宽度
填充小组件信息
满足的版本号: >=202201
Tips1
直接返回个人中心默认版本号
遍历item
根据模板id查详情信息
Tips4
获取版本号:获取该type、appId下 ,小于versionCode的最大的按钮版本号
根据对应的值将m张图放在N个数组中
判断是否为橫滑组件
tips:统一url跳转逻辑,url类型为url:https://xxxx;帖子类型为article:帖子idrefType值:0:帖子 8:不跳转 2:url
若改提帖子中有多个商品只取价格最低的商品
判断是否为null
判断item列表是否等于0
判断appId 是否等于0
判断是否是百宝箱
判断版块信息是否为空
判断宽度是否<4
删除旧列表中item
根据模块类型获取对应的处理器
根据商品code调用商品详情接口,查询商品信息
获取所有buttonId
根据version和type获取模基本信息
根据buttonType、appId、 versionCode查询金刚位信息
获取item信息
Tips9 竖列模块填充逻辑
获取所有模板id
获取首页模板版本号
获取该模块下所有的item
判断模块信息是否为null
填充背景色
根据item_id获取小组件及小组件详情信息
满足的版本号: >=202002
若用户不是新人则不返回新人组件,否则返回
分割副标题
填充版块信息
items设置为空数组
返回模板version
获取版块id
获取首页模块所有信息
帖子数是否大于0
tips11小组件热销商品和热销榜逻辑相同 ,只是小组件只取前3个商品
tips:小组件多列竖滑的分割说明:N-M-L表示分为三列,第一列为N张图,第二列为M张,第三列为L张
获取当前时间
填充数据
获取秒杀场次信息,查找第一个当前正常进行的秒杀活动
判断缓存中值是否存在
判断副标题格式是否正确
填充其他模块信息
返回竖列组件详情
判断是否为空
根据模块限制数量截取item
同tips 1和tips3
返回首页模板默认version
Tips3:获取首页模块版本号
判断模块类型是否为banner
只取4个
判断值是否为空
将商品信息存入items字段中
判断item是否等于0
读取数据库
创建任务计数器
判断组件类型是否为多列竖滑
判断该类型中元素格式是否等于0
分割extends_info
Tips12 推荐滚动原消息组件
判断versionMap是否存在key
Tips15 小组件商品2个
遍历竖列组件item
根据种草榜单获取帖子id
查找各端versionCode>=某个版本对应的version
后台每个按钮可以维护多个缓存,但是接口中每次只取当前有效的活动
判断时间是否大于300毫秒
Tips5
判断分割后的每个值对否为数字并且至少有一个数组
移除该模块
判断是否不限制数量
若上面条件都不满足
判断是否是个人中心特殊版本
删除版块
Tips7 版块补充信息
根据商品code获取商品活动详情活动价格
判断是否为小组件多列竖滑
用“-”分割extends_info
在缓存中获取banner背景色值
主逻辑
如果没有商品,就删除改帖子
判断处理器是否为null
判断帖子数是否大于4
填充版块补充信息
只取6个秒杀商品返回
遍历versions List
Tips13 金刚位组件填充逻辑
存入versionMap中
判断版本是否满足
读数据库
Tips16 种草榜单填充逻辑
填充Left、Right内容
获取帖子详情
Tips4:获取首页模块及详情信息
调用大数据推荐接口,获取热销商品
查询lenovo.order.open.my.firstOrder接口判断用户是否下过单,为下过单的用户为新人组件
Tips:百宝箱的副标题格式为1-N表示两列,第二列为N张,剩余的都在第一列的banner中,图片张数至少为1+N张
Tips5 版块补充信息
根据场次id获取该场秒杀活动的商品code
判断appId=1且versionCode<124或appId=2 versionCode<297
打印日志
判断item个数是否小于5
填充模块MultiColumns
Tips 小组件秒杀同秒杀组件
异步填充信息
遍历所有模块
Tips8 大组合模块填充逻辑
根据左右两部分数量设置,将item分为左右两部分
Tips8
直接取值返回version
返回小组件的值
活动信息中num字段,是跳转活动url的次数,点击次数超过num之后正常跳转
计算填充信息用时
Tips6
0 条评论
下一页