会员等级、积分、签到
这篇解决什么
等级怎么升、积分从哪来、签到规则写哪张表。读完能对上 member_level.experience、member_point_record 和 member_sign_in_config.day。
默认端口 48080,管理端前缀 /admin-api。PC 开发页 http://127.0.0.1:5800。先开模块见 会员功能设计。
示意图:积分和经验分开记。经验够了按启用中的等级配置重算 levelId。
从哪改
| 名称 | 说明 | 仓库路径 |
|---|---|---|
| 等级 | @RequestMapping("/member/level") | ruoyi-office/yudao-module-member/.../controller/admin/level/MemberLevelController.java |
| 等级表 | member_level | MemberLevelDO |
| 等级记录 | /member/level-record | MemberLevelRecordController |
| 经验记录 | /member/experience-record | MemberExperienceRecordController |
| 积分记录 | /member/point/record | MemberPointRecordController |
| 签到配置 | /member/sign-in/config | MemberSignInConfigController |
| 签到记录 | /member/sign-in/record | MemberSignInRecordController |
| 积分抵扣 | /member/config | MemberConfigController |
| 管理端 | 等级 / 积分 / 签到页 | ruoyi-office-vben/apps/web-antd/src/views/member/ |
官方菜单:等级 2325(/member/level)。积分记录组件路径是 member/point/record/index,菜单 path 是 /member/record。签到目录 2300,配置 /member/signin/config,记录 /member/signin/record。会员配置 /member/config。

本系统截图:会员中心 → 会员等级。升级看的是经验,不是积分。

本系统截图:会员中心 → 签到配置。day 是连续第几天,可配积分和经验。
等级怎么升
MemberLevelDO.experience 是升到该级需要的经验。addExperience 先写 member_experience_record,再按启用等级里「经验门槛最高且不超过当前经验」的那一档重算。
后台「修改等级」走 PUT /member/user/update-level,业务类型是 ADMIN,会写等级记录。经验加减由 MemberLevelApi 给商城等模块调用。
| 名称 | 说明 | 仓库路径 |
|---|---|---|
level | 等级序号,用来比大小 | MemberLevelDO |
experience | 升级门槛 | 同上 |
discountPercent | 享受折扣 | 同上 |
icon / backgroundUrl | 展示图 | 同上 |
| 经验业务 | 管理员、邀新、签到、下单等 | MemberExperienceBizTypeEnum |
积分不会自动升等级
member_user.point 和 experience 是两列。签到可以同时加积分和经验。只改积分,等级不会动。
等级变动通知 notifyMemberLevelChange 目前是空实现,不要按「升完级会推送」去联调。
积分与签到
积分变动落 member_point_record。正数获得,负数消耗,totalPoint 是变动后余额。
| 名称 | 说明 | 仓库路径 |
|---|---|---|
1 签到 | 用户端签到写入 | MemberPointBizTypeEnum.SIGN |
2 管理员修改 | 列表下拉「修改积分」 | ADMIN |
11 / 12 / 13 | 下单抵扣及取消、退款 | ORDER_USE* |
21 / 22 / 23 | 下单赠送及取消、退款 | ORDER_GIVE* |
| 抵扣开关 | pointTradeDeductEnable | member_config |
| 1 积分抵多少分 | pointTradeDeductUnitPrice,单位分 | 同上 |
| 1 元赠多少分 | pointTradeGivePoint | 同上 |
签到规则表 member_sign_in_config:day 是第几天,point / experience 是奖励。用户端 POST /app-api/member/sign-in/record/create 按连续天数匹配规则,再调积分和 addExperience。
示意图:按 MemberSignInRecordServiceImpl 的真实顺序。没有签到 Job。
配置与操作
走 会员等级(2325,/member/level)配 level、experience 门槛、discountPercent、展示图。签到在目录 2300:配置 /member/signin/config(day 是连续第几天,可配 point / experience),记录 /member/signin/record。积分抵扣在 /member/config:pointTradeDeductEnable、pointTradeDeductUnitPrice(单位分)、pointTradeGivePoint。
保存后,经验够了按启用等级重算 levelId。后台改等级走 PUT /member/user/update-level。只改 point 不会升等级。用户端签到 POST /app-api/member/sign-in/record/create 按连续天数匹配规则。没有签到 Job。notifyMemberLevelChange 目前是空实现。
截图见上文。
