From 9fd9c3428134e78144de6e920516a558eaa36c6d Mon Sep 17 00:00:00 2001
From: lisy <linlangsur163@163.com>
Date: 星期一, 07 八月 2023 17:20:00 +0800
Subject: [PATCH] app端:使用福利中充值明细的列表展示bug

---
 cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java  |   28 ++++++++++----
 cloud-server-account/src/main/java/com/dsh/account/feignclient/course/model/CouponPaymentVo.java |   17 ++++++++
 cloud-server-account/src/main/java/com/dsh/account/service/impl/RechargeRecordsServiceImpl.java  |   45 ++++++++++++++++------
 cloud-server-other/src/main/java/com/dsh/other/controller/StoreController.java                   |    1 
 cloud-server-course/src/main/java/com/dsh/course/feignclient/model/CouponPaymentVo.java          |   17 ++++++++
 cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java   |    2 
 6 files changed, 89 insertions(+), 21 deletions(-)

diff --git a/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java b/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java
index 5f79b5f..a0a75a8 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java
@@ -33,7 +33,7 @@
      List<PurchaseVo> getAppUsersCourseData(@RequestBody Integer appUserId);
 
     @PostMapping("/base/coursePack/allPaymentCourseList")
-    public List<TCoursePackagePayment> getAppuserCourseList(@RequestBody Integer appUserId);
+    public List<CouponPaymentVo> getAppuserCourseList(@RequestBody Integer appUserId);
 
     @PostMapping("/coursePackagePayment/courseRenewPlayPaiPay")
     public int paymentWanpaiRenewCourse(@RequestBody PlayPaiGoldCoursePackage coursePackage);
diff --git a/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/model/CouponPaymentVo.java b/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/model/CouponPaymentVo.java
new file mode 100644
index 0000000..86cbfbb
--- /dev/null
+++ b/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/model/CouponPaymentVo.java
@@ -0,0 +1,17 @@
+package com.dsh.account.feignclient.course.model;
+
+
+import lombok.Data;
+
+@Data
+public class CouponPaymentVo {
+    /**
+     * 时间
+     */
+    private String time;
+    /**
+     * 金额
+     */
+    private double amount;
+
+}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/RechargeRecordsServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/RechargeRecordsServiceImpl.java
index 0d3251b..f387614 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/RechargeRecordsServiceImpl.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/RechargeRecordsServiceImpl.java
@@ -8,6 +8,7 @@
 import com.dsh.account.feignclient.competition.DeductionCompetitionsClient;
 import com.dsh.account.feignclient.competition.model.PaymentCompetition;
 import com.dsh.account.feignclient.course.CoursePaymentClient;
+import com.dsh.account.feignclient.course.model.CouponPaymentVo;
 import com.dsh.account.feignclient.course.model.TCoursePackagePayment;
 import com.dsh.account.feignclient.other.RechargeConfigClient;
 import com.dsh.account.feignclient.other.SiteClient;
@@ -97,13 +98,13 @@
             }
         }
 //            2.课包购买
-        List<TCoursePackagePayment> appuserCourseList = cpClient.getAppuserCourseList(appUserId);
+        List<CouponPaymentVo> appuserCourseList = cpClient.getAppuserCourseList(appUserId);
         if (appuserCourseList.size() > 0){
-            for (TCoursePackagePayment tCoursePackagePayment : appuserCourseList) {
+            for (CouponPaymentVo tCoursePackagePayment : appuserCourseList) {
                 RechargesDetail consumeDetail = new RechargesDetail();
                 consumeDetail.setConsumeName(RechargeRecordEnum.COURSE_PACKAGE_PURCHASE.getMsg() );
-                consumeDetail.setConsumeTime(simpleDateFormat.format(tCoursePackagePayment.getInsertTime()));
-                consumeDetail.setConsumeAmount("-" + tCoursePackagePayment.getPlayPaiCoin());
+                consumeDetail.setConsumeTime(tCoursePackagePayment.getTime());
+                consumeDetail.setConsumeAmount("-" + tCoursePackagePayment.getAmount());
                 consumeDetail.setRecordId(2);
                 details.add(consumeDetail);
             }
@@ -157,9 +158,16 @@
                 }
             });
         }
-        Pageable pageable = PageRequest.of(pageNum - 1, pageSize);
-        Page<RechargesDetail> page = getPage(details, pageable);
-        return page.getContent();
+        //当前第几页
+        int pageNo = pageNum;
+        //一页五条
+        int size = pageSize;
+
+        //分页
+        details = details.stream().skip((pageNo - 1) * size).limit(size).
+                collect(Collectors.toList());
+
+        return details;
     }
 
     @Override
@@ -341,11 +349,24 @@
         return null;
     }
 
