Bläddra i källkod

脏数据兼容

yuanliang 9 månader sedan
förälder
incheckning
8236b1b681

+ 11 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/VipCardRecordServiceImpl.java

@@ -597,7 +597,17 @@ public class VipCardRecordServiceImpl extends ServiceImpl<VipCardRecordDao, VipC
 
     @Override
     public List<VipCardRecordWrapper.UserVipInfo> queryUserVipInfo(List<Long> userIdList, String clientType) {
-        return baseMapper.queryUserVipInfo(userIdList, clientType);
+        List<VipCardRecordWrapper.UserVipInfo> userVipInfos = baseMapper.queryUserVipInfo(userIdList, clientType);
+        Set<Long> userIds = new HashSet<>();
+        List<VipCardRecordWrapper.UserVipInfo> newUserVipInfos = new ArrayList<>();
+        for (VipCardRecordWrapper.UserVipInfo userVipInfo : userVipInfos) {
+            if (userIds.contains(userVipInfo.getUserId())) {
+                continue;
+            }
+            newUserVipInfos.add(userVipInfo);
+            userIds.add(userVipInfo.getUserId());
+        }
+        return newUserVipInfos;
     }
 
 

+ 1 - 0
cooleshow-user/user-biz/src/main/resources/config/mybatis/VipCardRecordMapper.xml

@@ -161,5 +161,6 @@
         and t.efficient_flag_ = 1
         group by t.user_id_) m
         left join vip_card_record vcr on m.userId = vcr.user_id_ and vcr.end_time_ > now() and now() >= vcr.start_time_ and efficient_flag_ = 1 and vcr.client_type_ = #{clientType}
+        order by vcr.end_time_ desc
     </select>
 </mapper>