Browse Source

feat(admin): 增加支付与退款金额统计功能

- 在支付明细列表查询中增加总支付金额和总退款金额的计算逻辑
- 根据支付状态和退款审核状态累加金额,确保数据准确性
- 记录查询条件和统计结果到日志,便于追踪和分析- 返回数据中添加总支付金额和总退款金额字段
-修复分页查询逻辑,使用PageHelper正确处理分页参数
xw 3 tuần trước cách đây
mục cha
commit
c96f37a9f4

+ 1 - 5
fs-admin/src/main/java/com/fs/course/controller/FsUserCoursePeriodController.java

@@ -141,11 +141,7 @@ public class FsUserCoursePeriodController extends BaseController {
 
     @GetMapping("/getDays")
     public R getDays(FsUserCoursePeriodDays fsUserCoursePeriodDays){
-        // startPage();
-        fsUserCoursePeriodDays.setPageSize(999);
-        if (fsUserCoursePeriodDays.getPageNum() == null || fsUserCoursePeriodDays.getPageNum() == 0) {
-            fsUserCoursePeriodDays.setPageNum(1);
-        }
+//        startPage();
         PageHelper.startPage(fsUserCoursePeriodDays.getPageNum(), fsUserCoursePeriodDays.getPageSize());
         List<FsUserCoursePeriodDays> list = fsUserCoursePeriodDaysService.selectFsUserCoursePeriodDaysList(fsUserCoursePeriodDays);
 

+ 32 - 1
fs-admin/src/main/java/com/fs/hisStore/controller/FsStorePaymentScrmController.java

@@ -86,10 +86,41 @@ public class FsStorePaymentScrmController extends BaseController
             fsStorePayment.setCreateTimeList(fsStorePayment.getCreateTimeRange().split("--"));
         }
         List<FsStorePaymentVO> list = fsStorePaymentService.selectFsStorePaymentListQuery(fsStorePayment);
+        
+        // 计算总支付金额和总退款金额
+        BigDecimal totalPaymentAmount = BigDecimal.ZERO;
+        BigDecimal totalRefundAmount = BigDecimal.ZERO;
+        
         for (FsStorePaymentVO vo : list){
             vo.setUserPhone(ParseUtils.parsePhone(vo.getUserPhone()));
+            
+            // 状态为1(已支付)或-1(已退款)时,累加到总支付金额
+            if (vo.getStatus() != null && (vo.getStatus() == 1 || vo.getStatus() == -1)) {
+                if (vo.getPayMoney() != null) {
+                    totalPaymentAmount = totalPaymentAmount.add(vo.getPayMoney());
+                }
+            }
+            
+            // 状态为-1(已退款)时,累加到总退款金额
+            // 根据规范,只统计退款审核状态为2(审核完成)的退款金额
+            if (vo.getStatus() != null && vo.getStatus() == -1) {
+                if (vo.getRefundAuditStatus() != null && vo.getRefundAuditStatus() == 2) {
+                    if (vo.getRefundMoney() != null) {
+                        totalRefundAmount = totalRefundAmount.add(vo.getRefundMoney());
+                    }
+                }
+            }
         }
-        return getDataTable(list);
+        
+        // 记录查询条件和统计结果
+        logger.info("支付明细列表查询,查询条件:{},查询结果数量:{},总支付金额:{},总退款金额:{}",
+            fsStorePayment, list.size(), totalPaymentAmount, totalRefundAmount);
+        
+        TableDataInfo dataTable = getDataTable(list);
+        dataTable.put("totalPaymentAmount", totalPaymentAmount);
+        dataTable.put("totalRefundAmount", totalRefundAmount);
+        
+        return dataTable;
     }
 
     /**