Commit 497ea2eee856783fad17868fa51e3a021a849728
1 parent
be639923
会员详情,修改会员积分
Showing
5 changed files
with
58 additions
and
7 deletions
sql/mysql/member.sql
0 → 100644
| 1 | +-- 查询上级菜单、排序 | ||
| 2 | +SELECT parent_id, sort | ||
| 3 | +INTO @parentId, @sort | ||
| 4 | +FROM system_menu | ||
| 5 | +WHERE name = '用户等级修改' | ||
| 6 | +LIMIT 1; | ||
| 7 | +-- 新增 按钮权限 | ||
| 8 | +INSERT INTO system_menu(name, permission, type, sort, parent_id, path, icon, component, status) | ||
| 9 | +VALUES ('用户积分修改', 'member:user:update-point', 3, @sort + 1, @parentId, '', '', '', 0); | ||
| 10 | +INSERT INTO system_menu(name, permission, type, sort, parent_id, path, icon, component, status) | ||
| 11 | +VALUES ('用户余额修改', 'member:user:update-balance', 3, @sort + 2, @parentId, '', '', '', 0); |
yudao-module-member/yudao-module-member-api/src/main/java/cn/iocoder/yudao/module/member/enums/point/MemberPointBizTypeEnum.java
| @@ -17,6 +17,7 @@ import java.util.Objects; | @@ -17,6 +17,7 @@ import java.util.Objects; | ||
| 17 | public enum MemberPointBizTypeEnum implements IntArrayValuable { | 17 | public enum MemberPointBizTypeEnum implements IntArrayValuable { |
| 18 | 18 | ||
| 19 | SIGN(1, "签到", "签到获得 {} 积分", true), | 19 | SIGN(1, "签到", "签到获得 {} 积分", true), |
| 20 | + ADMIN(2, "管理员修改", "管理员修改 {} 积分", true), | ||
| 20 | ORDER_GIVE(10, "订单奖励", "下单获得 {} 积分", true), // 支付订单时,赠送积分 | 21 | ORDER_GIVE(10, "订单奖励", "下单获得 {} 积分", true), // 支付订单时,赠送积分 |
| 21 | ORDER_CANCEL(11, "订单取消", "订单取消,退还 {} 积分", true), // 取消订单时,退回积分 | 22 | ORDER_CANCEL(11, "订单取消", "订单取消,退还 {} 积分", true), // 取消订单时,退回积分 |
| 22 | ORDER_USE(12, "订单使用", "下单使用 {} 积分", false), // 下单时,扣减积分 | 23 | ORDER_USE(12, "订单使用", "下单使用 {} 积分", false), // 下单时,扣减积分 |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/user/MemberUserController.java
| @@ -3,17 +3,16 @@ package cn.iocoder.yudao.module.member.controller.admin.user; | @@ -3,17 +3,16 @@ package cn.iocoder.yudao.module.member.controller.admin.user; | ||
| 3 | import cn.hutool.core.collection.CollUtil; | 3 | import cn.hutool.core.collection.CollUtil; |
| 4 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; | 4 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; |
| 5 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 5 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 6 | -import cn.iocoder.yudao.module.member.controller.admin.user.vo.MemberUserPageReqVO; | ||
| 7 | -import cn.iocoder.yudao.module.member.controller.admin.user.vo.MemberUserRespVO; | ||
| 8 | -import cn.iocoder.yudao.module.member.controller.admin.user.vo.MemberUserUpdateLevelReqVO; | ||
| 9 | -import cn.iocoder.yudao.module.member.controller.admin.user.vo.MemberUserUpdateReqVO; | 6 | +import cn.iocoder.yudao.module.member.controller.admin.user.vo.*; |
| 10 | import cn.iocoder.yudao.module.member.convert.user.MemberUserConvert; | 7 | import cn.iocoder.yudao.module.member.convert.user.MemberUserConvert; |
| 11 | import cn.iocoder.yudao.module.member.dal.dataobject.group.MemberGroupDO; | 8 | import cn.iocoder.yudao.module.member.dal.dataobject.group.MemberGroupDO; |
| 12 | import cn.iocoder.yudao.module.member.dal.dataobject.level.MemberLevelDO; | 9 | import cn.iocoder.yudao.module.member.dal.dataobject.level.MemberLevelDO; |
| 13 | import cn.iocoder.yudao.module.member.dal.dataobject.tag.MemberTagDO; | 10 | import cn.iocoder.yudao.module.member.dal.dataobject.tag.MemberTagDO; |
| 14 | import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberUserDO; | 11 | import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberUserDO; |
| 12 | +import cn.iocoder.yudao.module.member.enums.point.MemberPointBizTypeEnum; | ||
| 15 | import cn.iocoder.yudao.module.member.service.group.MemberGroupService; | 13 | import cn.iocoder.yudao.module.member.service.group.MemberGroupService; |
| 16 | import cn.iocoder.yudao.module.member.service.level.MemberLevelService; | 14 | import cn.iocoder.yudao.module.member.service.level.MemberLevelService; |
| 15 | +import cn.iocoder.yudao.module.member.service.point.MemberPointRecordService; | ||
| 17 | import cn.iocoder.yudao.module.member.service.tag.MemberTagService; | 16 | import cn.iocoder.yudao.module.member.service.tag.MemberTagService; |
| 18 | import cn.iocoder.yudao.module.member.service.user.MemberUserService; | 17 | import cn.iocoder.yudao.module.member.service.user.MemberUserService; |
| 19 | import io.swagger.v3.oas.annotations.Operation; | 18 | import io.swagger.v3.oas.annotations.Operation; |
| @@ -33,6 +32,7 @@ import java.util.stream.Collectors; | @@ -33,6 +32,7 @@ import java.util.stream.Collectors; | ||
| 33 | 32 | ||
| 34 | import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; | 33 | import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; |
| 35 | import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet; | 34 | import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet; |
| 35 | +import static cn.iocoder.yudao.framework.web.core.util.WebFrameworkUtils.getLoginUserId; | ||
| 36 | 36 | ||
| 37 | @Tag(name = "管理后台 - 会员用户") | 37 | @Tag(name = "管理后台 - 会员用户") |
| 38 | @RestController | 38 | @RestController |
| @@ -48,6 +48,8 @@ public class MemberUserController { | @@ -48,6 +48,8 @@ public class MemberUserController { | ||
| 48 | private MemberLevelService memberLevelService; | 48 | private MemberLevelService memberLevelService; |
| 49 | @Resource | 49 | @Resource |
| 50 | private MemberGroupService memberGroupService; | 50 | private MemberGroupService memberGroupService; |
| 51 | + @Resource | ||
| 52 | + private MemberPointRecordService memberPointRecordService; | ||
| 51 | 53 | ||
| 52 | @PutMapping("/update") | 54 | @PutMapping("/update") |
| 53 | @Operation(summary = "更新会员用户") | 55 | @Operation(summary = "更新会员用户") |
| @@ -65,6 +67,23 @@ public class MemberUserController { | @@ -65,6 +67,23 @@ public class MemberUserController { | ||
| 65 | return success(true); | 67 | return success(true); |
| 66 | } | 68 | } |
| 67 | 69 | ||
| 70 | + @PutMapping("/update-point") | ||
| 71 | + @Operation(summary = "更新会员用户积分") | ||
| 72 | + @PreAuthorize("@ss.hasPermission('member:user:update-point')") | ||
| 73 | + public CommonResult<Boolean> updateUserPoint(@Valid @RequestBody MemberUserUpdatePointReqVO updateReqVO) { | ||
| 74 | + memberPointRecordService.createPointRecord(updateReqVO.getId(), updateReqVO.getPoint(), | ||
| 75 | + MemberPointBizTypeEnum.ADMIN, String.valueOf(getLoginUserId())); | ||
| 76 | + return success(true); | ||
| 77 | + } | ||
| 78 | + | ||
| 79 | + @PutMapping("/update-balance") | ||
| 80 | + @Operation(summary = "更新会员用户余额") | ||
| 81 | + @PreAuthorize("@ss.hasPermission('member:user:update-balance')") | ||
| 82 | + public CommonResult<Boolean> updateUserBalance(@Valid @RequestBody Long id) { | ||
| 83 | + // todo @jason:增加一个【修改余额】 | ||
| 84 | + return success(true); | ||
| 85 | + } | ||
| 86 | + | ||
| 68 | @GetMapping("/get") | 87 | @GetMapping("/get") |
| 69 | @Operation(summary = "获得会员用户") | 88 | @Operation(summary = "获得会员用户") |
| 70 | @Parameter(name = "id", description = "编号", required = true, example = "1024") | 89 | @Parameter(name = "id", description = "编号", required = true, example = "1024") |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/user/vo/MemberUserUpdateLevelReqVO.java
| @@ -2,7 +2,6 @@ package cn.iocoder.yudao.module.member.controller.admin.user.vo; | @@ -2,7 +2,6 @@ package cn.iocoder.yudao.module.member.controller.admin.user.vo; | ||
| 2 | 2 | ||
| 3 | import io.swagger.v3.oas.annotations.media.Schema; | 3 | import io.swagger.v3.oas.annotations.media.Schema; |
| 4 | import lombok.Data; | 4 | import lombok.Data; |
| 5 | -import lombok.EqualsAndHashCode; | ||
| 6 | import lombok.ToString; | 5 | import lombok.ToString; |
| 7 | 6 | ||
| 8 | import javax.validation.constraints.NotBlank; | 7 | import javax.validation.constraints.NotBlank; |
| @@ -10,9 +9,8 @@ import javax.validation.constraints.NotNull; | @@ -10,9 +9,8 @@ import javax.validation.constraints.NotNull; | ||
| 10 | 9 | ||
| 11 | @Schema(description = "管理后台 - 会员用户 修改等级 Request VO") | 10 | @Schema(description = "管理后台 - 会员用户 修改等级 Request VO") |
| 12 | @Data | 11 | @Data |
| 13 | -@EqualsAndHashCode(callSuper = true) | ||
| 14 | @ToString(callSuper = true) | 12 | @ToString(callSuper = true) |
| 15 | -public class MemberUserUpdateLevelReqVO extends MemberUserBaseVO { | 13 | +public class MemberUserUpdateLevelReqVO { |
| 16 | 14 | ||
| 17 | @Schema(description = "用户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "23788") | 15 | @Schema(description = "用户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "23788") |
| 18 | @NotNull(message = "用户编号不能为空") | 16 | @NotNull(message = "用户编号不能为空") |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/user/vo/MemberUserUpdatePointReqVO.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.member.controller.admin.user.vo; | ||
| 2 | + | ||
| 3 | +import io.swagger.v3.oas.annotations.media.Schema; | ||
| 4 | +import lombok.Data; | ||
| 5 | +import lombok.ToString; | ||
| 6 | + | ||
| 7 | +import javax.validation.constraints.NotNull; | ||
| 8 | + | ||
| 9 | +@Schema(description = "管理后台 - 会员用户 修改积分 Request VO") | ||
| 10 | +@Data | ||
| 11 | +@ToString(callSuper = true) | ||
| 12 | +public class MemberUserUpdatePointReqVO { | ||
| 13 | + | ||
| 14 | + @Schema(description = "用户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "23788") | ||
| 15 | + @NotNull(message = "用户编号不能为空") | ||
| 16 | + private Long id; | ||
| 17 | + | ||
| 18 | + @Schema(description = "变动积分,正数为增加,负数为减少", requiredMode = Schema.RequiredMode.REQUIRED, example = "100") | ||
| 19 | + @NotNull(message = "变动积分不能为空") | ||
| 20 | + private Integer point; | ||
| 21 | + | ||
| 22 | +} |