From 74196bcc835d9b76cdd1bc3d85b0dfbe0191fc00 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期四, 31 十二月 2020 19:23:43 +0800
Subject: [PATCH] 活动信息缓存

---
 service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityServiceImpl.java |   80 +++++++++++++++++++---------------------
 1 files changed, 38 insertions(+), 42 deletions(-)

diff --git a/service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityServiceImpl.java b/service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityServiceImpl.java
index a9114c5..0b7dad1 100644
--- a/service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityServiceImpl.java
+++ b/service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityServiceImpl.java
@@ -10,6 +10,8 @@
 import com.ks.lucky.service.LuckyActivityImageService;
 import com.ks.lucky.service.LuckyMQService;
 import com.ks.lucky.service.impl.*;
+import com.ks.lucky.util.annotation.RedisCache;
+import com.ks.lucky.util.annotation.RedisCacheEvict;
 import com.ks.lucky.util.mq.LuckyMQFactory;
 import org.apache.dubbo.config.annotation.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -64,7 +66,23 @@
         query.appId = appId;
         query.start = (page - 1) * pageSize;
         query.count = pageSize;
-        query.sort = "start_time desc";
+        query.sortList = Arrays.asList(new String[]{"actual_start_time desc"});
+        return luckyActivityMapper.list(query);
+    }
+
+    @Override
+    public List<LuckyActivity> getActivityList(Long appId, Long sponsorId, List<Integer> stateList, List<Long> excludeActivityIds, String key, int page, int pageSize) {
+
+
+        ActivityDaoQuery query = new ActivityDaoQuery();
+        query.stateList = stateList;
+        query.key = key;
+        query.sponsorId = sponsorId;
+        query.excludeActivityIds = excludeActivityIds;
+        query.appId = appId;
+        query.start = (page - 1) * pageSize;
+        query.count = pageSize;
+        query.sortList = Arrays.asList(new String[]{"actual_start_time desc"});
         return luckyActivityMapper.list(query);
     }
 
@@ -75,6 +93,18 @@
         query.key = key;
         query.sponsorId = sponsorId;
         query.appId = appId;
+
+        return luckyActivityMapper.count(query);
+    }
+
+    @Override
+    public long countActivity(Long appId, Long sponsorId, List<Integer> stateList, String key, List<Long> excludeActivityIds) {
+        ActivityDaoQuery query = new ActivityDaoQuery();
+        query.stateList = stateList;
+        query.key = key;
+        query.sponsorId = sponsorId;
+        query.appId = appId;
+        query.excludeActivityIds = excludeActivityIds;
 
         return luckyActivityMapper.count(query);
     }
@@ -132,7 +162,7 @@
 
         //妫�鏌ユ椿鍔ㄧ姸鎬�
         if (activity.getState() != LuckyActivity.STATE_NOT_PUBLISH) {
-            throw new LuckyActivityException(1, "娲诲姩宸插彂甯�");
+            throw new LuckyActivityException(1, "娲诲姩鏈浜庡鏍告垚鍔熺姸鎬�");
         }
         //妫�鏌ュ紑濂栦俊鎭�
         LuckyActivityOpenInfo openInfo = luckyActivityOpenInfoManager.getOpenInfo(activity.getId());
@@ -258,48 +288,14 @@
 
     @Override
     public LuckyActivity getActivityDetail(Long id) {
-        LuckyActivity activity = luckyActivityMapper.selectByPrimaryKey(id);
-        if (activity == null) {
-            return null;
-        }
-
-        //鍔犺浇鍥剧墖淇℃伅
-        List<LuckyActivityImage> bannerList = luckyActivityImageService.listByActivityId(id, LuckyActivityImage.LuckyImageType.banner);
-        activity.setBannerList(bannerList);
-
-        //鍔犺浇寮�濂栦俊鎭�
-        LuckyActivityOpenInfo openInfo = luckyActivityOpenInfoManager.getOpenInfo(activity.getId());
-        activity.setOpenInfo(openInfo);
-
-        //鍔犺浇璧炲姪淇℃伅
-        LuckyActivitySponsorInfo sponsorInfo = luckyActivitySponsorInfoManager.getSponsorInfo(activity.getId());
-        if (sponsorInfo != null) {
-            sponsorInfo = luckyActivitySponsorInfoManager.getSponsorInfoDetail(sponsorInfo.getId());
-        }
-        activity.setSponsorInfo(sponsorInfo);
-
-
-        //鍔犺浇濂栭」淇℃伅
-        List<LuckyActivityAwards> awardsList = luckyActivityAwardManager.getAwardList(activity.getId());
-        List<LuckyActivityAwards> awardsDetailList = new ArrayList<>();
-        if (awardsList != null) {
-            for (LuckyActivityAwards awards : awardsList) {
-                awards = luckyActivityAwardManager.getAwardDetail(awards.getId());
-                if (awards != null) {
-                    awardsDetailList.add(awards);
-                }
-            }
-        }
-        activity.setAwardsList(awardsDetailList);
-
-        return activity;
+        return luckyActivityManager.getActivityDetail(id);
     }
 
     @Override
     public List<LuckyActivity> getActivityDetail(List<Long> ids) {
         List<LuckyActivity> activityList = new ArrayList<>();
         for (Long id : ids) {
-            LuckyActivity luckyActivity = getActivityDetail(id);
+            LuckyActivity luckyActivity = luckyActivityManager.getActivityDetail(id);
             activityList.add(luckyActivity);
         }
         return activityList;
@@ -315,7 +311,7 @@
         }
 
         activity.setUpdateTime(new Date());
-        luckyActivityMapper.updateByPrimaryKeySelective(activity);
+        luckyActivityManager.updateSelectiveByPrimaryKey(activity);
     }
 
     @Override
@@ -324,7 +320,7 @@
         query.appId = appId;
         query.start = (page - 1) * pageSize;
         query.count = pageSize;
-        query.sort = "actual_start_time desc";
+        query.sortList = Arrays.asList(new String[]{"actual_start_time desc"});
 
         query.stateList = Arrays.asList(new Integer[]{
                 LuckyActivity.STATE_STARTED,
@@ -333,8 +329,8 @@
                 LuckyActivity.STATE_OPENED,
         });
 
-
-        return luckyActivityMapper.list(query);
+        List<LuckyActivity> list = luckyActivityMapper.list(query);
+        return list;
     }
 
     @Override

--
Gitblit v1.8.0