|
|
@@ -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;
|
|
|
}
|
|
|
}
|