From 7433322e94209c63bd6257dd4bf3b24be0452325 Mon Sep 17 00:00:00 2001
From: zxl <763096477@qq.com>
Date: 星期四, 21 八月 2025 18:12:04 +0800
Subject: [PATCH] 奖品,抽奖活动bug改动,商家入驻密码重置111111

---
 framework/src/main/java/cn/lili/modules/lmk/service/impl/PrizeActivityServiceImpl.java |   55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 55 insertions(+), 0 deletions(-)

diff --git a/framework/src/main/java/cn/lili/modules/lmk/service/impl/PrizeActivityServiceImpl.java b/framework/src/main/java/cn/lili/modules/lmk/service/impl/PrizeActivityServiceImpl.java
index 619d1eb..1405050 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/service/impl/PrizeActivityServiceImpl.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/service/impl/PrizeActivityServiceImpl.java
@@ -1,5 +1,11 @@
 package cn.lili.modules.lmk.service.impl;
 
+import cn.lili.common.utils.StringUtils;
+import cn.lili.modules.lmk.domain.entity.ActivityRefPrize;
+import cn.lili.modules.lmk.domain.vo.ActivityRefPrizeInfoVO;
+import cn.lili.modules.lmk.enums.general.PrizeActivityStatusEnum;
+import cn.lili.modules.lmk.service.ActivityRefPrizeService;
+import cn.lili.utils.COSUtil;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import cn.lili.modules.lmk.domain.entity.PrizeActivity;
 import cn.lili.modules.lmk.mapper.PrizeActivityMapper;
@@ -14,7 +20,9 @@
 import cn.lili.utils.PageUtil;
 import org.springframework.beans.BeanUtils;
 import org.springframework.util.Assert;
+import org.springframework.util.CollectionUtils;
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.stream.Collectors;
 
@@ -28,7 +36,43 @@
 @RequiredArgsConstructor
 public class PrizeActivityServiceImpl extends ServiceImpl<PrizeActivityMapper, PrizeActivity> implements PrizeActivityService {
 
+    private final ActivityRefPrizeService activityRefPrizeService;
     private final PrizeActivityMapper prizeActivityMapper;
+
+    private final COSUtil cOSUtil;
+
+    @Override
+    public Result publishPrizeActivity(String id) {
+        PrizeActivity prizeActivity = baseMapper.selectById(id);
+        //鍒ゆ柇娲诲姩鏄惁瀛樺湪濂栧搧 瀛樺湪鍏佽寮�鍚�
+
+        Object data = activityRefPrizeService.getActivityRefPrizeByActivityId(id).get("data");
+
+        if (data instanceof List<?>) {
+            List<?> rawList = (List<?>) data;
+            List<ActivityRefPrizeInfoVO> list = new ArrayList<>();
+            for (Object item : rawList) {
+                if (item instanceof ActivityRefPrizeInfoVO) {
+                    list.add((ActivityRefPrizeInfoVO) item);
+                }
+            }
+            if (CollectionUtils.isEmpty(list)) {
+                return Result.error("寮�鍚娊濂栨椿鍔ㄥ墠璇疯缃鍝�");
+            }
+            // 浣跨敤 list
+        }
+        if (PrizeActivityStatusEnum.OFF.name().equals(prizeActivity.getEnableStatus())) {
+            prizeActivity.setEnableStatus(PrizeActivityStatusEnum.ON.name());
+            baseMapper.updateById(prizeActivity);
+            return Result.ok("鍚姩鎴愬姛");
+        }else {
+            prizeActivity.setEnableStatus(PrizeActivityStatusEnum.OFF.name());
+            baseMapper.updateById(prizeActivity);
+            return Result.ok("鍏抽棴鎴愬姛");
+        }
+
+
+    }
 
     /**
      * 娣诲姞
@@ -38,6 +82,7 @@
     @Override
     public Result add(PrizeActivityForm form) {
         PrizeActivity entity = PrizeActivityForm.getEntityByForm(form, null);
+        entity.setEnableStatus(PrizeActivityStatusEnum.OFF.name());
         baseMapper.insert(entity);
         return Result.ok("娣诲姞鎴愬姛");
     }
@@ -54,6 +99,7 @@
         // 涓虹┖鎶汭llegalArgumentException锛屽仛鍏ㄥ眬寮傚父澶勭悊
         Assert.notNull(entity, "璁板綍涓嶅瓨鍦�");
         BeanUtils.copyProperties(form, entity);
+        entity.setEnableStatus(PrizeActivityStatusEnum.OFF.name());
         baseMapper.updateById(entity);
         return Result.ok("淇敼鎴愬姛");
     }
@@ -89,6 +135,15 @@
     public Result page(PrizeActivityQuery query) {
         IPage<PrizeActivityVO> page = PageUtil.getPage(query, PrizeActivityVO.class);
         baseMapper.getPage(page, query);
+
+        for (PrizeActivityVO vo : page.getRecords()) {
+            if (StringUtils.isNotBlank(vo.getActivityCover())){
+                vo.setActivityCoverUrl(cOSUtil.getPreviewUrl(vo.getActivityCover()));
+            }
+            if (StringUtils.isNotBlank(vo.getActivityImg())){
+                vo.setActivityImgUrl(cOSUtil.getPreviewUrl(vo.getActivityImg()));
+            }
+        }
         return Result.ok().data(page.getRecords()).total(page.getTotal());
     }
 

--
Gitblit v1.8.0