From 7ee17a00bd47309ea1a61e28f2e44f621a01b8cd Mon Sep 17 00:00:00 2001 From: puhanshu <a9236326> Date: 星期三, 27 四月 2022 11:32:31 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/huacheng' into huacheng --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActDiscussServiceImpl.java | 27 +++++++++++++++++++-------- 1 files changed, 19 insertions(+), 8 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActDiscussServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActDiscussServiceImpl.java index 36e291a..f72e540 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActDiscussServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActDiscussServiceImpl.java @@ -1309,8 +1309,14 @@ //组装viewNum key List<String> viewNumKeys = new ArrayList<>(); Iterator<String> iterator = needWriteDiscussIdSet.iterator(); + List<String> idList = new ArrayList<>(); while (iterator.hasNext()) { - viewNumKeys.add(String.join("_", DISCUSS_VIEW_NUM_PREFIX, iterator.next())); + String next = iterator.next(); + String key = String.join("_", DISCUSS_VIEW_NUM_PREFIX, next); + if (stringRedisTemplate.hasKey(key)) { + idList.add(next); + viewNumKeys.add(key); + } } ValueOperations opsForValue = stringRedisTemplate.opsForValue(); @@ -1318,13 +1324,18 @@ //待处理集合,以key-value/discussId-viewNum 存放 HashMap<Long, Integer> needDealMap = new HashMap<>(); - for (String discussId : needWriteDiscussIdSet) { - try { - needDealMap.put(Long.parseLong(discussId), Integer.parseInt(viewNumList.get(0))); - viewNumList.remove(0); - } catch (IndexOutOfBoundsException e) { - //数据存在异常了,跳过,继续执行正确的 - continue; + if (nonNull(idList) && !idList.isEmpty()) { + log.error("一起议id列表:" + idList.toString()); + log.error("一起议浏览量:" + viewNumList.toString()); + for (String discussId : idList) { + try { + needDealMap.put(Long.parseLong(discussId), Integer.parseInt(viewNumList.get(0))); + viewNumList.remove(0); + } catch (IndexOutOfBoundsException e) { + log.error("数据异常:" + discussId, e.getMessage()); + //数据存在异常了,跳过,继续执行正确的 + continue; + } } } int result = comActDiscussDAO.batchUpdateViewNum(needDealMap); -- Gitblit v1.7.1