Browse Source

增加管理端积分接口

master
glx 1 month ago
parent
commit
f18979598c
  1. 4
      src/main/java/com/youlai/boot/common/enums/LogModuleEnum.java
  2. 93
      src/main/java/com/youlai/boot/mini/controller/PointAdminController.java
  3. 36
      src/main/java/com/youlai/boot/mini/controller/PointController.java
  4. 9
      src/main/java/com/youlai/boot/mini/converter/MiniPointAccountConverter.java
  5. 16
      src/main/java/com/youlai/boot/mini/converter/MiniPointRuleConverter.java
  6. 45
      src/main/java/com/youlai/boot/mini/model/enums/AdjustUserPointEnum.java
  7. 36
      src/main/java/com/youlai/boot/mini/model/form/AddPointRuleForm.java
  8. 30
      src/main/java/com/youlai/boot/mini/model/form/AdjustUserPointForm.java
  9. 4
      src/main/java/com/youlai/boot/mini/model/query/PointAccountQuery.java
  10. 12
      src/main/java/com/youlai/boot/mini/model/query/PointRecordQuery.java
  11. 24
      src/main/java/com/youlai/boot/mini/model/query/RulePageQuery.java
  12. 2
      src/main/java/com/youlai/boot/mini/model/vo/PointAccountVO.java
  13. 13
      src/main/java/com/youlai/boot/mini/model/vo/PointRecordVO.java
  14. 65
      src/main/java/com/youlai/boot/mini/model/vo/RuleListVO.java
  15. 11
      src/main/java/com/youlai/boot/mini/service/MiniPointAccountService.java
  16. 4
      src/main/java/com/youlai/boot/mini/service/MiniPointRecordService.java
  17. 9
      src/main/java/com/youlai/boot/mini/service/MiniPointRuleService.java
  18. 12
      src/main/java/com/youlai/boot/mini/service/PointService.java
  19. 10
      src/main/java/com/youlai/boot/mini/service/impl/MiniPointAccountServiceImpl.java
  20. 15
      src/main/java/com/youlai/boot/mini/service/impl/MiniPointRecordServiceImpl.java
  21. 43
      src/main/java/com/youlai/boot/mini/service/impl/MiniPointRuleServiceImpl.java

4
src/main/java/com/youlai/boot/common/enums/LogModuleEnum.java

