From dd663d0ac783755d889e270eee57ee58630c88c8 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期五, 28 二月 2025 17:46:52 +0800
Subject: [PATCH] 冥想2.0新增代码

---
 xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientPrizeController.java |   34 ++++++++++++++++++++++++++--------
 1 files changed, 26 insertions(+), 8 deletions(-)

diff --git a/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientPrizeController.java b/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientPrizeController.java
index ecbede9..f8dc77a 100644
--- a/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientPrizeController.java
+++ b/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientPrizeController.java
@@ -6,9 +6,11 @@
 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;
@@ -20,8 +22,10 @@
 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;
 
 /**
  * <p>
@@ -63,19 +67,22 @@
     }
 
     @PostMapping("/addPrize")
-    @ApiOperation(value = "新增奖品管理", notes = "管理后台-奖品管理")
+    @ApiOperation(value = "新增奖品管理", tags = "管理后台-奖品管理")
+    @Log(title = "【奖品管理】新增奖品", businessType = BusinessType.INSERT)
+
     public R addPrize(@RequestBody Prize homeBackgroundMusic) {
         homeBackgroundMusic.setCreateBy(SecurityUtils.getUsername());
         homeBackgroundMusic.setCreateTime(LocalDateTime.now());
         return R.ok(prizeService.save(homeBackgroundMusic));
     }
     @GetMapping("/detailPrize")
-    @ApiOperation(value = "查看详情奖品管理", notes = "管理后台-奖品管理")
+    @ApiOperation(value = "查看详情奖品管理", tags = "管理后台-奖品管理")
     public R<Prize> detailPrize(String uid) {
         return R.ok(prizeService.getById(uid));
     }
     @GetMapping("/updateState")
-    @ApiOperation(value = "修改奖品管理上下架状态", notes = "管理后台-奖品管理")
+    @Log(title = "【奖品管理】修改奖品上下架状态", businessType = BusinessType.UPDATE)
+    @ApiOperation(value = "修改奖品管理上下架状态", tags = "管理后台-奖品管理")
     public R updateState(String uid) {
         Prize byId = prizeService.getById(uid);
         if (byId.getStatus() == 1){
@@ -83,19 +90,30 @@
         }else {
             byId.setStatus(1);
         }
+        prizeService.updateById(byId);
         return R.ok();
     }
     @PostMapping("/updatePrize")
-    @ApiOperation(value = "修改奖品管理", notes = "管理后台-奖品管理")
+    @ApiOperation(value = "修改奖品管理", tags = "管理后台-奖品管理")
+    @Log(title = "【奖品管理】修改奖品", businessType = BusinessType.UPDATE)
     public R updatePrize(@RequestBody Prize homeBackgroundMusic) {
         homeBackgroundMusic.setUpdateBy(SecurityUtils.getUsername());
         homeBackgroundMusic.setUpdateTime(LocalDateTime.now());
         return R.ok(prizeService.updateById(homeBackgroundMusic));
     }
     @PostMapping("/deletePrize")
-    @ApiOperation(value = "批量删除", notes = "管理后台-奖品管理")
+    @ApiOperation(value = "批量删除", tags = "管理后台-奖品管理")
+    @Log(title = "【奖品管理】批量删除", businessType = BusinessType.DELETE)
     public R deletePrize(String ids) {
-        return R.ok(prizeService.removeBatchByIds(Arrays.asList(ids.split(","))));
+        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())));
     }
 }
 

--
Gitblit v1.7.1