From 5fa6e6f8410ef9d057174bcff2a3c5038c54a551 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期日, 27 四月 2025 18:41:20 +0800
Subject: [PATCH] bug修改

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TPayOrderServiceImpl.java |   26 +++++++++++++++++++++-----
 1 files changed, 21 insertions(+), 5 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 4d6ed9f..11cd70a 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
@@ -1,5 +1,6 @@
 package com.ruoyi.system.service.impl;
 
+import com.alibaba.fastjson2.JSONObject;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.constant.AmountConstant;
 import com.ruoyi.common.exception.ServiceException;
@@ -15,12 +16,14 @@
 import com.ruoyi.system.service.TOrderBillService;
 import com.ruoyi.system.service.TPayOrderService;
 import com.ruoyi.system.service.TTenantService;
+import com.taxi591.bankapi.BankProperties;
 import org.apache.poi.ss.formula.functions.T;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.math.BigDecimal;
 import java.math.RoundingMode;
+import java.net.URLEncoder;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.stream.Collectors;
@@ -53,7 +56,15 @@
 
 
     public String createAppletUrl(String orderNo){
-        return ""+orderNo;
+        JSONObject param = new JSONObject();
+        param.put("input1",orderNo);
+        StringBuffer sb = new StringBuffer();
+        sb.append(BankProperties.H5_BANK_URL)
+                .append("?code=").append("JF-EPAY2025030510983")
+                .append("&userInput=")
+                .append(URLEncoder.encode(param.toJSONString()))
+                .append("&showBill=0");
+        return sb.toString();
     }
 
     @Override
@@ -69,12 +80,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("该账单已缴费");
             }
-            if (rent>dto.getAmount()){
+            if (rent<dto.getAmount()){
                 throw new ServiceException("支付金额超过了账单欠费金额");
             }
 
@@ -105,7 +117,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("账单已缴费");
         }

--
Gitblit v1.7.1