Commit 040a66965c67ca07f52c7d2e057df2ea6a33f2f7
1 parent
2f42964a
mall + member:
1、review 积分
Showing
26 changed files
with
62 additions
and
437 deletions
yudao-module-member/yudao-module-member-api/src/main/java/cn/iocoder/yudao/module/member/enums/ErrorCodeConstants.java
| ... | ... | @@ -24,10 +24,8 @@ public interface ErrorCodeConstants { |
| 24 | 24 | ErrorCode ADDRESS_NOT_EXISTS = new ErrorCode(1004004000, "用户收件地址不存在"); |
| 25 | 25 | |
| 26 | 26 | //========== 用户积分 1004005000 ========== |
| 27 | - ErrorCode CONFIG_NOT_EXISTS = new ErrorCode(1004005001, "积分设置不存在"); | |
| 28 | - | |
| 29 | - ErrorCode CONFIG_EXISTS = new ErrorCode(1004005002, "积分设置已存在,只允配置一条记录"); | |
| 30 | 27 | |
| 28 | + // TODO @xiaqing:错误码要分段;例如说这里,积分配置、积分记录、签到配置、签到记录;分成 4 段; | |
| 31 | 29 | |
| 32 | 30 | ErrorCode SIGN_IN_CONFIG_NOT_EXISTS = new ErrorCode(1004005003, "签到天数规则不存在"); |
| 33 | 31 | ErrorCode SIGN_IN_CONFIG_EXISTS = new ErrorCode(1004005004, "签到天数规则已存在"); | ... | ... |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/point/MemberPointRecordController.java
| ... | ... | @@ -2,9 +2,9 @@ package cn.iocoder.yudao.module.member.controller.admin.point; |
| 2 | 2 | |
| 3 | 3 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; |
| 4 | 4 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 5 | -import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; | |
| 6 | -import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog; | |
| 7 | -import cn.iocoder.yudao.module.member.controller.admin.point.vo.recrod.*; | |
| 5 | +import cn.iocoder.yudao.module.member.controller.admin.point.vo.recrod.MemberPointRecordPageReqVO; | |
| 6 | +import cn.iocoder.yudao.module.member.controller.admin.point.vo.recrod.MemberPointRecordRespVO; | |
| 7 | +import cn.iocoder.yudao.module.member.controller.admin.point.vo.recrod.MemberPointRecordUpdateReqVO; | |
| 8 | 8 | import cn.iocoder.yudao.module.member.convert.point.MemberPointRecordConvert; |
| 9 | 9 | import cn.iocoder.yudao.module.member.dal.dataobject.point.MemberPointRecordDO; |
| 10 | 10 | import cn.iocoder.yudao.module.member.service.point.MemberPointRecordService; |
| ... | ... | @@ -16,14 +16,9 @@ import org.springframework.validation.annotation.Validated; |
| 16 | 16 | import org.springframework.web.bind.annotation.*; |
| 17 | 17 | |
| 18 | 18 | import javax.annotation.Resource; |
| 19 | -import javax.servlet.http.HttpServletResponse; | |
| 20 | 19 | import javax.validation.Valid; |
| 21 | -import java.io.IOException; | |
| 22 | -import java.util.Collection; | |
| 23 | -import java.util.List; | |
| 24 | 20 | |
| 25 | 21 | import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; |
| 26 | -import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.EXPORT; | |
| 27 | 22 | |
| 28 | 23 | @Tag(name = "管理后台 - 用户积分记录") |
| 29 | 24 | @RestController |
| ... | ... | @@ -34,6 +29,7 @@ public class MemberPointRecordController { |
| 34 | 29 | @Resource |
| 35 | 30 | private MemberPointRecordService recordService; |
| 36 | 31 | |
| 32 | + // TODO @xiaqing:积分应该没有更新操作呀?可以删除哈; | |
| 37 | 33 | @PutMapping("/update") |
| 38 | 34 | @Operation(summary = "更新用户积分记录") |
| 39 | 35 | @PreAuthorize("@ss.hasPermission('point:record:update')") |
| ... | ... | @@ -51,15 +47,6 @@ public class MemberPointRecordController { |
| 51 | 47 | return success(MemberPointRecordConvert.INSTANCE.convert(record)); |
| 52 | 48 | } |
| 53 | 49 | |
| 54 | - @GetMapping("/list") | |
| 55 | - @Operation(summary = "获得用户积分记录列表") | |
| 56 | - @Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048") | |
| 57 | - @PreAuthorize("@ss.hasPermission('point:record:query')") | |
| 58 | - public CommonResult<List<MemberPointRecordRespVO>> getRecordList(@RequestParam("ids") Collection<Long> ids) { | |
| 59 | - List<MemberPointRecordDO> list = recordService.getRecordList(ids); | |
| 60 | - return success(MemberPointRecordConvert.INSTANCE.convertList(list)); | |
| 61 | - } | |
| 62 | - | |
| 63 | 50 | @GetMapping("/page") |
| 64 | 51 | @Operation(summary = "获得用户积分记录分页") |
| 65 | 52 | @PreAuthorize("@ss.hasPermission('point:record:query')") |
| ... | ... | @@ -68,16 +55,4 @@ public class MemberPointRecordController { |
| 68 | 55 | return success(MemberPointRecordConvert.INSTANCE.convertPage(pageResult)); |
| 69 | 56 | } |
| 70 | 57 | |
| 71 | - @GetMapping("/export-excel") | |
| 72 | - @Operation(summary = "导出用户积分记录 Excel") | |
| 73 | - @PreAuthorize("@ss.hasPermission('point:record:export')") | |
| 74 | - @OperateLog(type = EXPORT) | |
| 75 | - public void exportRecordExcel(@Valid MemberPointRecordExportReqVO exportReqVO, | |
| 76 | - HttpServletResponse response) throws IOException { | |
| 77 | - List<MemberPointRecordDO> list = recordService.getRecordList(exportReqVO); | |
| 78 | - // 导出 Excel | |
| 79 | - List<MemberPointRecordExcelVO> datas = MemberPointRecordConvert.INSTANCE.convertList02(list); | |
| 80 | - ExcelUtils.write(response, "用户积分记录.xls", "数据", MemberPointRecordExcelVO.class, datas); | |
| 81 | - } | |
| 82 | - | |
| 83 | 58 | } | ... | ... |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/point/vo/recrod/MemberPointRecordExcelVO.java deleted
| 1 | -package cn.iocoder.yudao.module.member.controller.admin.point.vo.recrod; | |
| 2 | - | |
| 3 | -import lombok.*; | |
| 4 | - | |
| 5 | -import java.time.LocalDateTime; | |
| 6 | - | |
| 7 | -import com.alibaba.excel.annotation.ExcelProperty; | |
| 8 | -import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat; | |
| 9 | -import cn.iocoder.yudao.framework.excel.core.convert.DictConvert; | |
| 10 | - | |
| 11 | - | |
| 12 | -/** | |
| 13 | - * 用户积分记录 Excel VO | |
| 14 | - * | |
| 15 | - * @author QingX | |
| 16 | - */ | |
| 17 | -@Data | |
| 18 | -public class MemberPointRecordExcelVO { | |
| 19 | - | |
| 20 | - @ExcelProperty("自增主键") | |
| 21 | - private Long id; | |
| 22 | - | |
| 23 | - @ExcelProperty("业务编码") | |
| 24 | - private String bizId; | |
| 25 | - | |
| 26 | - @ExcelProperty(value = "业务类型", converter = DictConvert.class) | |
| 27 | - @DictFormat("biz_type") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中 | |
| 28 | - private String bizType; | |
| 29 | - | |
| 30 | - @ExcelProperty("1增加 0扣减") | |
| 31 | - private String type; | |
| 32 | - | |
| 33 | - @ExcelProperty("积分标题") | |
| 34 | - private String title; | |
| 35 | - | |
| 36 | - @ExcelProperty("积分描述") | |
| 37 | - private String description; | |
| 38 | - | |
| 39 | - @ExcelProperty("积分") | |
| 40 | - private Integer point; | |
| 41 | - | |
| 42 | - @ExcelProperty("变动后的积分") | |
| 43 | - private Integer totalPoint; | |
| 44 | - | |
| 45 | - @ExcelProperty(value = "状态:1-订单创建,2-冻结期,3-完成,4-失效(订单退款) ", converter = DictConvert.class) | |
| 46 | - @DictFormat("point_status") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中 | |
| 47 | - private Integer status; | |
| 48 | - | |
| 49 | - @ExcelProperty("用户id") | |
| 50 | - private Integer userId; | |
| 51 | - | |
| 52 | - @ExcelProperty("冻结时间") | |
| 53 | - private LocalDateTime freezingTime; | |
| 54 | - | |
| 55 | - @ExcelProperty("解冻时间") | |
| 56 | - private LocalDateTime thawingTime; | |
| 57 | - | |
| 58 | - @ExcelProperty("发生时间") | |
| 59 | - private LocalDateTime createTime; | |
| 60 | - | |
| 61 | -} |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/signin/MemberSignInConfigController.java
| ... | ... | @@ -2,9 +2,10 @@ package cn.iocoder.yudao.module.member.controller.admin.signin; |
| 2 | 2 | |
| 3 | 3 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; |
| 4 | 4 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 5 | -import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; | |
| 6 | -import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog; | |
| 7 | -import cn.iocoder.yudao.module.member.controller.admin.signin.vo.*; | |
| 5 | +import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInConfigCreateReqVO; | |
| 6 | +import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInConfigPageReqVO; | |
| 7 | +import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInConfigRespVO; | |
| 8 | +import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInConfigUpdateReqVO; | |
| 8 | 9 | import cn.iocoder.yudao.module.member.convert.signin.MemberSignInConfigConvert; |
| 9 | 10 | import cn.iocoder.yudao.module.member.dal.dataobject.signin.MemberSignInConfigDO; |
| 10 | 11 | import cn.iocoder.yudao.module.member.service.signin.MemberSignInConfigService; |
| ... | ... | @@ -16,14 +17,9 @@ import org.springframework.validation.annotation.Validated; |
| 16 | 17 | import org.springframework.web.bind.annotation.*; |
| 17 | 18 | |
| 18 | 19 | import javax.annotation.Resource; |
| 19 | -import javax.servlet.http.HttpServletResponse; | |
| 20 | 20 | import javax.validation.Valid; |
| 21 | -import java.io.IOException; | |
| 22 | -import java.util.Collection; | |
| 23 | -import java.util.List; | |
| 24 | 21 | |
| 25 | 22 | import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; |
| 26 | -import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.EXPORT; | |
| 27 | 23 | |
| 28 | 24 | @Tag(name = "管理后台 - 积分签到规则") |
| 29 | 25 | @RestController |
| ... | ... | @@ -67,15 +63,6 @@ public class MemberSignInConfigController { |
| 67 | 63 | return success(MemberSignInConfigConvert.INSTANCE.convert(signInConfig)); |
| 68 | 64 | } |
| 69 | 65 | |
| 70 | - @GetMapping("/list") | |
| 71 | - @Operation(summary = "获得积分签到规则列表") | |
| 72 | - @Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048") | |
| 73 | - @PreAuthorize("@ss.hasPermission('point:sign-in-config:query')") | |
| 74 | - public CommonResult<List<MemberSignInConfigRespVO>> getSignInConfigList(@RequestParam("ids") Collection<Integer> ids) { | |
| 75 | - List<MemberSignInConfigDO> list = memberSignInConfigService.getSignInConfigList(ids); | |
| 76 | - return success(MemberSignInConfigConvert.INSTANCE.convertList(list)); | |
| 77 | - } | |
| 78 | - | |
| 79 | 66 | @GetMapping("/page") |
| 80 | 67 | @Operation(summary = "获得积分签到规则分页") |
| 81 | 68 | @PreAuthorize("@ss.hasPermission('point:sign-in-config:query')") |
| ... | ... | @@ -84,16 +71,4 @@ public class MemberSignInConfigController { |
| 84 | 71 | return success(MemberSignInConfigConvert.INSTANCE.convertPage(pageResult)); |
| 85 | 72 | } |
| 86 | 73 | |
| 87 | - @GetMapping("/export-excel") | |
| 88 | - @Operation(summary = "导出积分签到规则 Excel") | |
| 89 | - @PreAuthorize("@ss.hasPermission('point:sign-in-config:export')") | |
| 90 | - @OperateLog(type = EXPORT) | |
| 91 | - public void exportSignInConfigExcel(@Valid MemberSignInConfigExportReqVO exportReqVO, | |
| 92 | - HttpServletResponse response) throws IOException { | |
| 93 | - List<MemberSignInConfigDO> list = memberSignInConfigService.getSignInConfigList(exportReqVO); | |
| 94 | - // 导出 Excel | |
| 95 | - List<MemberSignInConfigExcelVO> datas = MemberSignInConfigConvert.INSTANCE.convertList02(list); | |
| 96 | - ExcelUtils.write(response, "积分签到规则.xls", "数据", MemberSignInConfigExcelVO.class, datas); | |
| 97 | - } | |
| 98 | - | |
| 99 | 74 | } | ... | ... |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/signin/MemberSignInRecordController.java
| ... | ... | @@ -2,9 +2,8 @@ package cn.iocoder.yudao.module.member.controller.admin.signin; |
| 2 | 2 | |
| 3 | 3 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; |
| 4 | 4 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 5 | -import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; | |
| 6 | -import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog; | |
| 7 | -import cn.iocoder.yudao.module.member.controller.admin.signin.vo.*; | |
| 5 | +import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInRecordPageReqVO; | |
| 6 | +import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInRecordRespVO; | |
| 8 | 7 | import cn.iocoder.yudao.module.member.convert.signin.MemberSignInRecordConvert; |
| 9 | 8 | import cn.iocoder.yudao.module.member.dal.dataobject.signin.MemberSignInRecordDO; |
| 10 | 9 | import cn.iocoder.yudao.module.member.service.signin.MemberSignInRecordService; |
| ... | ... | @@ -16,14 +15,9 @@ import org.springframework.validation.annotation.Validated; |
| 16 | 15 | import org.springframework.web.bind.annotation.*; |
| 17 | 16 | |
| 18 | 17 | import javax.annotation.Resource; |
| 19 | -import javax.servlet.http.HttpServletResponse; | |
| 20 | 18 | import javax.validation.Valid; |
| 21 | -import java.io.IOException; | |
| 22 | -import java.util.Collection; | |
| 23 | -import java.util.List; | |
| 24 | 19 | |
| 25 | 20 | import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; |
| 26 | -import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.EXPORT; | |
| 27 | 21 | |
| 28 | 22 | @Tag(name = "管理后台 - 用户签到积分") |
| 29 | 23 | @RestController |
| ... | ... | @@ -34,6 +28,7 @@ public class MemberSignInRecordController { |
| 34 | 28 | @Resource |
| 35 | 29 | private MemberSignInRecordService memberSignInRecordService; |
| 36 | 30 | |
| 31 | + // TODO @xiaqing:签到是不是不用删除? | |
| 37 | 32 | @DeleteMapping("/delete") |
| 38 | 33 | @Operation(summary = "删除用户签到积分") |
| 39 | 34 | @Parameter(name = "id", description = "编号", required = true) |
| ... | ... | @@ -52,15 +47,6 @@ public class MemberSignInRecordController { |
| 52 | 47 | return success(MemberSignInRecordConvert.INSTANCE.convert(signInRecord)); |
| 53 | 48 | } |
| 54 | 49 | |
| 55 | - @GetMapping("/list") | |
| 56 | - @Operation(summary = "获得用户签到积分列表") | |
| 57 | - @Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048") | |
| 58 | - @PreAuthorize("@ss.hasPermission('point:sign-in-record:query')") | |
| 59 | - public CommonResult<List<MemberSignInRecordRespVO>> getSignInRecordList(@RequestParam("ids") Collection<Long> ids) { | |
| 60 | - List<MemberSignInRecordDO> list = memberSignInRecordService.getSignInRecordList(ids); | |
| 61 | - return success(MemberSignInRecordConvert.INSTANCE.convertList(list)); | |
| 62 | - } | |
| 63 | - | |
| 64 | 50 | @GetMapping("/page") |
| 65 | 51 | @Operation(summary = "获得用户签到积分分页") |
| 66 | 52 | @PreAuthorize("@ss.hasPermission('point:sign-in-record:query')") |
| ... | ... | @@ -68,17 +54,4 @@ public class MemberSignInRecordController { |
| 68 | 54 | PageResult<MemberSignInRecordDO> pageResult = memberSignInRecordService.getSignInRecordPage(pageVO); |
| 69 | 55 | return success(MemberSignInRecordConvert.INSTANCE.convertPage(pageResult)); |
| 70 | 56 | } |
| 71 | - | |
| 72 | - @GetMapping("/export-excel") | |
| 73 | - @Operation(summary = "导出用户签到积分 Excel") | |
| 74 | - @PreAuthorize("@ss.hasPermission('point:sign-in-record:export')") | |
| 75 | - @OperateLog(type = EXPORT) | |
| 76 | - public void exportSignInRecordExcel(@Valid MemberSignInRecordExportReqVO exportReqVO, | |
| 77 | - HttpServletResponse response) throws IOException { | |
| 78 | - List<MemberSignInRecordDO> list = memberSignInRecordService.getSignInRecordList(exportReqVO); | |
| 79 | - // 导出 Excel | |
| 80 | - List<MemberSignInRecordExcelVO> datas = MemberSignInRecordConvert.INSTANCE.convertList02(list); | |
| 81 | - ExcelUtils.write(response, "用户签到积分.xls", "数据", MemberSignInRecordExcelVO.class, datas); | |
| 82 | - } | |
| 83 | - | |
| 84 | 57 | } | ... | ... |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/signin/vo/MemberSignInConfigBaseVO.java
| ... | ... | @@ -10,7 +10,7 @@ import lombok.*; |
| 10 | 10 | @Data |
| 11 | 11 | public class MemberSignInConfigBaseVO { |
| 12 | 12 | |
| 13 | - @Schema(description = "签到第x天", example = "7") | |
| 13 | + @Schema(description = "签到第 x 天", example = "7") | |
| 14 | 14 | private Integer day; |
| 15 | 15 | |
| 16 | 16 | @Schema(description = "签到天数对应分数", example = "10") | ... | ... |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/signin/vo/MemberSignInConfigExcelVO.java deleted
| 1 | -package cn.iocoder.yudao.module.member.controller.admin.signin.vo; | |
| 2 | - | |
| 3 | -import lombok.*; | |
| 4 | - | |
| 5 | -import java.time.LocalDateTime; | |
| 6 | - | |
| 7 | -import com.alibaba.excel.annotation.ExcelProperty; | |
| 8 | - | |
| 9 | -/** | |
| 10 | - * 积分签到规则 Excel VO | |
| 11 | - * | |
| 12 | - * @author QingX | |
| 13 | - */ | |
| 14 | -@Data | |
| 15 | -public class MemberSignInConfigExcelVO { | |
| 16 | - | |
| 17 | - @ExcelProperty("签到第x天") | |
| 18 | - private Integer day; | |
| 19 | - | |
| 20 | - @ExcelProperty("签到天数对应分数") | |
| 21 | - private Integer point; | |
| 22 | - | |
| 23 | - @ExcelProperty("创建时间") | |
| 24 | - private LocalDateTime createTime; | |
| 25 | - | |
| 26 | -} |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/signin/vo/MemberSignInConfigExportReqVO.java deleted
| 1 | -package cn.iocoder.yudao.module.member.controller.admin.signin.vo; | |
| 2 | - | |
| 3 | -import lombok.*; | |
| 4 | -import io.swagger.v3.oas.annotations.media.Schema; | |
| 5 | - | |
| 6 | -@Schema(description = "管理后台 - 积分签到规则 Excel 导出 Request VO,参数和 SignInConfigPageReqVO 是一致的") | |
| 7 | -@Data | |
| 8 | -public class MemberSignInConfigExportReqVO { | |
| 9 | - | |
| 10 | - @Schema(description = "签到第x天", example = "7") | |
| 11 | - private Integer day; | |
| 12 | - | |
| 13 | -} |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/signin/vo/MemberSignInRecordExcelVO.java deleted
| 1 | -package cn.iocoder.yudao.module.member.controller.admin.signin.vo; | |
| 2 | - | |
| 3 | -import com.alibaba.excel.annotation.ExcelProperty; | |
| 4 | -import lombok.Data; | |
| 5 | - | |
| 6 | -import java.time.LocalDateTime; | |
| 7 | - | |
| 8 | -/** | |
| 9 | - * 用户签到积分 Excel VO | |
| 10 | - * | |
| 11 | - * @author 芋道源码 | |
| 12 | - */ | |
| 13 | -@Data | |
| 14 | -public class MemberSignInRecordExcelVO { | |
| 15 | - | |
| 16 | - @ExcelProperty("签到自增id") | |
| 17 | - private Long id; | |
| 18 | - | |
| 19 | - @ExcelProperty("签到用户") | |
| 20 | - private Integer userId; | |
| 21 | - | |
| 22 | - @ExcelProperty("第几天签到") | |
| 23 | - private Integer day; | |
| 24 | - | |
| 25 | - @ExcelProperty("签到的分数") | |
| 26 | - private Integer point; | |
| 27 | - | |
| 28 | - @ExcelProperty("签到时间") | |
| 29 | - private LocalDateTime createTime; | |
| 30 | - | |
| 31 | -} |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/signin/vo/MemberSignInRecordExportReqVO.java deleted
| 1 | -package cn.iocoder.yudao.module.member.controller.admin.signin.vo; | |
| 2 | - | |
| 3 | -import io.swagger.v3.oas.annotations.media.Schema; | |
| 4 | -import lombok.Data; | |
| 5 | -import org.springframework.format.annotation.DateTimeFormat; | |
| 6 | - | |
| 7 | -import java.time.LocalDateTime; | |
| 8 | - | |
| 9 | -import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; | |
| 10 | - | |
| 11 | -@Schema(description = "管理后台 - 用户签到积分 Excel 导出 Request VO,参数和 SignInRecordPageReqVO 是一致的") | |
| 12 | -@Data | |
| 13 | -public class MemberSignInRecordExportReqVO { | |
| 14 | - | |
| 15 | - @Schema(description = "签到用户", example = "6507") | |
| 16 | - private Integer userId; | |
| 17 | - | |
| 18 | - @Schema(description = "第几天签到") | |
| 19 | - private Integer day; | |
| 20 | - | |
| 21 | - @Schema(description = "签到时间") | |
| 22 | - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) | |
| 23 | - private LocalDateTime[] createTime; | |
| 24 | - | |
| 25 | -} |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/convert/point/MemberPointRecordConvert.java
| 1 | 1 | package cn.iocoder.yudao.module.member.convert.point; |
| 2 | 2 | |
| 3 | -import java.util.*; | |
| 4 | - | |
| 5 | 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 6 | - | |
| 7 | 4 | import cn.iocoder.yudao.module.member.controller.admin.point.vo.recrod.MemberPointRecordCreateReqVO; |
| 8 | -import cn.iocoder.yudao.module.member.controller.admin.point.vo.recrod.MemberPointRecordExcelVO; | |
| 9 | 5 | import cn.iocoder.yudao.module.member.controller.admin.point.vo.recrod.MemberPointRecordRespVO; |
| 10 | 6 | import cn.iocoder.yudao.module.member.controller.admin.point.vo.recrod.MemberPointRecordUpdateReqVO; |
| 11 | 7 | import cn.iocoder.yudao.module.member.dal.dataobject.point.MemberPointRecordDO; |
| ... | ... | @@ -28,10 +24,6 @@ public interface MemberPointRecordConvert { |
| 28 | 24 | |
| 29 | 25 | MemberPointRecordRespVO convert(MemberPointRecordDO bean); |
| 30 | 26 | |
| 31 | - List<MemberPointRecordRespVO> convertList(List<MemberPointRecordDO> list); | |
| 32 | - | |
| 33 | 27 | PageResult<MemberPointRecordRespVO> convertPage(PageResult<MemberPointRecordDO> page); |
| 34 | 28 | |
| 35 | - List<MemberPointRecordExcelVO> convertList02(List<MemberPointRecordDO> list); | |
| 36 | - | |
| 37 | 29 | } | ... | ... |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/convert/signin/MemberSignInConfigConvert.java
| 1 | 1 | package cn.iocoder.yudao.module.member.convert.signin; |
| 2 | 2 | |
| 3 | -import java.util.*; | |
| 4 | - | |
| 5 | 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 6 | - | |
| 4 | +import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInConfigCreateReqVO; | |
| 5 | +import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInConfigRespVO; | |
| 6 | +import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInConfigUpdateReqVO; | |
| 7 | 7 | import cn.iocoder.yudao.module.member.dal.dataobject.signin.MemberSignInConfigDO; |
| 8 | 8 | import org.mapstruct.Mapper; |
| 9 | 9 | import org.mapstruct.factory.Mappers; |
| 10 | -import cn.iocoder.yudao.module.member.controller.admin.signin.vo.*; | |
| 10 | + | |
| 11 | +import java.util.List; | |
| 11 | 12 | |
| 12 | 13 | /** |
| 13 | 14 | * 积分签到规则 Convert |
| ... | ... | @@ -29,6 +30,4 @@ public interface MemberSignInConfigConvert { |
| 29 | 30 | |
| 30 | 31 | PageResult<MemberSignInConfigRespVO> convertPage(PageResult<MemberSignInConfigDO> page); |
| 31 | 32 | |
| 32 | - List<MemberSignInConfigExcelVO> convertList02(List<MemberSignInConfigDO> list); | |
| 33 | - | |
| 34 | 33 | } | ... | ... |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/convert/signin/MemberSignInRecordConvert.java
| 1 | 1 | package cn.iocoder.yudao.module.member.convert.signin; |
| 2 | 2 | |
| 3 | -import java.util.*; | |
| 4 | - | |
| 5 | 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 6 | - | |
| 7 | 4 | import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInRecordCreateReqVO; |
| 8 | -import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInRecordExcelVO; | |
| 9 | 5 | import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInRecordRespVO; |
| 10 | 6 | import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInRecordUpdateReqVO; |
| 11 | 7 | import cn.iocoder.yudao.module.member.dal.dataobject.signin.MemberSignInRecordDO; |
| ... | ... | @@ -28,10 +24,6 @@ public interface MemberSignInRecordConvert { |
| 28 | 24 | |
| 29 | 25 | MemberSignInRecordRespVO convert(MemberSignInRecordDO bean); |
| 30 | 26 | |
| 31 | - List<MemberSignInRecordRespVO> convertList(List<MemberSignInRecordDO> list); | |
| 32 | - | |
| 33 | 27 | PageResult<MemberSignInRecordRespVO> convertPage(PageResult<MemberSignInRecordDO> page); |
| 34 | 28 | |
| 35 | - List<MemberSignInRecordExcelVO> convertList02(List<MemberSignInRecordDO> list); | |
| 36 | - | |
| 37 | 29 | } | ... | ... |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/point/MemberPointRecordDO.java
| ... | ... | @@ -35,12 +35,13 @@ public class MemberPointRecordDO extends BaseDO { |
| 35 | 35 | /** |
| 36 | 36 | * 业务类型 |
| 37 | 37 | * |
| 38 | - * 枚举 {@link TODO biz_type 对应的类} | |
| 38 | + * 枚举 {@link TODO biz_type 对应枚举,然后改成 int 类型哈} | |
| 39 | 39 | */ |
| 40 | 40 | private String bizType; |
| 41 | 41 | /** |
| 42 | 42 | * 1增加 0扣减 |
| 43 | 43 | */ |
| 44 | + // TODO @xiaqing:要不把 type 合并到 point 里?增加 point 是正数,减少 point 是负数? | |
| 44 | 45 | private String type; |
| 45 | 46 | /** |
| 46 | 47 | * 积分标题 |
| ... | ... | @@ -60,7 +61,6 @@ public class MemberPointRecordDO extends BaseDO { |
| 60 | 61 | private Integer totalPoint; |
| 61 | 62 | /** |
| 62 | 63 | * 状态:1-订单创建,2-冻结期,3-完成,4-失效(订单退款) |
| 63 | - | |
| 64 | 64 | * |
| 65 | 65 | * 枚举 {@link TODO point_status 对应的类} |
| 66 | 66 | */ | ... | ... |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/point/MemberPointRecordMapper.java
| ... | ... | @@ -3,13 +3,10 @@ package cn.iocoder.yudao.module.member.dal.mysql.point; |
| 3 | 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 4 | 4 | import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; |
| 5 | 5 | import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; |
| 6 | -import cn.iocoder.yudao.module.member.controller.admin.point.vo.recrod.MemberPointRecordExportReqVO; | |
| 7 | 6 | import cn.iocoder.yudao.module.member.controller.admin.point.vo.recrod.MemberPointRecordPageReqVO; |
| 8 | 7 | import cn.iocoder.yudao.module.member.dal.dataobject.point.MemberPointRecordDO; |
| 9 | 8 | import org.apache.ibatis.annotations.Mapper; |
| 10 | 9 | |
| 11 | -import java.util.List; | |
| 12 | - | |
| 13 | 10 | /** |
| 14 | 11 | * 用户积分记录 Mapper |
| 15 | 12 | * |
| ... | ... | @@ -28,14 +25,4 @@ public interface MemberPointRecordMapper extends BaseMapperX<MemberPointRecordDO |
| 28 | 25 | .orderByDesc(MemberPointRecordDO::getId)); |
| 29 | 26 | } |
| 30 | 27 | |
| 31 | - default List<MemberPointRecordDO> selectList(MemberPointRecordExportReqVO reqVO) { | |
| 32 | - return selectList(new LambdaQueryWrapperX<MemberPointRecordDO>() | |
| 33 | - .eqIfPresent(MemberPointRecordDO::getBizId, reqVO.getBizId()) | |
| 34 | - .eqIfPresent(MemberPointRecordDO::getBizType, reqVO.getBizType()) | |
| 35 | - .eqIfPresent(MemberPointRecordDO::getType, reqVO.getType()) | |
| 36 | - .eqIfPresent(MemberPointRecordDO::getTitle, reqVO.getTitle()) | |
| 37 | - .eqIfPresent(MemberPointRecordDO::getStatus, reqVO.getStatus()) | |
| 38 | - .orderByDesc(MemberPointRecordDO::getId)); | |
| 39 | - } | |
| 40 | - | |
| 41 | 28 | } | ... | ... |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/signin/MemberSignInConfigMapper.java
| ... | ... | @@ -3,14 +3,11 @@ package cn.iocoder.yudao.module.member.dal.mysql.signin; |
| 3 | 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 4 | 4 | import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; |
| 5 | 5 | import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; |
| 6 | -import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInConfigExportReqVO; | |
| 7 | 6 | import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInConfigPageReqVO; |
| 8 | 7 | import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInConfigUpdateReqVO; |
| 9 | 8 | import cn.iocoder.yudao.module.member.dal.dataobject.signin.MemberSignInConfigDO; |
| 10 | 9 | import org.apache.ibatis.annotations.Mapper; |
| 11 | 10 | |
| 12 | -import java.util.List; | |
| 13 | - | |
| 14 | 11 | /** |
| 15 | 12 | * 积分签到规则 Mapper |
| 16 | 13 | * |
| ... | ... | @@ -25,12 +22,6 @@ public interface MemberSignInConfigMapper extends BaseMapperX<MemberSignInConfig |
| 25 | 22 | .orderByAsc(MemberSignInConfigDO::getDay)); |
| 26 | 23 | } |
| 27 | 24 | |
| 28 | - default List<MemberSignInConfigDO> selectList(MemberSignInConfigExportReqVO reqVO) { | |
| 29 | - return selectList(new LambdaQueryWrapperX<MemberSignInConfigDO>() | |
| 30 | - .eqIfPresent(MemberSignInConfigDO::getDay, reqVO.getDay()) | |
| 31 | - .orderByDesc(MemberSignInConfigDO::getId)); | |
| 32 | - } | |
| 33 | - | |
| 34 | 25 | // |
| 35 | 26 | default long selectSameDayNotSelf(MemberSignInConfigUpdateReqVO reqVO){ |
| 36 | 27 | return selectCount(new LambdaQueryWrapperX <MemberSignInConfigDO>() | ... | ... |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/signin/MemberSignInRecordMapper.java
| ... | ... | @@ -3,13 +3,10 @@ package cn.iocoder.yudao.module.member.dal.mysql.signin; |
| 3 | 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 4 | 4 | import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; |
| 5 | 5 | import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; |
| 6 | -import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInRecordExportReqVO; | |
| 7 | 6 | import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInRecordPageReqVO; |
| 8 | 7 | import cn.iocoder.yudao.module.member.dal.dataobject.signin.MemberSignInRecordDO; |
| 9 | 8 | import org.apache.ibatis.annotations.Mapper; |
| 10 | 9 | |
| 11 | -import java.util.List; | |
| 12 | - | |
| 13 | 10 | /** |
| 14 | 11 | * 用户签到积分 Mapper |
| 15 | 12 | * |
| ... | ... | @@ -26,12 +23,4 @@ public interface MemberSignInRecordMapper extends BaseMapperX<MemberSignInRecord |
| 26 | 23 | .orderByDesc(MemberSignInRecordDO::getId)); |
| 27 | 24 | } |
| 28 | 25 | |
| 29 | - default List<MemberSignInRecordDO> selectList(MemberSignInRecordExportReqVO reqVO) { | |
| 30 | - return selectList(new LambdaQueryWrapperX<MemberSignInRecordDO>() | |
| 31 | - .eqIfPresent(MemberSignInRecordDO::getUserId, reqVO.getUserId()) | |
| 32 | - .eqIfPresent(MemberSignInRecordDO::getDay, reqVO.getDay()) | |
| 33 | - .betweenIfPresent(MemberSignInRecordDO::getCreateTime, reqVO.getCreateTime()) | |
| 34 | - .orderByDesc(MemberSignInRecordDO::getId)); | |
| 35 | - } | |
| 36 | - | |
| 37 | 26 | } | ... | ... |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/point/MemberPointConfigServiceImpl.java
| ... | ... | @@ -3,7 +3,6 @@ package cn.iocoder.yudao.module.member.service.point; |
| 3 | 3 | import cn.iocoder.yudao.module.member.controller.admin.point.vo.config.MemberPointConfigSaveReqVO; |
| 4 | 4 | import cn.iocoder.yudao.module.member.convert.point.MemberPointConfigConvert; |
| 5 | 5 | import cn.iocoder.yudao.module.member.dal.dataobject.point.MemberPointConfigDO; |
| 6 | -import cn.iocoder.yudao.module.member.dal.dataobject.point.MemberPointRecordDO; | |
| 7 | 6 | import cn.iocoder.yudao.module.member.dal.mysql.point.MemberPointConfigMapper; |
| 8 | 7 | import org.springframework.stereotype.Service; |
| 9 | 8 | import org.springframework.validation.annotation.Validated; |
| ... | ... | @@ -25,6 +24,7 @@ public class MemberPointConfigServiceImpl implements MemberPointConfigService { |
| 25 | 24 | |
| 26 | 25 | @Override |
| 27 | 26 | public void saveConfig(MemberPointConfigSaveReqVO saveReqVO) { |
| 27 | + // TODO @xiaqing:直接 getConfig() 查询,如果不存在,则插入;存在,则进行更新; | |
| 28 | 28 | long total = pointConfigMapper.selectCount(); |
| 29 | 29 | MemberPointConfigDO pointConfigDO = MemberPointConfigConvert.INSTANCE.convert(saveReqVO); |
| 30 | 30 | //大于0存在记录,则更新,否则插入 |
| ... | ... | @@ -38,6 +38,8 @@ public class MemberPointConfigServiceImpl implements MemberPointConfigService { |
| 38 | 38 | @Override |
| 39 | 39 | public MemberPointConfigDO getConfig() { |
| 40 | 40 | List <MemberPointConfigDO> list = pointConfigMapper.selectList(); |
| 41 | + // TODO @xiaqing:可以使用 CollUtil.getFirst() | |
| 41 | 42 | return list == null ? null : list.get(0); |
| 42 | 43 | } |
| 44 | + | |
| 43 | 45 | } | ... | ... |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/point/MemberPointRecordService.java
| 1 | 1 | package cn.iocoder.yudao.module.member.service.point; |
| 2 | 2 | |
| 3 | 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 4 | -import cn.iocoder.yudao.module.member.controller.admin.point.vo.recrod.MemberPointRecordCreateReqVO; | |
| 5 | -import cn.iocoder.yudao.module.member.controller.admin.point.vo.recrod.MemberPointRecordExportReqVO; | |
| 6 | 4 | import cn.iocoder.yudao.module.member.controller.admin.point.vo.recrod.MemberPointRecordPageReqVO; |
| 7 | 5 | import cn.iocoder.yudao.module.member.controller.admin.point.vo.recrod.MemberPointRecordUpdateReqVO; |
| 8 | 6 | import cn.iocoder.yudao.module.member.dal.dataobject.point.MemberPointRecordDO; |
| 9 | 7 | |
| 10 | 8 | import javax.validation.Valid; |
| 11 | -import java.util.Collection; | |
| 12 | -import java.util.List; | |
| 13 | 9 | |
| 14 | 10 | /** |
| 15 | 11 | * 用户积分记录 Service 接口 |
| ... | ... | @@ -17,7 +13,7 @@ import java.util.List; |
| 17 | 13 | * @author QingX |
| 18 | 14 | */ |
| 19 | 15 | public interface MemberPointRecordService { |
| 20 | - | |
| 16 | + // TODO @xiaqing:方法和方法之间,是空一行哈; | |
| 21 | 17 | |
| 22 | 18 | /** |
| 23 | 19 | * 更新用户积分记录 |
| ... | ... | @@ -27,7 +23,6 @@ public interface MemberPointRecordService { |
| 27 | 23 | void updateRecord(@Valid MemberPointRecordUpdateReqVO updateReqVO); |
| 28 | 24 | |
| 29 | 25 | |
| 30 | - | |
| 31 | 26 | /** |
| 32 | 27 | * 获得用户积分记录 |
| 33 | 28 | * |
| ... | ... | @@ -37,14 +32,6 @@ public interface MemberPointRecordService { |
| 37 | 32 | MemberPointRecordDO getRecord(Long id); |
| 38 | 33 | |
| 39 | 34 | /** |
| 40 | - * 获得用户积分记录列表 | |
| 41 | - * | |
| 42 | - * @param ids 编号 | |
| 43 | - * @return 用户积分记录列表 | |
| 44 | - */ | |
| 45 | - List<MemberPointRecordDO> getRecordList(Collection<Long> ids); | |
| 46 | - | |
| 47 | - /** | |
| 48 | 35 | * 获得用户积分记录分页 |
| 49 | 36 | * |
| 50 | 37 | * @param pageReqVO 分页查询 |
| ... | ... | @@ -52,12 +39,4 @@ public interface MemberPointRecordService { |
| 52 | 39 | */ |
| 53 | 40 | PageResult<MemberPointRecordDO> getRecordPage(MemberPointRecordPageReqVO pageReqVO); |
| 54 | 41 | |
| 55 | - /** | |
| 56 | - * 获得用户积分记录列表, 用于 Excel 导出 | |
| 57 | - * | |
| 58 | - * @param exportReqVO 查询条件 | |
| 59 | - * @return 用户积分记录列表 | |
| 60 | - */ | |
| 61 | - List<MemberPointRecordDO> getRecordList(MemberPointRecordExportReqVO exportReqVO); | |
| 62 | - | |
| 63 | 42 | } | ... | ... |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/point/MemberPointRecordServiceImpl.java
| 1 | 1 | package cn.iocoder.yudao.module.member.service.point; |
| 2 | 2 | |
| 3 | 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 4 | -import cn.iocoder.yudao.module.member.controller.admin.point.vo.recrod.MemberPointRecordCreateReqVO; | |
| 5 | -import cn.iocoder.yudao.module.member.controller.admin.point.vo.recrod.MemberPointRecordExportReqVO; | |
| 6 | 4 | import cn.iocoder.yudao.module.member.controller.admin.point.vo.recrod.MemberPointRecordPageReqVO; |
| 7 | 5 | import cn.iocoder.yudao.module.member.controller.admin.point.vo.recrod.MemberPointRecordUpdateReqVO; |
| 8 | 6 | import cn.iocoder.yudao.module.member.convert.point.MemberPointRecordConvert; |
| ... | ... | @@ -40,7 +38,6 @@ public class MemberPointRecordServiceImpl implements MemberPointRecordService { |
| 40 | 38 | recordMapper.updateById(updateObj); |
| 41 | 39 | } |
| 42 | 40 | |
| 43 | - | |
| 44 | 41 | private void validateRecordExists(Long id) { |
| 45 | 42 | if (recordMapper.selectById(id) == null) { |
| 46 | 43 | throw exception(ErrorCodeConstants.RECORD_NOT_EXISTS); |
| ... | ... | @@ -53,18 +50,8 @@ public class MemberPointRecordServiceImpl implements MemberPointRecordService { |
| 53 | 50 | } |
| 54 | 51 | |
| 55 | 52 | @Override |
| 56 | - public List<MemberPointRecordDO> getRecordList(Collection<Long> ids) { | |
| 57 | - return recordMapper.selectBatchIds(ids); | |
| 58 | - } | |
| 59 | - | |
| 60 | - @Override | |
| 61 | 53 | public PageResult<MemberPointRecordDO> getRecordPage(MemberPointRecordPageReqVO pageReqVO) { |
| 62 | 54 | return recordMapper.selectPage(pageReqVO); |
| 63 | 55 | } |
| 64 | 56 | |
| 65 | - @Override | |
| 66 | - public List<MemberPointRecordDO> getRecordList(MemberPointRecordExportReqVO exportReqVO) { | |
| 67 | - return recordMapper.selectList(exportReqVO); | |
| 68 | - } | |
| 69 | - | |
| 70 | 57 | } | ... | ... |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/signin/MemberSignInConfigService.java
| 1 | 1 | package cn.iocoder.yudao.module.member.service.signin; |
| 2 | 2 | |
| 3 | -import java.util.*; | |
| 4 | -import javax.validation.*; | |
| 5 | - | |
| 3 | +import cn.iocoder.yudao.framework.common.pojo.PageResult; | |
| 6 | 4 | import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInConfigCreateReqVO; |
| 7 | -import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInConfigExportReqVO; | |
| 8 | 5 | import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInConfigPageReqVO; |
| 9 | 6 | import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInConfigUpdateReqVO; |
| 10 | 7 | import cn.iocoder.yudao.module.member.dal.dataobject.signin.MemberSignInConfigDO; |
| 11 | -import cn.iocoder.yudao.framework.common.pojo.PageResult; | |
| 8 | + | |
| 9 | +import javax.validation.Valid; | |
| 12 | 10 | |
| 13 | 11 | /** |
| 14 | 12 | * 积分签到规则 Service 接口 |
| ... | ... | @@ -48,14 +46,6 @@ public interface MemberSignInConfigService { |
| 48 | 46 | MemberSignInConfigDO getSignInConfig(Integer id); |
| 49 | 47 | |
| 50 | 48 | /** |
| 51 | - * 获得积分签到规则列表 | |
| 52 | - * | |
| 53 | - * @param ids 编号 | |
| 54 | - * @return 积分签到规则列表 | |
| 55 | - */ | |
| 56 | - List<MemberSignInConfigDO> getSignInConfigList(Collection<Integer> ids); | |
| 57 | - | |
| 58 | - /** | |
| 59 | 49 | * 获得积分签到规则分页 |
| 60 | 50 | * |
| 61 | 51 | * @param pageReqVO 分页查询 |
| ... | ... | @@ -63,12 +53,4 @@ public interface MemberSignInConfigService { |
| 63 | 53 | */ |
| 64 | 54 | PageResult<MemberSignInConfigDO> getSignInConfigPage(MemberSignInConfigPageReqVO pageReqVO); |
| 65 | 55 | |
| 66 | - /** | |
| 67 | - * 获得积分签到规则列表, 用于 Excel 导出 | |
| 68 | - * | |
| 69 | - * @param exportReqVO 查询条件 | |
| 70 | - * @return 积分签到规则列表 | |
| 71 | - */ | |
| 72 | - List<MemberSignInConfigDO> getSignInConfigList(MemberSignInConfigExportReqVO exportReqVO); | |
| 73 | - | |
| 74 | 56 | } | ... | ... |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/signin/MemberSignInConfigServiceImpl.java
| 1 | 1 | package cn.iocoder.yudao.module.member.service.signin; |
| 2 | 2 | |
| 3 | -import cn.iocoder.yudao.module.member.service.signin.MemberSignInConfigService; | |
| 4 | -import org.springframework.stereotype.Service; | |
| 5 | -import javax.annotation.Resource; | |
| 6 | -import org.springframework.validation.annotation.Validated; | |
| 7 | - | |
| 8 | -import java.util.*; | |
| 9 | -import cn.iocoder.yudao.module.member.controller.admin.signin.vo.*; | |
| 10 | -import cn.iocoder.yudao.module.member.dal.dataobject.signin.MemberSignInConfigDO; | |
| 11 | 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 12 | - | |
| 4 | +import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInConfigCreateReqVO; | |
| 5 | +import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInConfigPageReqVO; | |
| 6 | +import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInConfigUpdateReqVO; | |
| 13 | 7 | import cn.iocoder.yudao.module.member.convert.signin.MemberSignInConfigConvert; |
| 8 | +import cn.iocoder.yudao.module.member.dal.dataobject.signin.MemberSignInConfigDO; | |
| 14 | 9 | import cn.iocoder.yudao.module.member.dal.mysql.signin.MemberSignInConfigMapper; |
| 10 | +import org.springframework.stereotype.Service; | |
| 11 | +import org.springframework.validation.annotation.Validated; | |
| 12 | + | |
| 13 | +import javax.annotation.Resource; | |
| 15 | 14 | |
| 16 | 15 | import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; |
| 17 | -import static cn.iocoder.yudao.module.member.enums.ErrorCodeConstants.*; | |
| 16 | +import static cn.iocoder.yudao.module.member.enums.ErrorCodeConstants.SIGN_IN_CONFIG_EXISTS; | |
| 17 | +import static cn.iocoder.yudao.module.member.enums.ErrorCodeConstants.SIGN_IN_CONFIG_NOT_EXISTS; | |
| 18 | 18 | |
| 19 | 19 | /** |
| 20 | 20 | * 积分签到规则 Service 实现类 |
| ... | ... | @@ -28,17 +28,19 @@ public class MemberSignInConfigServiceImpl implements MemberSignInConfigService |
| 28 | 28 | @Resource |
| 29 | 29 | private MemberSignInConfigMapper memberSignInConfigMapper; |
| 30 | 30 | |
| 31 | + // TODO @xiaqing:这种写的逻辑,最好按照 校验 - 更新这样的顺序写;类似这里,37 要放到 34 前面;updateSignInConfig 也是一样的思路 | |
| 31 | 32 | @Override |
| 32 | 33 | public Integer createSignInConfig(MemberSignInConfigCreateReqVO createReqVO) { |
| 33 | 34 | // 插入 |
| 34 | 35 | MemberSignInConfigDO signInConfig = MemberSignInConfigConvert.INSTANCE.convert(createReqVO); |
| 35 | - //判断是否重复插入签到天数 | |
| 36 | + // 判断是否重复插入签到天数 | |
| 36 | 37 | validateSignInConfigExistsDay(signInConfig.getDay()); |
| 37 | 38 | memberSignInConfigMapper.insert(signInConfig); |
| 38 | 39 | // 返回 |
| 39 | 40 | return signInConfig.getId(); |
| 40 | 41 | } |
| 41 | 42 | |
| 43 | + // TODO @xiaqing:这个逻辑的空行要注意;52 到 53 是没必要的空行;而 49 和 50 之间有个空行会好点,可以区分出是 校验 - 更新这样的逻辑间隔 | |
| 42 | 44 | @Override |
| 43 | 45 | public void updateSignInConfig(MemberSignInConfigUpdateReqVO updateReqVO) { |
| 44 | 46 | // 校验存在 |
| ... | ... | @@ -65,6 +67,8 @@ public class MemberSignInConfigServiceImpl implements MemberSignInConfigService |
| 65 | 67 | throw exception(SIGN_IN_CONFIG_NOT_EXISTS); |
| 66 | 68 | } |
| 67 | 69 | } |
| 70 | + | |
| 71 | + // TODO @xiaqing:这个唯一判断,也可以参考下别的模块哈; | |
| 68 | 72 | //根据签到天数判断是否存在一个相同的天数 |
| 69 | 73 | private void validateSignInConfigExistsDay(Integer day) { |
| 70 | 74 | if (memberSignInConfigMapper.selectCount(MemberSignInConfigDO::getDay,day)>0) { |
| ... | ... | @@ -72,32 +76,22 @@ public class MemberSignInConfigServiceImpl implements MemberSignInConfigService |
| 72 | 76 | } |
| 73 | 77 | } |
| 74 | 78 | |
| 75 | - //更新天数时判断是否有重复的天数,需要去除自己 | |
| 79 | + // TODO @xiaqing:参考下别的模块,判断唯一,排除自己怎么写的哈; | |
| 80 | + // 更新天数时判断是否有重复的天数,需要去除自己 | |
| 76 | 81 | private void validateSignInConfigSameDayNotSelf(MemberSignInConfigUpdateReqVO reqVO) { |
| 77 | 82 | if (memberSignInConfigMapper.selectSameDayNotSelf(reqVO)>0) { |
| 78 | 83 | throw exception(SIGN_IN_CONFIG_EXISTS); |
| 79 | 84 | } |
| 80 | 85 | } |
| 81 | 86 | |
| 82 | - | |
| 83 | 87 | @Override |
| 84 | 88 | public MemberSignInConfigDO getSignInConfig(Integer id) { |
| 85 | 89 | return memberSignInConfigMapper.selectById(id); |
| 86 | 90 | } |
| 87 | 91 | |
| 88 | 92 | @Override |
| 89 | - public List<MemberSignInConfigDO> getSignInConfigList(Collection<Integer> ids) { | |
| 90 | - return memberSignInConfigMapper.selectBatchIds(ids); | |
| 91 | - } | |
| 92 | - | |
| 93 | - @Override | |
| 94 | 93 | public PageResult<MemberSignInConfigDO> getSignInConfigPage(MemberSignInConfigPageReqVO pageReqVO) { |
| 95 | 94 | return memberSignInConfigMapper.selectPage(pageReqVO); |
| 96 | 95 | } |
| 97 | 96 | |
| 98 | - @Override | |
| 99 | - public List<MemberSignInConfigDO> getSignInConfigList(MemberSignInConfigExportReqVO exportReqVO) { | |
| 100 | - return memberSignInConfigMapper.selectList(exportReqVO); | |
| 101 | - } | |
| 102 | - | |
| 103 | 97 | } | ... | ... |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/signin/MemberSignInRecordService.java
| 1 | 1 | package cn.iocoder.yudao.module.member.service.signin; |
| 2 | 2 | |
| 3 | -import java.util.*; | |
| 4 | -import javax.validation.*; | |
| 5 | -import cn.iocoder.yudao.module.member.controller.admin.signin.vo.*; | |
| 6 | -import cn.iocoder.yudao.module.member.dal.dataobject.signin.MemberSignInRecordDO; | |
| 7 | 3 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 4 | +import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInRecordPageReqVO; | |
| 5 | +import cn.iocoder.yudao.module.member.dal.dataobject.signin.MemberSignInRecordDO; | |
| 8 | 6 | |
| 9 | 7 | /** |
| 10 | 8 | * 用户签到积分 Service 接口 |
| ... | ... | @@ -13,8 +11,6 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 13 | 11 | */ |
| 14 | 12 | public interface MemberSignInRecordService { |
| 15 | 13 | |
| 16 | - | |
| 17 | - | |
| 18 | 14 | /** |
| 19 | 15 | * 删除用户签到积分 |
| 20 | 16 | * |
| ... | ... | @@ -31,14 +27,6 @@ public interface MemberSignInRecordService { |
| 31 | 27 | MemberSignInRecordDO getSignInRecord(Long id); |
| 32 | 28 | |
| 33 | 29 | /** |
| 34 | - * 获得用户签到积分列表 | |
| 35 | - * | |
| 36 | - * @param ids 编号 | |
| 37 | - * @return 用户签到积分列表 | |
| 38 | - */ | |
| 39 | - List<MemberSignInRecordDO> getSignInRecordList(Collection<Long> ids); | |
| 40 | - | |
| 41 | - /** | |
| 42 | 30 | * 获得用户签到积分分页 |
| 43 | 31 | * |
| 44 | 32 | * @param pageReqVO 分页查询 |
| ... | ... | @@ -46,12 +34,4 @@ public interface MemberSignInRecordService { |
| 46 | 34 | */ |
| 47 | 35 | PageResult<MemberSignInRecordDO> getSignInRecordPage(MemberSignInRecordPageReqVO pageReqVO); |
| 48 | 36 | |
| 49 | - /** | |
| 50 | - * 获得用户签到积分列表, 用于 Excel 导出 | |
| 51 | - * | |
| 52 | - * @param exportReqVO 查询条件 | |
| 53 | - * @return 用户签到积分列表 | |
| 54 | - */ | |
| 55 | - List<MemberSignInRecordDO> getSignInRecordList(MemberSignInRecordExportReqVO exportReqVO); | |
| 56 | - | |
| 57 | 37 | } | ... | ... |
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/signin/MemberSignInRecordServiceImpl.java
| 1 | 1 | package cn.iocoder.yudao.module.member.service.signin; |
| 2 | 2 | |
| 3 | -import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInRecordCreateReqVO; | |
| 4 | -import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInRecordExportReqVO; | |
| 3 | +import cn.iocoder.yudao.framework.common.pojo.PageResult; | |
| 5 | 4 | import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInRecordPageReqVO; |
| 6 | -import cn.iocoder.yudao.module.member.controller.admin.signin.vo.MemberSignInRecordUpdateReqVO; | |
| 7 | 5 | import cn.iocoder.yudao.module.member.dal.dataobject.signin.MemberSignInRecordDO; |
| 6 | +import cn.iocoder.yudao.module.member.dal.mysql.signin.MemberSignInRecordMapper; | |
| 8 | 7 | import org.springframework.stereotype.Service; |
| 9 | -import javax.annotation.Resource; | |
| 10 | 8 | import org.springframework.validation.annotation.Validated; |
| 11 | 9 | |
| 12 | -import java.util.*; | |
| 13 | -import cn.iocoder.yudao.framework.common.pojo.PageResult; | |
| 14 | - | |
| 15 | -import cn.iocoder.yudao.module.member.convert.signin.MemberSignInRecordConvert; | |
| 16 | -import cn.iocoder.yudao.module.member.dal.mysql.signin.MemberSignInRecordMapper; | |
| 10 | +import javax.annotation.Resource; | |
| 17 | 11 | |
| 18 | 12 | import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; |
| 19 | -import static cn.iocoder.yudao.module.member.enums.ErrorCodeConstants.*; | |
| 13 | +import static cn.iocoder.yudao.module.member.enums.ErrorCodeConstants.SIGN_IN_RECORD_NOT_EXISTS; | |
| 20 | 14 | |
| 21 | 15 | /** |
| 22 | 16 | * 用户签到积分 Service 实现类 |
| ... | ... | @@ -50,18 +44,8 @@ public class MemberSignInRecordServiceImpl implements MemberSignInRecordService |
| 50 | 44 | } |
| 51 | 45 | |
| 52 | 46 | @Override |
| 53 | - public List<MemberSignInRecordDO> getSignInRecordList(Collection<Long> ids) { | |
| 54 | - return memberSignInRecordMapper.selectBatchIds(ids); | |
| 55 | - } | |
| 56 | - | |
| 57 | - @Override | |
| 58 | 47 | public PageResult<MemberSignInRecordDO> getSignInRecordPage(MemberSignInRecordPageReqVO pageReqVO) { |
| 59 | 48 | return memberSignInRecordMapper.selectPage(pageReqVO); |
| 60 | 49 | } |
| 61 | 50 | |
| 62 | - @Override | |
| 63 | - public List<MemberSignInRecordDO> getSignInRecordList(MemberSignInRecordExportReqVO exportReqVO) { | |
| 64 | - return memberSignInRecordMapper.selectList(exportReqVO); | |
| 65 | - } | |
| 66 | - | |
| 67 | 51 | } | ... | ... |
yudao-module-pay/yudao-module-pay-biz/src/main/java/cn/iocoder/yudao/module/pay/dal/dataobject/member/MemberWalletDO.java
| ... | ... | @@ -6,8 +6,9 @@ import com.baomidou.mybatisplus.annotation.TableId; |
| 6 | 6 | import com.baomidou.mybatisplus.annotation.TableName; |
| 7 | 7 | import lombok.Data; |
| 8 | 8 | |
| 9 | +// TODO @jason:修改 MemberWalletDO 为 PayWalletDO | |
| 9 | 10 | /** |
| 10 | - * 支付-会员钱包 DO | |
| 11 | + * 支付 - 会员钱包 DO | |
| 11 | 12 | * |
| 12 | 13 | * @author jason |
| 13 | 14 | */ |
| ... | ... | @@ -22,10 +23,12 @@ public class MemberWalletDO extends BaseDO { |
| 22 | 23 | @TableId |
| 23 | 24 | private Long id; |
| 24 | 25 | |
| 26 | + // TODO @jaosn:增加 userType 字段; | |
| 25 | 27 | /** |
| 26 | 28 | * 用户 id |
| 27 | 29 | * |
| 28 | 30 | * 关联 MemberUserDO 的 id 编号 |
| 31 | + * 关联 AdminUserDO 的 id 编号 | |
| 29 | 32 | */ |
| 30 | 33 | private Long userId; |
| 31 | 34 | |
| ... | ... | @@ -43,4 +46,4 @@ public class MemberWalletDO extends BaseDO { |
| 43 | 46 | * 累计充值, 单位分 |
| 44 | 47 | */ |
| 45 | 48 | private Integer totalTopUp; |
| 46 | -} | |
| 47 | 49 | \ No newline at end of file |
| 50 | +} | ... | ... |
yudao-server/src/main/resources/application-local.yaml
| ... | ... | @@ -44,31 +44,31 @@ spring: |
| 44 | 44 | primary: master |
| 45 | 45 | datasource: |
| 46 | 46 | master: |
| 47 | - name: mall | |
| 48 | - url: jdbc:mysql://10.211.55.5:3308/${spring.datasource.dynamic.datasource.master.name}?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 连接的示例 | |
| 47 | + name: ruoyi-vue-pro | |
| 48 | + url: jdbc:mysql://127.0.0.1:3306/${spring.datasource.dynamic.datasource.master.name}?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 连接的示例 | |
| 49 | 49 | # url: jdbc:mysql://127.0.0.1:3306/${spring.datasource.dynamic.datasource.master.name}?useSSL=false&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT # MySQL Connector/J 5.X 连接的示例 |
| 50 | 50 | # url: jdbc:postgresql://127.0.0.1:5432/${spring.datasource.dynamic.datasource.slave.name} # PostgreSQL 连接的示例 |
| 51 | 51 | # url: jdbc:oracle:thin:@127.0.0.1:1521:xe # Oracle 连接的示例 |
| 52 | 52 | # url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=${spring.datasource.dynamic.datasource.master.name} # SQLServer 连接的示例 |
| 53 | 53 | username: root |
| 54 | - password: 1qaz!QAZ | |
| 54 | + password: 123456 | |
| 55 | 55 | # username: sa |
| 56 | 56 | # password: JSm:g(*%lU4ZAkz06cd52KqT3)i1?H7W |
| 57 | 57 | slave: # 模拟从库,可根据自己需要修改 |
| 58 | - name: mall | |
| 59 | - url: jdbc:mysql://10.211.55.5:3308/${spring.datasource.dynamic.datasource.slave.name}?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 连接的示例 | |
| 58 | + name: ruoyi-vue-pro | |
| 59 | + url: jdbc:mysql://127.0.0.1:3306/${spring.datasource.dynamic.datasource.slave.name}?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 连接的示例 | |
| 60 | 60 | # url: jdbc:mysql://127.0.0.1:3306/${spring.datasource.dynamic.datasource.slave.name}?useSSL=false&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT # MySQL Connector/J 5.X 连接的示例 |
| 61 | 61 | # url: jdbc:postgresql://127.0.0.1:5432/${spring.datasource.dynamic.datasource.slave.name} # PostgreSQL 连接的示例 |
| 62 | 62 | # url: jdbc:oracle:thin:@127.0.0.1:1521:xe # Oracle 连接的示例 |
| 63 | 63 | # url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=${spring.datasource.dynamic.datasource.slave.name} # SQLServer 连接的示例 |
| 64 | 64 | username: root |
| 65 | - password: 1qaz!QAZ | |
| 65 | + password: 123456 | |
| 66 | 66 | # username: sa |
| 67 | 67 | # password: JSm:g(*%lU4ZAkz06cd52KqT3)i1?H7W |
| 68 | 68 | |
| 69 | 69 | # Redis 配置。Redisson 默认的配置足够使用,一般不需要进行调优 |
| 70 | 70 | redis: |
| 71 | - host: 10.211.55.5 # 地址 | |
| 71 | + host: 127.0.0.1 # 地址 | |
| 72 | 72 | port: 6379 # 端口 |
| 73 | 73 | database: 0 # 数据库索引 |
| 74 | 74 | # password: dev # 密码,建议生产环境开启 |
| ... | ... | @@ -159,7 +159,6 @@ logging: |
| 159 | 159 | cn.iocoder.yudao.module.member.dal.mysql: debug |
| 160 | 160 | cn.iocoder.yudao.module.trade.dal.mysql: debug |
| 161 | 161 | cn.iocoder.yudao.module.promotion.dal.mysql: debug |
| 162 | - cn.iocoder.yudao.module.point.dal.mysql: debug | |
| 163 | 162 | |
| 164 | 163 | debug: false |
| 165 | 164 | ... | ... |