尧图网络科技YAOTU DIGITAL 获取报价
获取报价
首页 / 资讯中心 / 文章详情

Lottery 抽奖系统运营后台实战:活动列表数据展示与分页查询接口开发

发布时间:2026/9/26 3:47:57

资讯中心
01
ARTICLE

Lottery 抽奖系统运营后台实战:活动列表数据展示与分页查询接口开发

Lottery 抽奖系统运营后台实战:活动列表数据展示与分页查询接口开发
文档教程后端【免费下载链接】CodeGuide:books: 本代码库是作者小傅哥多年从事一线互联网 Java 开发的学习历程技术汇总旨在为大家提供一个清晰详细的学习教程侧重点更倾向编写Java核心内容。如果本仓库能为您提供帮助请给予支持(关注、点赞、分享)项目地址https://gitcode.com/gh_mirrors/code/CodeGuide点击查看免费下载本文是 Lottery 分布式抽奖系统「运营后台Part-3」系列的第 02 节实战指南讲解如何在 DDD 四层架构下为 ERP 运营后台提供活动列表查询能力在活动领域的活动部署子领域新增查询服务、定义分页参数、通过 RPC 将接口暴露给 ERP 工程并完成页面数据可视化展示。读完本文你将掌握在 Lottery 项目中新增一个查询类领域功能的标准落地姿势——包括 DDD 分层扩展、分页信息对象设计、C 端/B 端分页 SQL 差异以及如何复用既有 RPC 调用链路打通 ERP 页面数据。一、本节开发目标与前置背景在第 01 节UI 工程搭建中Lottery-ERP 运营后台的基础工程结构已经搭建完成采用 DDD 分层 layui 前端方案。本节开始往工程里填充第一个真实功能——活动列表查询。围绕这个功能整个开发日志可以拆解为四个关键动作领域层扩展活动配置存放在单库单表的activity表中因此直接提供查询服务即可无需跨库聚合新增分层包结构Lottery 主工程需要新增接口层、应用层的分包vo、req、res 分别归类避免对象混放难以维护定义分页参数对数据库使用普通的LIMIT分页查询并额外定义 Page 分页信息对象方便 ERP 按页拉取数据打通 RPC 可视化接口开发完成后通过 RPC 方式供 ERP 工程调用在运营后台页面完成列表数据展示。注意这里的运营后台查询对应的是 B 端场景直接使用LIMIT x,y即可如果将来为 C 端用户展示列表数据则不能这样分页而要改用WHERE id ? LIMIT x的游标式分页详见下文第四部分。二、为什么新增功能要落在活动部署子领域在 DDD 分层结构中新增一个查询功能并不是哪里方便放哪里而是要找对领域归属。本节功能落在活动领域activity中的活动部署子领域deploy原因很直接活动部署子领域已经承担了活动的配置、修改、状态流转自然也应该提供活动的列表查询。在活动领域层中继续添加活动相关服务比硬塞到别的领域更符合职责边界。对照 MVC 结构可以发现只要领域结构清晰、地基打好扩展一个新功能是非常容易的这也是 DDD 相比传统分层在可扩展性上的直观体现。这里有一个技术实现要点给 ERP 的查询结果必须包含分页信息——即数据列表与总条数具体如何分页、每页多少条交给 ERP 自己配置和实现。领域服务只负责接收请求参数并返回结果数据不掺入任何页面层的分页策略。关于活动领域整体设计的更多背景活动创建、状态流转、仓储接口下沉到基础层等可参考 第 08 节活动领域的配置与状态。从源码结构看domain领域层定义仓储接口、infrastructure基础层实现仓储接口查询列表走的正是这条领域服务 → 仓储接口 → 仓储实现的调用链。三、应用层新增活动部署处理子模块查询功能虽然简单但为了让 vo、req、res 不混在一起Lottery 主工程在**应用层application**也新增了process/deploy子模块来承接领域服务接口为IActivityDeployProcess。从整体分层依赖关系看详见 Part-2 第 03 节跑通广播模式 RPC 过程调用模块职责主要依赖lottery-application应用层编排领域服务domainlottery-common通用包分页、结果封装等无lottery-domain领域层定义仓储接口与领域服务infrastructurelottery-infrastructure基础层实现仓储MyBatis Mapper无lottery-interfaces接口层RPC 服务实现、HTTP 入口application、rpclottery-rpcRPC 接口定义层common这样一个接口层定义 RPC 接口 → 应用层编排 → 领域层实现业务 → 基础层访问数据的链路可以确保新增的查询接口不会把请求/响应对象散落到各层后续同类功能照葫芦画瓢即可。四、分页设计B 端 LIMIT 与 C 端游标分页的取舍活动列表查询对数据库只是普通的LIMIT分页因此本节额外定义 Page 分页信息让查询更规范。这是本节最值得沉淀的一个技术细节B 端运营后台列表直接使用LIMIT x,y如LIMIT 0, 10即可。运营人员手动翻页、数据总量有限偏移量分页足够且实现最简单C 端用户端列表不能使用LIMIT x,y而要使用WHERE id ? LIMIT x的游标分页。原因在于 C 端列表往往伴随大量并发请求与持续写入LIMIT x,y在大偏移量下会产生深分页扫描性能急剧下降且翻页过程中新增数据会导致页码漂移。MySQL 的LIMIT分页 SQL 本质形态如下offset为偏移量、size为每页条数-- B 端运营后台偏移量分页 SELECT activity_id, activity_name, begin_date_time, end_date_time, stock_count FROM activity ORDER BY create_time DESC LIMIT #{offset}, #{size};-- C 端用户列表参考写法游标分页 SELECT activity_id, activity_name, begin_date_time, end_date_time, stock_count FROM activity WHERE id #{lastId} ORDER BY id LIMIT #{size};分页信息对象Page的设计要点请求侧接收page页码与rows每页条数两个入参由 ERP 自行配置每页多少条响应侧返回list本页数据与count总条数供前端渲染分页器领域服务只接收请求、返回结果分页策略完全解耦在调用方。五、RPC 接口暴露与 ERP 侧消费Lottery 主工程的接口层interfaces在完成领域、应用层开发后需要把查询接口以RPC 方式暴露出来供 Lottery-ERP 工程消费。RPC 的广播模式调用、Reference直连配置等在 Part-2 第 03 节 中已有完整跑通过程本节直接复用这套链路。ERP 侧Lottery-ERP 工程的分工如下服务层定义活动查询接口IActivityService及其实现ActivityServiceImpl内部通过 RPC 调用 Lottery 主工程暴露的查询服务Web 层提供ActivityController及queryActivityListPage接口方法响应前端页面的 HTTP 请求把分页结果返回给 layui 表格组件渲染。六、运营后台页面效果与验证完成接口开发并打通 RPC 后在运营后台活动中心 → 活动列表页面即可看到分页形式的列表数据包含活动 ID、活动名称、开始/结束时间、库存等数据项由 ERP 页面负责分页器与表格渲染。验证步骤建议在activity表建表语句见 Part-2 第 03 节 中的activity活动表结构中插入多条活动数据覆盖不同状态1编辑、2提审、4通过、5运行等启动 Lottery 主工程提供 RPC 服务与 Lottery-ERP 工程访问运营后台活动列表页面翻页查看列表与总条数是否正确核对每页条数与LIMIT分页结果一致。七、本节小结与后续衔接本节完成的功能虽小却完整演示了在 Lottery 项目中新增一个领域查询服务的标准动作领域归属查询功能落在活动部署子领域保持 DDD 职责边界清晰分层扩展应用层新增process/deploy子模块请求/响应对象按 vo、req、res 分包管理分页规范B 端用LIMIT x,yC 端用 id LIMIT xPage 对象只承载数据 总条数链路打通领域服务 → 应用层编排 → RPC 暴露 → ERP 消费 → layui 页面渲染全链路复用既有基础设施。下一节将延续运营后台主题进一步实现用户抽奖数据展示把抽奖业务数据同样可视化到运营平台整个 Part-3 运营后台在整套 Lottery 系统Lottery 服务、Lottery-ERP、Lottery-API、Lottery-Front、DB-Router、Lottery-Test 六大工程中承担 B 端运营配置与数据查看的职责项目整体背景可参考 Lottery 抽奖系统介绍。赞分享文档教程后端【免费下载链接】CodeGuide:books: 本代码库是作者小傅哥多年从事一线互联网 Java 开发的学习历程技术汇总旨在为大家提供一个清晰详细的学习教程侧重点更倾向编写Java核心内容。如果本仓库能为您提供帮助请给予支持(关注、点赞、分享)项目地址https://gitcode.com/gh_mirrors/code/CodeGuide点击查看免费下载相关推荐大营销平台前端实战用 ApiPost Mock 接口对接抽奖页面实现奖品列表与随机抽奖大营销平台前端实战用 ApiPost Mock 接口对接抽奖页面实现奖品列表与随机抽奖 本文基于《大营销平台系统设计实现》前端章节「第2节Mock接口对接文档教程后端《大营销平台系统》前端实战九宫格抽奖页面设计与活动接口对接实现抽奖N次解锁《大营销平台系统》前端实战九宫格抽奖页面设计与活动接口对接实现抽奖N次解锁 本篇技术指南聚焦于大营销平台项目中前端 Web 端的「第 4 节抽奖活动页面设文档教程后端《大营销平台系统》运营后台 querys 模块落地查询接口设计与 ElasticSearch 多数据源实践《大营销平台系统》运营后台 querys 模块落地查询接口设计与 ElasticSearch 多数据源实践 导读 本文聚焦《大营销平台系统》运营后台中 qu文档教程后端创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
02
RELATED NEWS

相关资讯

更多网站建设与数字化升级内容

03
WHY YAOTU

想打造同款高转化官网?

懂行业、懂生意,从建站到增长一站式陪跑

◈

场景化定制

不做模板站,围绕你的业务场景量身设计,小众不撞款。

◐

营销型架构

以转化目标组织内容与路径,让官网真正带来询盘。

▲

全周期服务

设计、开发、运营、运维一体,上线只是开始。

免费获取你的建站方案

留下需求,专属顾问 24 小时内为你输出方案建议。