puzhibing
2025-01-07 eb5d7885fa9e4bd20c0827eec9b4cdd48c47b509
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserPointController.java
@@ -1,12 +1,13 @@
package com.ruoyi.account.controller;
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.ruoyi.account.api.model.UserPoint;
import com.ruoyi.account.service.AppUserService;
import com.ruoyi.account.service.UserPointService;
import com.ruoyi.account.vo.CommissionStatistics;
import com.ruoyi.account.vo.TransferPoint;
import com.ruoyi.account.vo.UserPointDetailVO;
import com.ruoyi.account.vo.UserPointStatistics;
import com.ruoyi.account.vo.UserPointVO;
@@ -93,9 +94,8 @@
     */
    @PostMapping("/transferPoint")
    @ApiOperation("转赠积分")
    public R<Void> transferPoint(@ApiParam("积分") @RequestParam BigDecimal point, @ApiParam("手机号") @RequestParam String phone) {
        userPointService.transferPoint(point, phone);
        return R.ok();
    public R<Void> transferPoint(@RequestBody TransferPoint transferPoint) {
        return userPointService.transferPoint(transferPoint.getPoint(), transferPoint.getPhone());
    }
@@ -131,6 +131,14 @@
        return R.ok(userPointPage);
    }
    @GetMapping("/user/list")
    @ApiOperation(value = "积分管理-用户积分明细(必传用户id)", tags = "后台")
    public R<Page<UserPoint>> userlist(UserPoint userPoint) {
        Page<UserPoint> page = userPointService.lambdaQuery().eq(UserPoint::getAppUserId, userPoint.getAppUserId()).orderByDesc(UserPoint::getCreateTime).page(Page.of(userPoint.getPageNum(), userPoint.getPageSize()));
        return R.ok(page);
    }
    /**
     * 导出
@@ -144,21 +152,26 @@
        util.exportExcel(response, userPointList, "用户积分统计");
    }
    /**
     * 用户分佣统计
     * 获取积分变动记录
     * @param userPoint
     * @return
     */
    @GetMapping("/commissionStatistics")
    @ApiOperation(value = "用户分佣统计", tags = "管理后台-财务统计-用户分佣统计")
    public R<CommissionStatistics> commissionStatistics(UserPoint userPoint) {
        userPoint.setType(2);
        IPage<UserPoint> userPointPage = userPointService.getUserPointPage(Page.of(userPoint.getPageNum(), userPoint.getPageSize()), userPoint);
        UserPointStatistics statistics = userPointService.getStatistics(userPoint);
        CommissionStatistics commissionStatistics = new CommissionStatistics();
        commissionStatistics.setStatistics(statistics);
        commissionStatistics.setUserPointPage(userPointPage);
        return R.ok(commissionStatistics);
    @PostMapping("/getUserPointList")
    public R<List<UserPoint>> getUserPointList(@RequestBody UserPoint userPoint){
        LambdaQueryWrapper<UserPoint> queryWrapper = new LambdaQueryWrapper<>();
        if(null != userPoint.getType()){
            queryWrapper.eq(UserPoint::getType, userPoint.getType());
        }
        if(null != userPoint.getObjectId()){
            queryWrapper.eq(UserPoint::getObjectId, userPoint.getObjectId());
        }
        if(null != userPoint.getAppUserId()){
            queryWrapper.eq(UserPoint::getAppUserId, userPoint.getAppUserId());
        }
        List<UserPoint> list = userPointService.list(queryWrapper);
        return R.ok(list);
    }
}