返回作品

创建于 2025 年 1 月 13 日

标签
  • Java
  • Spring Boot
  • Spring Security
  • MyBatis
  • MySQL
  • Redis
  • Vue 2
  • Element UI
  • Apache POI
  • Hutool

核心功能

激活码批量生成。 生成逻辑位于 ActivationCodesServiceImpl.insertActivationCodes:遍历用户填写的生成条数(numbers),每个循环内先用 BeanUtil.copyProperties 复制表单属性,再按 HB + 公司编码 + yyMM 年月 + 产品编码 拼接码前缀,配合 StrUtil.padPre 将递增序号补零为 5 位形成序列号(例如 HB0012410001000001),同时用 RandomUtil.randomStringUpper(6) 生成 6 位大写字母数字激活码(例如 53MA08)。为防止海量数据单条插入性能差,代码采用分批提交策略:每累计 1000 条调用一次 batchInsert 并清空缓冲区,末批余量单独提交,一次可稳定生成千级乃至万级激活码。

多条件检索与导出。 前端列表页提供激活码、序列号、生成时间、激活时间、激活人员、所属公司、所属产品、生效周期、申请等待期、有效期、激活状态、产品类型共 12 个筛选项,通过 ActivationCodesMapper.xml 的动态 <where> 条件拼装 SQL;查询结果分页展示(PageHelper 分页插件),操作区支持单条修改、批量删除与 Excel 导出(ExcelUtil + @Excel 注解自动映射列头,导出文件名形如 ActivationCodes_时间戳.xlsx),全部操作受 system:ActivationCodes:list/add/edit/remove/export 权限点控制。

功能截图

暂无运行截图。

修改 ruoyi-admin/src/main/resources/application-druid.yml 中的数据库地址、账号、密码

mvn clean package -DskipTests java -jar ruoyi-admin/target/ruoyi-admin.jar

  1. 体验流程:进入”激活码”菜单 → 点击新增,选择所属公司、所属产品、生效周期、有效期、激活状态并填写生成条数(如 10)→ 确定后列表批量出现序列号与激活码 → 对某条记录点击修改,登记激活状态与激活人员完成核销 → 在”专属权益次数管理”中按激活码查询权益使用记录 → 使用导出按钮下载 Excel 清单。