@ -29,7 +29,9 @@ public enum LogModuleEnum implements IBaseEnum<Integer> {
CODEGEN(11, "代码生成"), CODEGEN(11, "代码生成"),
STRAY_ANIMAL_INFO(12, "流浪动物信息"), STRAY_ANIMAL_INFO(12, "流浪动物信息"),
OTHER(99, "其他"), OTHER(99, "其他"),
Point(100, "积分管理"); POINT_ACCOUNT(100, "积分账户"),
POINT_RECORD(101, "积分流水"),
POINT_RULE(102, "积分规则");
@EnumValue @EnumValue
private final Integer value; private final Integer value;

93
src/main/java/com/youlai/boot/mini/controller/PointAdminController.java

@ -0,0 +1,93 @@
package com.youlai.boot.mini.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.youlai.boot.common.annotation.Log;
import com.youlai.boot.common.enums.ActionTypeEnum;
import com.youlai.boot.common.enums.LogModuleEnum;
import com.youlai.boot.common.result.PageResult;
import com.youlai.boot.common.result.Result;
import com.youlai.boot.mini.model.form.AddPointRuleForm;
import com.youlai.boot.mini.model.form.AdjustUserPointForm;
import com.youlai.boot.mini.model.query.PointAccountQuery;
import com.youlai.boot.mini.model.query.PointRecordQuery;
import com.youlai.boot.mini.model.query.RulePageQuery;
import com.youlai.boot.mini.model.vo.PointAccountVO;
import com.youlai.boot.mini.model.vo.PointRecordVO;
import com.youlai.boot.mini.model.vo.RuleListVO;
import com.youlai.boot.mini.service.MiniPointAccountService;
import com.youlai.boot.mini.service.MiniPointRecordService;
import com.youlai.boot.mini.service.MiniPointRuleService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import org.springdoc.core.annotations.ParameterObject;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
@Tag(name = "管理端积分服务相关接口")
@RestController
@RequestMapping("/api/v1/mini/admin/point")
@RequiredArgsConstructor
public class PointAdminController {
private final MiniPointAccountService pointAccountService;
private final MiniPointRuleService pointRuleService;
private final MiniPointRecordService pointRecordService;
@Operation(summary = "分页查询用户积分账户")
@GetMapping("/accounts")
@PreAuthorize("@ss.hasPerm('mini:point:account:list')")
public PageResult<PointAccountVO> pageAccount(PointAccountQuery query) {
return PageResult.success(pointAccountService.pageAccount(query));
}
@Operation(summary = "查询积分规则列表")
@GetMapping
@PreAuthorize("@ss.hasPerm('mini:point:rule:list')")
@Log(module = LogModuleEnum.POINT_RULE, value = ActionTypeEnum.LIST)
public PageResult<RuleListVO> page(@ParameterObject RulePageQuery queryParams) {
IPage<RuleListVO> result = pointRuleService.pageRule(queryParams);
return PageResult.success(result);
}
@Operation(summary = "新增积分规则")
@PostMapping("/add/rules")
@PreAuthorize("@ss.hasPerm('mini:point:rule:add')")
public Result<Void> addRule(@RequestBody AddPointRuleForm form) {
pointRuleService.addRule(form);
return Result.success();
}
@Operation(summary = "删除积分规则")
@PostMapping("/delete/rules")
@PreAuthorize("@ss.hasPerm('mini:point:rule:delete')")
public Result<Void> deleteRule(@RequestParam Long id) {
pointRuleService.deleteRule(id);
return Result.success();
}
@Operation(summary = "启用/禁用积分规则")
@PatchMapping("/rules/{id}/status")
@PreAuthorize("@ss.hasPerm('mini:point:rule:edit')")
public Result<Void> changeRuleStatus(@PathVariable Long id, @RequestParam Integer status) {
pointRuleService.changeStatus(id, status);
return Result.success();
}
@Operation(summary = "手动调整用户积分")
@PutMapping("/adjustPoint")
@PreAuthorize("@ss.hasPerm('mini:point:account:edit')")
public Result<Void> adjustPoint(@RequestBody AdjustUserPointForm adjustUserPointForm) {
pointRecordService.adjustPoint(adjustUserPointForm);
return Result.success();
}
@Operation(summary = "分页查询所有积分记录")
@GetMapping("/records")
@PreAuthorize("@ss.hasPerm('mini:point:record:list')")
public PageResult<PointRecordVO> pageRecord(PointRecordQuery query) {
return PageResult.success(pointRecordService.pageAllRecord(query));
}
}

36
src/main/java/com/youlai/boot/mini/controller/PointController.java

@ -5,34 +5,34 @@ import com.youlai.boot.common.annotation.Log;
import com.youlai.boot.common.enums.ActionTypeEnum; import com.youlai.boot.common.enums.ActionTypeEnum;
import com.youlai.boot.common.enums.LogModuleEnum; import com.youlai.boot.common.enums.LogModuleEnum;
import com.youlai.boot.common.result.PageResult; import com.youlai.boot.common.result.PageResult;
import com.youlai.boot.mini.model.form.UserPointQuery; import com.youlai.boot.mini.model.query.PointAccountQuery;
import com.youlai.boot.mini.model.vo.UserPointVO; import com.youlai.boot.mini.model.vo.PointAccountVO;
import com.youlai.boot.mini.service.PointService; import com.youlai.boot.mini.service.MiniPointAccountService;
import com.youlai.boot.mini.service.MiniPointRecordService;
import com.youlai.boot.mini.service.MiniPointRuleService;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springdoc.core.annotations.ParameterObject; import org.springdoc.core.annotations.ParameterObject;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
/**
* 用户积分信息
*/
@Tag(name = "用户端积分服务相关接口") @Tag(name = "用户端积分服务相关接口")
@RestController @RestController
@RequestMapping("/api/v1/mini/point") @RequestMapping("/api/v1/mini/user/point")
@RequiredArgsConstructor @RequiredArgsConstructor
public class PointController { public class PointController {
private final PointService pointService; private final MiniPointAccountService pointAccountService;
private final MiniPointRuleService pointRuleService;
private final MiniPointRecordService recordService;
@Operation(summary = "查询用户积分") @Operation(summary = "查询用户积分")
@GetMapping @GetMapping(value = "/getListPage")
// @PreAuthorize("@ss.hasPerm('sys:config:list')") @PreAuthorize("@ss.hasPerm('mini:point:account:list')")
@Log(module = LogModuleEnum.Point, value = ActionTypeEnum.LIST) @Log(module = LogModuleEnum.POINT_ACCOUNT, value = ActionTypeEnum.LIST)
public PageResult<UserPointVO> page(@ParameterObject UserPointQuery queryParams) { public PageResult<PointAccountVO> page(@ParameterObject PointAccountQuery queryParams) {
IPage<UserPointVO> result = pointService.page(queryParams); IPage<PointAccountVO> result = pointAccountService.page(queryParams);
return PageResult.success(result); return PageResult.success(result);
} }
@ -46,12 +46,4 @@ public class PointController {
//AI生成图片扣费 //AI生成图片扣费
//AI生成视频扣费 //AI生成视频扣费
//后台管理
//查询规则列表
//查询规则详情
//新增规则
//修改规则
//启用/禁用规则
//删除规则
} }

9
src/main/java/com/youlai/boot/mini/converter/MiniPointAccountConverter.java

@ -2,13 +2,16 @@ package com.youlai.boot.mini.converter;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.youlai.boot.mini.model.entity.MiniPointAccount; import com.youlai.boot.mini.model.entity.MiniPointAccount;
import com.youlai.boot.mini.model.vo.UserPointVO; import com.youlai.boot.mini.model.entity.MiniPointRule;
import com.youlai.boot.mini.model.vo.RuleListVO;
import com.youlai.boot.mini.model.vo.PointAccountVO;
import org.mapstruct.Mapper; import org.mapstruct.Mapper;
@Mapper(componentModel = "spring") @Mapper(componentModel = "spring")
public interface MiniPointAccountConverter { public interface MiniPointAccountConverter {
Page<UserPointVO> toPageVo(Page<MiniPointAccount> pageList); Page<PointAccountVO> toPageVo(Page<MiniPointAccount> pageList);
PointAccountVO toVo(MiniPointAccount entity);
UserPointVO toVo(MiniPointAccount entity);
} }

16
src/main/java/com/youlai/boot/mini/converter/MiniPointRuleConverter.java

@ -0,0 +1,16 @@
package com.youlai.boot.mini.converter;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.youlai.boot.mini.model.entity.MiniPointRule;
import com.youlai.boot.mini.model.vo.RuleListVO;
import org.mapstruct.Mapper;
@Mapper(componentModel = "spring")
public interface MiniPointRuleConverter {
IPage<RuleListVO> toRulePageVo(Page<MiniPointRule> pageList);
RuleListVO toRuleVo(MiniPointRule entity);
}

45
src/main/java/com/youlai/boot/mini/model/enums/AdjustUserPointEnum.java

@ -0,0 +1,45 @@
package com.youlai.boot.mini.model.enums;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;
import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "操作用户积分类型")
public enum AdjustUserPointEnum {
SYSTEM_INCREASE("system_increase", "增加"),
SYSTEM_REDUCE("system_reduce", "减少");
private final String value;
private final String desc;
AdjustUserPointEnum(String value, String desc) {
this.value = value;
this.desc = desc;
}
@JsonValue
public String getValue() {
return value;
}
public String getDesc() {
return desc;
}
@JsonCreator
public static AdjustUserPointEnum from(String value) {
if (value == null) return null;
for (AdjustUserPointEnum e : values()) {
if (e.value.equalsIgnoreCase(value)) {
return e;
}
}
return null;
}
public static boolean contains(String value) {
return from(value) != null;
}
}

36
src/main/java/com/youlai/boot/mini/model/form/AddPointRuleForm.java

@ -0,0 +1,36 @@
package com.youlai.boot.mini.model.form;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotEmpty;
import lombok.Getter;
import lombok.Setter;
@Schema(description = "增加积分规则表单对象")
@Getter
@Setter
public class AddPointRuleForm {
@NotBlank(message = "规则编码不能为空")
@Schema(description = "规则编码", requiredMode = Schema.RequiredMode.REQUIRED)
private String ruleCode;
@NotBlank(message = "规则名称不能为空")
@Schema(description = "规则名称", requiredMode = Schema.RequiredMode.REQUIRED)
private String ruleName;
@NotEmpty(message = "积分不能为空")
@Schema(description = "积分", example = "100", requiredMode = Schema.RequiredMode.REQUIRED)
private Integer point;
@Schema(description = "限制周期:DAY/WEEK/MONTH/YEAR/ALL(NULL表示无限制)", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
private String limitPeriod;
@NotEmpty(message = "周期内限制次数不能为空")
@Schema(description = "周期内限制次数", requiredMode = Schema.RequiredMode.REQUIRED)
private Integer limitCount;
@NotBlank(message = "规则描述不能为空")
@Schema(description = "规则描述", requiredMode = Schema.RequiredMode.REQUIRED)
private String description;
}

30
src/main/java/com/youlai/boot/mini/model/form/AdjustUserPointForm.java

@ -0,0 +1,30 @@
package com.youlai.boot.mini.model.form;
import com.youlai.boot.common.annotation.EnumValid;
import com.youlai.boot.mini.model.enums.AdjustUserPointEnum;
import com.youlai.boot.mini.model.enums.AnimalStatusEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotEmpty;
import lombok.Getter;
import lombok.Setter;
@Schema(description = "调整用户积分表单对象")
@Getter
@Setter
public class AdjustUserPointForm {
@NotBlank(message = "用户id不能为空")
@Schema(description = "用户uuid", example = "abc123", requiredMode = Schema.RequiredMode.REQUIRED)
private String uuid;
@NotEmpty(message = "业务类型不能为空")
@EnumValid(enumClass = AdjustUserPointEnum.class, message = "业务类型不合法")
@Schema(description = "业务类型 system_increase system_reduce", requiredMode = Schema.RequiredMode.REQUIRED)
private String bizType;
@NotEmpty(message = "积分不能为空")
@Schema(description = "变化值(+增加,-扣减)", requiredMode = Schema.RequiredMode.REQUIRED)
private Integer changeAmount;
}

4
src/main/java/com/youlai/boot/mini/model/form/UserPointQuery.java → src/main/java/com/youlai/boot/mini/model/query/PointAccountQuery.java

@ -1,4 +1,4 @@
package com.youlai.boot.mini.model.form; package com.youlai.boot.mini.model.query;
import com.youlai.boot.common.base.BaseQuery; import com.youlai.boot.common.base.BaseQuery;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
@ -8,7 +8,7 @@ import lombok.Setter;
@Getter @Getter
@Setter @Setter
@Schema(description = "用户积分查询") @Schema(description = "用户积分查询")
public class UserPointQuery extends BaseQuery { public class PointAccountQuery extends BaseQuery {
// @Schema(description="用户id") // @Schema(description="用户id")
// private String uuid; // private String uuid;

12
src/main/java/com/youlai/boot/mini/model/query/PointRecordQuery.java

@ -0,0 +1,12 @@
package com.youlai.boot.mini.model.query;
import com.youlai.boot.common.base.BaseQuery;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
@Schema(description = "用户积分流水查询")
public class PointRecordQuery extends BaseQuery {
}

24
src/main/java/com/youlai/boot/mini/model/query/RulePageQuery.java

@ -0,0 +1,24 @@
package com.youlai.boot.mini.model.query;
import com.youlai.boot.common.base.BaseQuery;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
@Schema(description = "积分规则查询")
public class RulePageQuery extends BaseQuery {
@Schema(description = "规则编码")
private String ruleCode;
@Schema(description = "规则名称")
private String ruleName;
@Schema(description = "限制周期")
private String limitPeriod;
@Schema(description = "状态 0启用 1禁用")
private Integer status;
}

2
src/main/java/com/youlai/boot/mini/model/vo/UserPointVO.java → src/main/java/com/youlai/boot/mini/model/vo/PointAccountVO.java

@ -9,7 +9,7 @@ import lombok.EqualsAndHashCode;
@Builder @Builder
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@Schema(description = "用户积分信息VO") @Schema(description = "用户积分信息VO")
public class UserPointVO { public class PointAccountVO {
@Schema(description = "uuid") @Schema(description = "uuid")
private String uuid; private String uuid;

13
src/main/java/com/youlai/boot/mini/model/vo/PointRecordVO.java

@ -0,0 +1,13 @@
package com.youlai.boot.mini.model.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
@Data
@Builder
@EqualsAndHashCode(callSuper = false)
@Schema(description = "积分流水列表VO")
public class PointRecordVO {
}

65
src/main/java/com/youlai/boot/mini/model/vo/RuleListVO.java

@ -0,0 +1,65 @@
package com.youlai.boot.mini.model.vo;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
@Data
@Builder
@EqualsAndHashCode(callSuper = false)
@Schema(description = "积分规则列表VO")
public class RuleListVO {
@Schema(description = "积分规则表自增id")
private Long id;
@Schema(description = "积分规则表uuid")
private String uuid;
@Schema(description = "规则编码")
private String ruleCode;
@Schema(description = "规则名称")
private String ruleName;
@Schema(description = "积分值")
private Integer points;
@Schema(description = "限制周期")
private String limitPeriod;
@Schema(description = "周期内容限制次数")
private Integer limitCount;
@Schema(description = "状态 0启用 1禁用")
private Integer status;
@Schema(description = "规则描述")
private String description;
@Schema(description = "创建时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date createTime;
@Schema(description = "创建时间毫秒级时间戳")
private Long createTimestamp;
@Schema(description = "创建人ID")
private Long createBy;
@Schema(description = "更新时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date updateTime;
@Schema(description = "更新时间毫秒级时间戳")
private Long updateTimestamp;
@Schema(description = "修改人ID")
private Long updateBy;
}

11
src/main/java/com/youlai/boot/mini/service/MiniPointAccountService.java

@ -0,0 +1,11 @@
package com.youlai.boot.mini.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.youlai.boot.mini.model.entity.MiniPointAccount;
import com.youlai.boot.mini.model.query.PointAccountQuery;
import com.youlai.boot.mini.model.vo.PointAccountVO;
public interface MiniPointAccountService extends IService<MiniPointAccount> {
IPage<PointAccountVO> page(PointAccountQuery queryParams);
}

4
src/main/java/com/youlai/boot/mini/service/MiniPointRecordService.java

@ -0,0 +1,4 @@
package com.youlai.boot.mini.service;
public interface MiniPointRecordService {
}

9
src/main/java/com/youlai/boot/mini/service/MiniPointRuleService.java

@ -0,0 +1,9 @@
package com.youlai.boot.mini.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.youlai.boot.mini.model.query.RulePageQuery;
import com.youlai.boot.mini.model.vo.RuleListVO;
public interface MiniPointRuleService {
IPage<RuleListVO> pageRule(RulePageQuery queryParams);
}

12
src/main/java/com/youlai/boot/mini/service/PointService.java

@ -1,12 +0,0 @@
package com.youlai.boot.mini.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.youlai.boot.mini.model.entity.MiniPointAccount;
import com.youlai.boot.mini.model.form.UserPointQuery;
import com.youlai.boot.mini.model.vo.UserPointVO;
import com.youlai.boot.system.model.entity.Config;
public interface PointService extends IService<MiniPointAccount> {
IPage<UserPointVO> page(UserPointQuery queryParams);
}

10
src/main/java/com/youlai/boot/mini/service/impl/PointServiceImpl.java → src/main/java/com/youlai/boot/mini/service/impl/MiniPointAccountServiceImpl.java

@ -8,9 +8,9 @@ import com.youlai.boot.framework.security.util.SecurityUtils;
import com.youlai.boot.mini.converter.MiniPointAccountConverter; import com.youlai.boot.mini.converter.MiniPointAccountConverter;
import com.youlai.boot.mini.mapper.*; import com.youlai.boot.mini.mapper.*;
import com.youlai.boot.mini.model.entity.MiniPointAccount; import com.youlai.boot.mini.model.entity.MiniPointAccount;
import com.youlai.boot.mini.model.form.UserPointQuery; import com.youlai.boot.mini.model.query.PointAccountQuery;
import com.youlai.boot.mini.model.vo.UserPointVO; import com.youlai.boot.mini.model.vo.PointAccountVO;
import com.youlai.boot.mini.service.PointService; import com.youlai.boot.mini.service.MiniPointAccountService;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -18,14 +18,14 @@ import org.springframework.stereotype.Service;
@Service @Service
@RequiredArgsConstructor @RequiredArgsConstructor
@Slf4j @Slf4j
public class PointServiceImpl extends ServiceImpl<MiniPointAccountMapper, MiniPointAccount> implements PointService { public class MiniPointAccountServiceImpl extends ServiceImpl<MiniPointAccountMapper, MiniPointAccount> implements MiniPointAccountService {
private final MiniPointAccountMapper miniPointAccountMapper; private final MiniPointAccountMapper miniPointAccountMapper;
private final MiniPointRecordMapper miniPointRecordMapper; private final MiniPointRecordMapper miniPointRecordMapper;
private final MiniPointAccountConverter miniPointAccountConverter; private final MiniPointAccountConverter miniPointAccountConverter;
@Override @Override
public IPage<UserPointVO> page(UserPointQuery queryParams) { public IPage<PointAccountVO> page(PointAccountQuery queryParams) {
Long userId = SecurityUtils.getUserId(); Long userId = SecurityUtils.getUserId();
Page<MiniPointAccount> page = new Page<>(queryParams.getPageNum(), queryParams.getPageSize()); Page<MiniPointAccount> page = new Page<>(queryParams.getPageNum(), queryParams.getPageSize());
LambdaQueryWrapper<MiniPointAccount> query = new LambdaQueryWrapper<MiniPointAccount>(); LambdaQueryWrapper<MiniPointAccount> query = new LambdaQueryWrapper<MiniPointAccount>();

15
src/main/java/com/youlai/boot/mini/service/impl/MiniPointRecordServiceImpl.java

@ -0,0 +1,15 @@
package com.youlai.boot.mini.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.youlai.boot.mini.mapper.MiniPointRecordMapper;
import com.youlai.boot.mini.model.entity.MiniPointRecord;
import com.youlai.boot.mini.service.MiniPointRecordService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@Service
@RequiredArgsConstructor
@Slf4j
public class MiniPointRecordServiceImpl extends ServiceImpl<MiniPointRecordMapper, MiniPointRecord> implements MiniPointRecordService {
}

43
src/main/java/com/youlai/boot/mini/service/impl/MiniPointRuleServiceImpl.java

@ -0,0 +1,43 @@
package com.youlai.boot.mini.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.youlai.boot.mini.converter.MiniPointAccountConverter;
import com.youlai.boot.mini.converter.MiniPointRuleConverter;
import com.youlai.boot.mini.mapper.MiniPointAccountMapper;
import com.youlai.boot.mini.mapper.MiniPointRecordMapper;
import com.youlai.boot.mini.mapper.MiniPointRuleMapper;
import com.youlai.boot.mini.model.entity.MiniPointAccount;
import com.youlai.boot.mini.model.entity.MiniPointRule;
import com.youlai.boot.mini.model.query.RulePageQuery;
import com.youlai.boot.mini.model.vo.RuleListVO;
import com.youlai.boot.mini.service.MiniPointRuleService;
import jodd.util.StringUtil;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@Service
@RequiredArgsConstructor
@Slf4j
public class MiniPointRuleServiceImpl extends ServiceImpl<MiniPointRuleMapper, MiniPointRule> implements MiniPointRuleService {
private final MiniPointAccountMapper miniPointAccountMapper;
private final MiniPointRecordMapper miniPointRecordMapper;
private final MiniPointRuleMapper miniPointRuleMapper;
private final MiniPointRuleConverter miniPointRuleConverter;
@Override
public IPage<RuleListVO> pageRule(RulePageQuery queryParams) {
Page<MiniPointRule> page = new Page<>(queryParams.getPageNum(), queryParams.getPageSize());
LambdaQueryWrapper<MiniPointRule> query = new LambdaQueryWrapper<MiniPointRule>();
query.eq(StringUtil.isNotBlank(queryParams.getRuleCode()),MiniPointRule::getRuleCode, queryParams.getRuleCode());
query.like(StringUtil.isNotBlank(queryParams.getRuleName()),MiniPointRule::getRuleCode, queryParams.getRuleCode());
Page<MiniPointRule> pageList = this.page(page, query);
return miniPointRuleConverter.toRulePageVo(pageList);
}
}
Loading…
Cancel
Save