From d0a9c05d4b55e192ab6ccd634816720857c4b947 Mon Sep 17 00:00:00 2001 From: xupei Date: Fri, 11 Jul 2025 14:22:38 +0800 Subject: [PATCH] =?UTF-8?q?BUGFIX:=201=E3=80=81=E7=9B=B8=E5=90=8C=E7=9A=84?= =?UTF-8?q?relation=5Fid=EF=BC=8Crelation=5Ftype=E9=87=8D=E5=A4=8D?= =?UTF-8?q?=E6=8E=92=E5=BA=8F=EF=BC=8C=E9=92=88=E5=AF=B9=E8=84=8F=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E5=81=9A=E5=A4=84=E7=90=86=202=E3=80=81=E4=BC=A0?= =?UTF-8?q?=E5=85=A5=E6=95=B0=E6=8D=AE=E5=BA=93=E4=B8=AD=E6=B2=A1=E6=9C=89?= =?UTF-8?q?=E7=9A=84userLikeSortId?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/UserLikeGroupServiceImpl.java | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/ai/da/service/impl/UserLikeGroupServiceImpl.java b/src/main/java/com/ai/da/service/impl/UserLikeGroupServiceImpl.java index da957ce3..30799f47 100644 --- a/src/main/java/com/ai/da/service/impl/UserLikeGroupServiceImpl.java +++ b/src/main/java/com/ai/da/service/impl/UserLikeGroupServiceImpl.java @@ -592,11 +592,21 @@ public class UserLikeGroupServiceImpl extends ServiceImpl().eq("relation_id", childId)); - if (!child.getRelationType().equals(relationType)) { + + // 相同的relation_id,relation_type重复排序,有脏数据 + List childList = collectionSortMapper.selectList( + new QueryWrapper().eq("relation_id", childId) + .eq("relation_type", relationType).orderByDesc("id")); + if (childList.isEmpty()) { + return null; + }else if (childList.size() > 1){ + log.error("CollectionSort表中,relation_id为{},relation_type为{}的记录有 {} 条,", childId, relationType, childList.size()); + } + CollectionSort child = childList.get(0); + CollectionSort collectionSort = collectionSortMapper.selectById(userLikeSortId); + if (Objects.isNull(collectionSort)){ return null; } - CollectionSort collectionSort = collectionSortMapper.selectById(userLikeSortId); child.setSort(collectionSort.getSort()); // 原来排序的大于等于userLikeSortId的排序的,都要+1 collectionSortMapper.increaseGenerateSortAbove(parentId, relationType, collectionSort.getSort() - 1);