From 0ab9dfd8f122195e4e9f09bd50c59e0a47450bec Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期三, 19 三月 2025 15:50:03 +0800
Subject: [PATCH] fix: resolve merge conflicts in .gitignore

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TPayOrderServiceImpl.java |   22 +++++++++++++---------
 1 files changed, 13 insertions(+), 9 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TPayOrderServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TPayOrderServiceImpl.java
index 9237241..c8d77eb 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TPayOrderServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TPayOrderServiceImpl.java
@@ -47,10 +47,7 @@
 
 
     public long caculateRentFee(TBill bill){
-        return bill.getPayableFeesMoney().add(bill.getPayableFeesPenalty())
-                .subtract(bill.getActualMoney())
-                .multiply(AmountConstant.b100)
-                .setScale(0, RoundingMode.HALF_DOWN)
+        return bill.getOutstandingMoney()
                 .longValue();
     }
 
@@ -72,12 +69,13 @@
             if (bill == null) {
                 throw new ServiceException("账单不存在");
             }
-            //计算欠费金额:租金+违约金-实收金额
-            long rent = caculateRentFee(bill);
+            //欠费金额转成单位分比较
+            long rent = bill.getOutstandingMoney().multiply(AmountConstant.b100)
+                    .setScale(2,RoundingMode.HALF_DOWN).longValue();
             if (rent==0){
-                throw new ServiceException("该订单已缴费");
+                throw new ServiceException("该账单已缴费");
             }
-            if (rent>dto.getAmount()){
+            if (rent<dto.getAmount()){
                 throw new ServiceException("支付金额超过了账单欠费金额");
             }
 
@@ -86,6 +84,7 @@
             order.setAmount(dto.getAmount());
             order.setUserId(user.getId());
             order.setPhone(user.getPhone());
+            order.setOpenId(dto.getOpenId());
             order.setUserName(user.getResidentName());
             save(order);
             TOrderBill tOrderBill = new TOrderBill();
@@ -107,7 +106,11 @@
             orderBills.add(new TOrderBill(orderNo,bill.getId()));
             return bill;
         }).collect(Collectors.toList());
-        long sumRent = bills.stream().mapToLong((bill) -> caculateRentFee(bill)).sum();
+        //欠费金额转成单位分比较
+        long sumRent = bills.stream().mapToLong((bill)
+                -> bill.getOutstandingMoney().multiply(AmountConstant.b100)
+                .setScale(2,RoundingMode.HALF_DOWN).longValue())
+                .sum();
         if (sumRent==0){
             throw new ServiceException("账单已缴费");
         }
@@ -119,6 +122,7 @@
         order.setAmount(dto.getAmount());
         order.setUserId(user.getId());
         order.setPhone(user.getPhone());
+        order.setOpenId(dto.getOpenId());
         order.setUserName(user.getResidentName());
         save(order);
         tOrderBillService.saveBatch(orderBills);

--
Gitblit v1.7.1