|
|
|
|
package com.youlai.boot.mini.controller;
|
|
|
|
|
|
|
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
|
|
import com.youlai.boot.common.result.PageResult;
|
|
|
|
|
import com.youlai.boot.common.result.Result;
|
|
|
|
|
import com.youlai.boot.framework.security.util.SecurityUtils;
|
|
|
|
|
import com.youlai.boot.common.result.PageResult;
|
|
|
|
|
import com.youlai.boot.mini.model.query.MyPointRecordQuery;
|
|
|
|
|
import com.youlai.boot.mini.model.query.PointAccountQuery;
|
|
|
|
|
import com.youlai.boot.mini.model.vo.MyPointRecordVO;
|
|
|
|
|
import com.youlai.boot.mini.model.vo.MyPointVO;
|
|
|
|
|
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.web.bind.annotation.*;
|
|
|
|
|
|
|
|
|
|
@Tag(name = "用户端积分服务相关接口")
|
|
|
|
|
@RestController
|
|
|
|
|
@RequestMapping("/api/v1/mini/user/point")
|
|
|
|
|
@RequiredArgsConstructor
|
|
|
|
|
public class PointController {
|
|
|
|
|
|
|
|
|
|
private final MiniPointAccountService pointAccountService;
|
|
|
|
|
private final MiniPointRuleService pointRuleService;
|
|
|
|
|
private final MiniPointRecordService recordService;
|
|
|
|
|
|
|
|
|
|
@Operation(summary = "查询当前用户的积分账户信息")
|
|
|
|
|
@GetMapping("/my")
|
|
|
|
|
public Result<MyPointVO> getMyPoint() {
|
|
|
|
|
Long userId = SecurityUtils.getUserId();
|
|
|
|
|
MyPointVO myPoint = pointAccountService.getUserPoint(userId);
|
|
|
|
|
return Result.success(myPoint);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Operation(summary = "分页查询当前用户的积分流水列表")
|
|
|
|
|
@GetMapping("/records")
|
|
|
|
|
public PageResult<MyPointRecordVO> getMyPointRecords(@ParameterObject MyPointRecordQuery query) {
|
|
|
|
|
Long userId = SecurityUtils.getUserId();
|
|
|
|
|
return PageResult.success(recordService.pageMyPointRecord(userId, query));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//事件监听 实现 用户注册赠送积分
|
|
|
|
|
|
|
|
|
|
//每日签到,加签到表,
|
|
|
|
|
|
|
|
|
|
//分享奖励,分享链接带上分享人ID,其他用户点击链接进入小程序后才给分享人发奖励
|
|
|
|
|
|
|
|
|
|
//AI生成图片扣费
|
|
|
|
|
|
|
|
|
|
//AI生成视频扣费
|
|
|
|
|
}
|