Explorar o código

feat:添加小程序安全视频列表

zhaohaipeng hai 6 días
pai
achega
872cc173b4

+ 5 - 11
recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/service/recall/strategy/AppTypeSpecialRecallStrategy.java

@@ -26,24 +26,18 @@ public class AppTypeSpecialRecallStrategy implements RecallStrategy {
     @Qualifier("redisTemplate")
     @Qualifier("redisTemplate")
     private RedisTemplate<String, String> redisTemplate;
     private RedisTemplate<String, String> redisTemplate;
 
 
-    public static final String LAST_VIDEO_KEY_FORMAT = "recall:apptype:special:%s";
+    public static final String LAST_VIDEO_KEY_FORMAT = "recall:apptype:last:special:%s:%s";
     public static final String PUSH_FROM = "special_videos";
     public static final String PUSH_FROM = "special_videos";
+    public static final String RECALL_KEY = "recall:apptype:specil:items:2";
 
 
     @Override
     @Override
     public List<Video> recall(RecallParam param) {
     public List<Video> recall(RecallParam param) {
-        String keyNamePrefix = "apptype:special:videos:item:";
-        String dateStr = DateUtils.getCurrentDateStr("yyyyMMdd");
-        String specialKeyName = keyNamePrefix + dateStr;
-        if (!redisTemplate.hasKey(specialKeyName)) {
-            dateStr = DateUtils.getBeforeDaysDateStr("yyyyMMdd", 1);
-            specialKeyName = keyNamePrefix + dateStr;
-        }
 
 
-        String recallKey = String.format(LAST_VIDEO_KEY_FORMAT, param.getAppType());
+        String recallKey = String.format(LAST_VIDEO_KEY_FORMAT, param.getAppType(), param.getVideoId());
         String value = redisTemplate.opsForValue().get(recallKey);
         String value = redisTemplate.opsForValue().get(recallKey);
         Long idx = 0L;
         Long idx = 0L;
         if (StringUtils.isNotBlank(value)) {
         if (StringUtils.isNotBlank(value)) {
-            idx = redisTemplate.opsForZSet().reverseRank(specialKeyName, value);
+            idx = redisTemplate.opsForZSet().reverseRank(RECALL_KEY, value);
             if (idx == null) {
             if (idx == null) {
                 idx = 0L;
                 idx = 0L;
             } else {
             } else {
@@ -59,7 +53,7 @@ public class AppTypeSpecialRecallStrategy implements RecallStrategy {
             if (freq > 2) {
             if (freq > 2) {
                 break;
                 break;
             }
             }
-            Set<ZSetOperations.TypedTuple<String>> data = redisTemplate.opsForZSet().reverseRangeWithScores(specialKeyName, idx, idx + getSize - 1);
+            Set<ZSetOperations.TypedTuple<String>> data = redisTemplate.opsForZSet().reverseRangeWithScores(RECALL_KEY, idx, idx + getSize - 1);
             if (CollectionUtils.isEmpty(data)) {
             if (CollectionUtils.isEmpty(data)) {
                 break;
                 break;
             }
             }