From e030255c23c7ba3e2cbad1036a810d6d72fa864f Mon Sep 17 00:00:00 2001
From: liujie <liujie>
Date: 星期四, 26 十月 2023 18:04:58 +0800
Subject: [PATCH] 修改bug

---
 cloud-server-account/src/main/java/com/dsh/account/service/impl/UserIntegralChangesServiceImpl.java |   73 ++++++++++++++++++++++++++++--------
 1 files changed, 56 insertions(+), 17 deletions(-)

diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/UserIntegralChangesServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/UserIntegralChangesServiceImpl.java
index 238dd4d..5d076e5 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/UserIntegralChangesServiceImpl.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/UserIntegralChangesServiceImpl.java
@@ -12,6 +12,7 @@
 import com.dsh.account.model.IntegralListQuery;
 import com.dsh.account.model.SaveUserIntegralChangesVo;
 import com.dsh.account.model.vo.userBenefitDetail.ExchangeDetailsResponse;
+import com.dsh.account.model.vo.userBenefitDetail.ExchangeDetailsVo;
 import com.dsh.account.model.vo.userBenefitDetail.IntegralsData;
 import com.dsh.account.model.vo.userBenefitDetail.PointDetailsVo;
 import com.dsh.account.service.UserIntegralChangesService;
@@ -73,7 +74,7 @@
                         detail.setDetailsType(2);
                         break;
                     case 2:
-                        detail.setConsumeAmount("-"+(userIntegralChange.getNewIntegral() - userIntegralChange.getOldIntegral()));
+                        detail.setConsumeAmount(""+(userIntegralChange.getNewIntegral() - userIntegralChange.getOldIntegral()));
                         detail.setConsumeName("兑换商品");
                         detail.setDetailsType(1);
                         break;
@@ -118,42 +119,49 @@
         userIntegralChanges.setOldIntegral(appUser.getIntegral());
         userIntegralChanges.setType(vo.getType());
         appUser.setIntegral(appUser.getIntegral() + vo.getIntegral());
+        tauMapper.updateById(appUser);
         userIntegralChanges.setNewIntegral(appUser.getIntegral());
         userIntegralChanges.setInsertTime(new Date());
+        userIntegralChanges.setCategory(1);
         this.save(userIntegralChanges);
     }
 
     @Override
     public List<ExchangeDetailsResponse> queryExchangeGoodsdetails(Integer userIdFormRedis, Integer useType, Integer goodType) {
-        List<ExchangeDetailsResponse> integralExchangeDetails = mcClient.getIntegralExchangeDetails(userIdFormRedis);
-        if (ToolUtil.isNotEmpty(useType)){
-            integralExchangeDetails = integralExchangeDetails.stream()
-                    .filter(response -> Objects.equals(response.getUseStatus(), useType))
-                    .collect(Collectors.toList());
+        List<ExchangeDetailsResponse> detailsResponses = new ArrayList<>();
+        ExchangeDetailsVo integralExchangeDetails = mcClient.getIntegralExchangeDetails(userIdFormRedis);
+        if (ToolUtil.isNotEmpty(integralExchangeDetails.getDetailsResponses())){
+            detailsResponses = integralExchangeDetails.getDetailsResponses();
+            if (ToolUtil.isNotEmpty(useType)){
+                detailsResponses = integralExchangeDetails.getDetailsResponses().stream()
+                        .filter(response -> Objects.equals(response.getUseStatus(), useType))
+                        .collect(Collectors.toList());
+            }
+            if (ToolUtil.isNotEmpty(goodType)){
+                detailsResponses = integralExchangeDetails.getDetailsResponses().stream()
+                        .filter(response -> Objects.equals(response.getGoodType(), goodType))
+                        .collect(Collectors.toList());
+            }
         }
-        if (ToolUtil.isNotEmpty(goodType)){
-            integralExchangeDetails = integralExchangeDetails.stream()
-                    .filter(response -> Objects.equals(response.getGoodType(), goodType))
-                    .collect(Collectors.toList());
-        }
-        return integralExchangeDetails;
+        return detailsResponses;
     }
 
     @Override
-    public PointDetailsVo queryRedemptionDetails(Integer detailsId) {
-        return mcClient.getSpecificsOfGoods(detailsId);
+    public PointDetailsVo queryRedemptionDetails(Long detailsId) {
+        PointDetailsVo specificsOfGoods = mcClient.getSpecificsOfGoods(detailsId);
+        return specificsOfGoods;
     }
 
     @Override
-    public List<UserIntegral> listAll(Page<UserIntegral> userIntegralPage, IntegralListQuery integralListQuery) {
+    public Page<UserIntegral> listAll(Page<UserIntegral> userIntegralPage, IntegralListQuery integralListQuery) {
         String sTime =null;
         String eTime =null;
         if(ToolUtil.isNotEmpty(integralListQuery.getTime())){
             sTime = integralListQuery.getTime().split(" - ")[0]+" 00:00:00";
             eTime = integralListQuery.getTime().split(" - ")[1]+" 23:59:59";
         }
-        List<UserIntegral> userIntegrals = this.baseMapper.listAll(userIntegralPage, integralListQuery, sTime, eTime);
-        for (UserIntegral userIntegral : userIntegrals) {
+        Page<UserIntegral> userIntegrals = this.baseMapper.listAll(userIntegralPage, integralListQuery, sTime, eTime);
+        for (UserIntegral userIntegral : userIntegrals.getRecords()) {
             if(userIntegral.getCategory()==1){
                 userIntegral.setIntegral(userIntegral.getNewIntegral()-userIntegral.getOldIntegral());
             }else {
@@ -162,4 +170,35 @@
         }
         return userIntegrals;
     }
+
+    @Override
+    public List<ExchangeDetailsResponse> queryExchangeGoodsdetails1(Integer userIdFormRedis, Integer useType, Integer goodType, Integer page, Integer size) {
+        List<ExchangeDetailsResponse> detailsResponses = new ArrayList<>();
+        ExchangeDetailsVo integralExchangeDetails = mcClient.getIntegralExchangeDetails(userIdFormRedis);
+        if (ToolUtil.isNotEmpty(integralExchangeDetails.getDetailsResponses())){
+            detailsResponses = integralExchangeDetails.getDetailsResponses();
+            if (ToolUtil.isNotEmpty(useType)){
+                detailsResponses = detailsResponses.stream()
+                        .filter(response -> Objects.equals(response.getUseStatus(), useType))
+                        .collect(Collectors.toList());
+            }
+            if (ToolUtil.isNotEmpty(goodType)){
+                detailsResponses = detailsResponses.stream()
+                        .filter(response -> Objects.equals(response.getGoodType(), goodType))
+                        .collect(Collectors.toList());
+            }
+        }
+
+        int totalItems = detailsResponses.size();
+        int startIndex = (page - 1) * size;
+        int endIndex = Math.min(startIndex + size, totalItems);
+
+        if (startIndex <= endIndex) {
+            detailsResponses = detailsResponses.subList(startIndex, endIndex);
+        } else {
+            detailsResponses.clear();
+        }
+
+        return detailsResponses;
+    }
 }

--
Gitblit v1.7.1