瀏覽代碼

Merge branch 'dev-w' into test

wangcheng 2 年之前
父節點
當前提交
2c4f46edac

+ 16 - 10
launch-admin/src/main/java/com/webflux/launchadmin/mysql/service/planNew/PlanServiceImpl.java

@@ -92,18 +92,24 @@ public class PlanServiceImpl implements PlanServiceInterface {
     public Integer setUserVisitsToRedis(String unique, String code) {
         String redisKey = RedisKey.H5_USER_UNIQUE + unique;
         int integer = 0;
-        if (Boolean.TRUE.equals(stringRedisTemplate.hasKey(redisKey))) {
-            Object val = stringRedisTemplate.opsForHash().get(redisKey, code);
-            if (val != null) {
-                integer = Integer.parseInt(val.toString());
-                integer = integer + 1;
+        try {
+            if (Boolean.TRUE.equals(stringRedisTemplate.hasKey(redisKey))) {
+                Object val = stringRedisTemplate.opsForHash().get(redisKey, code);
+                if (val != null) {
+                    integer = Integer.parseInt(val.toString());
+                    integer = integer + 1;
+                }
             }
+            stringRedisTemplate.opsForHash().put(redisKey, code, Integer.toString(integer));
+            // 设置过期时间
+            if (integer == 0) {
+                LocalDateTime expireTime = LocalDateTime.of(LocalDate.now().plusDays(1), LocalTime.of(2, 0));
+                long minute = Duration.between(LocalDateTime.now(), expireTime).toMinutes();
+                stringRedisTemplate.expire(redisKey, minute, TimeUnit.MINUTES);
+            }
+        } catch (Exception e) {
+            log.error("设置用户访问量到redis异常,unique:{},code:{}", unique, code, e);
         }
-        stringRedisTemplate.opsForHash().put(redisKey, code, Integer.toString(integer));
-        // 设置过期时间
-        LocalDateTime expireTime = LocalDateTime.of(LocalDate.now().plusDays(1), LocalTime.of(4, 0));
-        long minute = Duration.between(LocalDateTime.now(), expireTime).toMinutes();
-        stringRedisTemplate.expire(redisKey, minute, TimeUnit.MINUTES);
         return integer;
     }
 }