package com.doumee.api.web.mall; import com.doumee.api.web.ApiController; import com.doumee.config.annotation.LoginRequired; import com.doumee.config.annotation.LoginShopRequired; import com.doumee.core.annotation.trace.Trace; import com.doumee.core.model.ApiResponse; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; import com.doumee.dao.business.model.Integral; import com.doumee.dao.web.dto.IntegralRecordDTO; import com.doumee.dao.web.response.IntegralDataResponse; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.web.bind.annotation.*; /** * Created by IntelliJ IDEA. * * @Author : Rk * @create 2026/1/14 16:53 */ @Api(tags = "积分信息业务") @Trace(exclude = true) @RestController @RequestMapping("/web/integral") @Slf4j public class IntegralApi extends ApiController { @LoginRequired @ApiOperation("获取用户的积分记录") @PostMapping("/findUserIntegralRecordPage") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), }) public ApiResponse> findUserIntegralRecordPage (@RequestBody PageWrap pageWrap) { pageWrap.getModel().setMemberId(getMemberId()); pageWrap.getModel().setUserType(Constants.ZERO); return ApiResponse.success(integralService.findIntegralRecordPage(pageWrap)); } @LoginShopRequired @ApiOperation("获取经销商的积分记录") @PostMapping("/findIntegralRecordPage") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), }) public ApiResponse> findIntegralRecordPage (@RequestBody PageWrap pageWrap) { pageWrap.getModel().setMemberId(getShopId()); return ApiResponse.success(integralService.findIntegralRecordPage(pageWrap)); } @LoginRequired @ApiOperation("用户积分情况") @GetMapping("/getUserIntegralData") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), }) public ApiResponse getUserIntegralData () { IntegralRecordDTO dto = new IntegralRecordDTO(); dto.setMemberId(getMemberId()); dto.setUserType(Constants.ZERO); return ApiResponse.success(integralService.getIntegralData(dto)); } @LoginShopRequired @ApiOperation("经销商积分与结算金额情况") @GetMapping("/getIntegralData") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), @ApiImplicitParam(paramType = "query", dataType = "integer", name = "userType", value = "查询类型:1=经销商积分;2=经销商结算金额;", required = true), }) public ApiResponse getIntegralData (@RequestParam Integer userType) { IntegralRecordDTO dto = new IntegralRecordDTO(); dto.setMemberId(getShopId()); dto.setUserType(userType); // try { // System.out.println(inviteRecordService.createShopMiniProgramCode(getShopId())); // }catch (Exception e){ // e.printStackTrace(); // } return ApiResponse.success(integralService.getIntegralData(dto)); } }