无关风月
2025-03-07 1d44c20eabc99e9970fb58d4dbd3a94d77e83e39
xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientPrizeController.java
@@ -6,14 +6,15 @@
import com.xinquan.common.core.domain.R;
import com.xinquan.common.core.utils.page.CollUtils;
import com.xinquan.common.core.utils.page.PageDTO;
import com.xinquan.common.log.annotation.Log;
import com.xinquan.common.log.enums.BusinessType;
import com.xinquan.common.security.utils.SecurityUtils;
import com.xinquan.meditation.api.domain.Meditation;
import com.xinquan.system.api.domain.MeditationQuestion;
import com.xinquan.course.api.domain.Course;
import com.xinquan.course.api.domain.CourseCategory;
import com.xinquan.system.api.domain.Prize;
import com.xinquan.system.api.domain.PrizeRedemptionRecord;
import com.xinquan.user.service.PrizeRedemptionRecordService;
import com.xinquan.user.service.PrizeService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
@@ -21,6 +22,7 @@
import org.springframework.web.bind.annotation.*;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
@@ -66,6 +68,8 @@
    @PostMapping("/addPrize")
    @ApiOperation(value = "新增奖品管理", tags = "管理后台-奖品管理")
    @Log(title = "【奖品管理】新增奖品", businessType = BusinessType.INSERT)
    public R addPrize(@RequestBody Prize homeBackgroundMusic) {
        homeBackgroundMusic.setCreateBy(SecurityUtils.getUsername());
        homeBackgroundMusic.setCreateTime(LocalDateTime.now());
@@ -77,6 +81,7 @@
        return R.ok(prizeService.getById(uid));
    }
    @GetMapping("/updateState")
    @Log(title = "【奖品管理】修改奖品上下架状态", businessType = BusinessType.UPDATE)
    @ApiOperation(value = "修改奖品管理上下架状态", tags = "管理后台-奖品管理")
    public R updateState(String uid) {
        Prize byId = prizeService.getById(uid);
@@ -90,6 +95,7 @@
    }
    @PostMapping("/updatePrize")
    @ApiOperation(value = "修改奖品管理", tags = "管理后台-奖品管理")
    @Log(title = "【奖品管理】修改奖品", businessType = BusinessType.UPDATE)
    public R updatePrize(@RequestBody Prize homeBackgroundMusic) {
        homeBackgroundMusic.setUpdateBy(SecurityUtils.getUsername());
        homeBackgroundMusic.setUpdateTime(LocalDateTime.now());
@@ -97,7 +103,16 @@
    }
    @PostMapping("/deletePrize")
    @ApiOperation(value = "批量删除", tags = "管理后台-奖品管理")
    @Log(title = "【奖品管理】批量删除", businessType = BusinessType.DELETE)
    public R deletePrize(String ids) {
        List<Long> collect = Arrays.stream(ids.split(",")).map(Long::valueOf).collect(Collectors.toList());
        for (Long l : collect) {
            List<PrizeRedemptionRecord> list = prizeRedemptionRecordService.lambdaQuery().eq(PrizeRedemptionRecord::getPrizeId, l).list();
            if (!list.isEmpty()){
                Prize byId = prizeService.getById(l);
                return R.fail("奖品名称:"+byId.getName()+"存在兑换记录,不可删除");
            }
        }
        return R.ok(prizeService.removeBatchByIds(Arrays.asList(ids.split(",")).stream().map(Long::valueOf).collect(Collectors.toList())));
    }
}