-    // 对数据进行分页处理的方法
-    private static Page<RechargesDetail> getPage(List<RechargesDetail> dataList, Pageable pageable) {
-        int start = (int) pageable.getOffset();
-        int end = Math.min((start + pageable.getPageSize()), dataList.size());
-        return new PageImpl<>(dataList.subList(start, end), pageable, dataList.size());
+    public static <T> List<T> pageList(List<T> list, int pageNum, int pageSize) {
+        //计算总页数
+        int page = list.size() % pageSize == 0 ? list.size() / pageSize : list.size() / pageSize + 1;
+        //兼容性分页参数错误
+        pageNum = pageNum <= 0 ? 1 : pageNum;
+        pageNum = pageNum >= page ? page : pageNum;
+        // 开始索引
+        int begin = 0;
+        // 结束索引
+        int end = 0;
+        if (pageNum != page) {
+            begin = (pageNum - 1) * pageSize;
+            end = begin + pageSize;
+        } else {
+            begin = (pageNum - 1) * pageSize;
+            end = list.size();
+        }
+        return list.subList(begin, end);
     }
 
 }
diff --git a/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java b/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java
index fc65518..8470385 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java
@@ -363,12 +363,24 @@
     }
 
     @PostMapping("/base/coursePack/allPaymentCourseList")
-    public List<TCoursePackagePayment> getAppuserCourseList(@RequestBody Integer appUserId){
-        return packagePaymentService.list(new QueryWrapper<TCoursePackagePayment>()
-                .eq("appUserId",appUserId)
-                .eq("payType",3)
-                .eq("payStatus",2)
-                .eq("state",1));
+    @ResponseBody
+    public List<CouponPaymentVo> getAppuserCourseList(@RequestBody Integer appUserId){
+        List<CouponPaymentVo> paymentVos = new ArrayList<>();
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("MM-dd HH:mm");
+        List<TCoursePackagePayment> list = packagePaymentService.list(new QueryWrapper<TCoursePackagePayment>()
+                .eq("appUserId", appUserId)
+                .eq("payType", 3)
+                .eq("payStatus", 2)
+                .eq("state", 1));
+        if (list.size() > 0 ){
+            for (TCoursePackagePayment tCoursePackagePayment : list) {
+                CouponPaymentVo couponPaymentVo = new CouponPaymentVo();
+                couponPaymentVo.setTime(simpleDateFormat.format(tCoursePackagePayment.getInsertTime()));
+                couponPaymentVo.setAmount( tCoursePackagePayment.getPlayPaiCoin());
+                paymentVos.add(couponPaymentVo);
+            }
+        }
+        return paymentVos;
     }
 
     @PostMapping("/base/coursePack/allAmountPayRecordOfUser")
@@ -816,7 +828,7 @@
             @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
             @ApiImplicitParam(value = "课包id", name = "courseID", required = true, dataType = "String"),
             @ApiImplicitParam(value = "时间 yyyy-MM-dd", name = "time", required = true, dataType = "String"),
-            @ApiImplicitParam(value = "学员id", name = "time", required = true, dataType = "int"),
+            @ApiImplicitParam(value = "学员id", name = "stuId", required = true, dataType = "int"),
     })
     public ResultUtil reverse(String courseID,String time,Integer stuId){
         SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
@@ -832,7 +844,7 @@
             );
 
             if (ToolUtil.isEmpty(packagePayment)){
-                ResultUtil.error("该用户未购买该课包");
+                return ResultUtil.error("该用户未购买该课包");
             }
             CoursePackageStudent coursePackageStudent = cspsService.getOne(new LambdaQueryWrapper<CoursePackageStudent>()
                     .eq(CoursePackageStudent::getCoursePackageId,packagePayment.getCoursePackageId())
diff --git a/cloud-server-course/src/main/java/com/dsh/course/feignclient/model/CouponPaymentVo.java b/cloud-server-course/src/main/java/com/dsh/course/feignclient/model/CouponPaymentVo.java
new file mode 100644
index 0000000..b1eb477
--- /dev/null
+++ b/cloud-server-course/src/main/java/com/dsh/course/feignclient/model/CouponPaymentVo.java
@@ -0,0 +1,17 @@
+package com.dsh.course.feignclient.model;
+
+
+import lombok.Data;
+
+@Data
+public class CouponPaymentVo {
+    /**
+     * 时间
+     */
+    private String time;
+    /**
+     * 金额
+     */
+    private double amount;
+
+}
diff --git a/cloud-server-other/src/main/java/com/dsh/other/controller/StoreController.java b/cloud-server-other/src/main/java/com/dsh/other/controller/StoreController.java
index 2b687cd..5290264 100644
--- a/cloud-server-other/src/main/java/com/dsh/other/controller/StoreController.java
+++ b/cloud-server-other/src/main/java/com/dsh/other/controller/StoreController.java
@@ -223,6 +223,7 @@
      * @return
      */
     @ResponseBody
+    @PostMapping("/store/queryStoreById")
     public Store queryStoreById(@RequestBody Integer id){
         try {
             return storeService.getById(id);

--
Gitblit v1.7.1