From dcb96821f905f3fd93c059d8703517bdcac4d336 Mon Sep 17 00:00:00 2001
From: 刘帅 <rr.iii@qq.com>
Date: 星期二, 29 九月 2026 20:02:02 +0800
Subject: [PATCH] 排序问题及门店手机号展示问题

---
 cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java |   24 ++++++++++++++++--------
 1 files changed, 16 insertions(+), 8 deletions(-)

diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java b/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java
index b16df68..63ef586 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java
@@ -446,6 +446,7 @@
                 .le("startTime", new Date())
                 .ge("endTime", new Date())
                 .eq("status", 1)
+                .orderByDesc("insertTime", "id")
         );
         if (request.getShopId()!=null){
             List<Integer> storeId = new ArrayList<>();
@@ -464,7 +465,9 @@
                 List<PointsMerchandise> pointsMerchandiseList = pmdsService.lambdaQuery()
                         .eq(PointsMerchandise::getState, 1)
                         .eq(PointsMerchandise::getShelves,1)
-                        .in(PointsMerchandise::getId, pointsMerchandiseIds).list();
+                        .in(PointsMerchandise::getId, pointsMerchandiseIds)
+                        .orderByDesc(PointsMerchandise::getInsertTime, PointsMerchandise::getId)
+                        .list();
 
                 list = pointsMerchandiseList;
             }
@@ -894,7 +897,8 @@
         SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
         SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("yyyy-MM-dd");
         List<UserPointsMerchandise> pointsMerchandises = upmseService.list(new QueryWrapper<UserPointsMerchandise>()
-                .eq("userId", appUserId).eq("payStatus", 2));
+                .eq("userId", appUserId).eq("payStatus", 2)
+                .orderByDesc("insertTime", "id"));
         List<PointsMerchandiseStore> pointsMerchandiseStoreList = pointsMerchandiseStoreService.list();
         Map<Integer, List<PointsMerchandiseStore>> pointsMerchandiseStoreMap = pointsMerchandiseStoreList.stream().collect(Collectors.groupingBy(PointsMerchandiseStore::getPointsMerchandiseId));
 
@@ -908,7 +912,8 @@
         List<UserCoupon> userCoupons = new ArrayList<>();
         if (ids.size() > 0) {
             userCoupons = userCouponService.list(new QueryWrapper<UserCoupon>().eq("userId", appUserId).in("couponId", ids)
-                    .ne("status", 3));
+                    .ne("status", 3)
+                    .orderByDesc("insertTime", "id"));
         }
         if (pointsMerchandises.size() > 0) {
             for (UserPointsMerchandise pointsMerchandise : pointsMerchandises) {
@@ -1142,7 +1147,10 @@
 
         // 2.0新增会员权益赠送门票
         List<VipDetail> list = vipDetailService.lambdaQuery()
-                .eq(VipDetail::getAppUserId, appUserId).eq(VipDetail::getType, 2).list();
+                .eq(VipDetail::getAppUserId, appUserId)
+                .eq(VipDetail::getType, 2)
+                .orderByDesc(VipDetail::getInsertTime, VipDetail::getId)
+                .list();
         for (VipDetail vipDetail : list) {
             ExchangeDetailsResponse detailsResponse = new ExchangeDetailsResponse();
             // 添加-用于区分会员权益门票
@@ -1197,11 +1205,11 @@
                 }
                 responses.add(detailsResponse);
             }
-            Comparator<ExchangeDetailsResponse> comparator = Comparator.comparing(ExchangeDetailsResponse::getStartTime).reversed();
-            Collections.sort(responses, comparator);
-            detailsVo.setDetailsResponses(responses);
-
         }
+        responses.sort(Comparator.comparing(ExchangeDetailsResponse::getStartTime,
+                Comparator.nullsLast(Comparator.reverseOrder()))
+                .thenComparing(ExchangeDetailsResponse::getDetailsId, Comparator.reverseOrder()));
+        detailsVo.setDetailsResponses(responses);
         return detailsVo;
     }
 

--
Gitblit v1.7.1