From 7a38456f48d541d737fb46d19f49484b67a806d0 Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期一, 11 五月 2026 13:54:24 +0800
Subject: [PATCH] 小程序   接口开发

---
 server/dmmall_service/src/main/java/com/doumee/service/business/impl/IntegralServiceImpl.java   |   20 ++++++++++++++++++--
 server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java |    8 +++++---
 2 files changed, 23 insertions(+), 5 deletions(-)

diff --git a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java
index 34593eb..17a94a0 100644
--- a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java
+++ b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java
@@ -1586,7 +1586,8 @@
                 integralBack = payAmount.divide(platformConfigDTO.getReturnShopIntegral(),2,BigDecimal.ROUND_DOWN);
             }
         }
-        return integralBack;
+        //绉垎鑾峰彇鍚戜笅鍙栨暣
+        return integralBack.setScale(0, BigDecimal.ROUND_DOWN);
     }
 
 
@@ -1642,8 +1643,9 @@
         }
         //鍓╀綑绉垎鍊�
         orderPayConfirmResponse.setSurplusIntegral(totalIntegral);
-        //瀹為檯鎶垫墸浣跨敤绉垎
-        orderPayConfirmResponse.setDeductIntegral(totalIntegral.compareTo(maxDeductionIntegral)<=Constants.ZERO?totalIntegral:maxDeductionIntegral);
+        //瀹為檯鎶垫墸浣跨敤绉垎锛堝悜涓婂彇鏁达級
+        BigDecimal deductIntegralValue = totalIntegral.compareTo(maxDeductionIntegral)<=Constants.ZERO?totalIntegral:maxDeductionIntegral;
+        orderPayConfirmResponse.setDeductIntegral(deductIntegralValue.setScale(0, BigDecimal.ROUND_UP));
         return realDeductionCash;
 
     }
diff --git a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/IntegralServiceImpl.java b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/IntegralServiceImpl.java
index 3b1fa6a..cf285ec 100644
--- a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/IntegralServiceImpl.java
+++ b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/IntegralServiceImpl.java
@@ -150,6 +150,14 @@
     @Override
     @Transactional(rollbackFor = {Exception.class, BusinessException.class})
     public Integer dealIntegral(DealIntegralRequest dealIntegralRequest,Member member) {
+        // 绉垎鍙栨暣锛氳幏鍙栧悜涓嬪彇鏁达紝娑堣�楀悜涓婂彇鏁�
+        if(dealIntegralRequest.getIntegralNum() != null){
+            if(Constants.equalsInteger(dealIntegralRequest.getDealType(),Constants.ZERO)){
+                dealIntegralRequest.setIntegralNum(dealIntegralRequest.getIntegralNum().setScale(0, BigDecimal.ROUND_DOWN));
+            }else{
+                dealIntegralRequest.setIntegralNum(dealIntegralRequest.getIntegralNum().setScale(0, BigDecimal.ROUND_UP));
+            }
+        }
         if(member == null){
               member = memberMapper.selectById(dealIntegralRequest.getMemberId());
         }
@@ -163,7 +171,7 @@
         integral.setIsdeleted(Constants.ZERO);
         integral.setTitle(dealIntegralRequest.getIntegralObjType().getName());
         String info = dealIntegralRequest.getIntegralObjType().getNoteinfo();
-        info = info.replace("${param}",dealIntegralRequest.getIntegralNum()+"");
+        info = info.replace("${param}",dealIntegralRequest.getIntegralNum().toBigInteger().toString());
         if(StringUtils.isNotBlank(dealIntegralRequest.getParam1())){
             info = info .replace("${param1}",dealIntegralRequest.getParam1());
         }
@@ -196,6 +204,14 @@
 
     @Override
     public Integer dealShopIntegral(DealIntegralRequest dealIntegralRequest,Shop shop) {
+        // 绉垎鍙栨暣锛氳幏鍙栧悜涓嬪彇鏁达紝娑堣�楀悜涓婂彇鏁�
+        if(dealIntegralRequest.getIntegralNum() != null){
+            if(Constants.equalsInteger(dealIntegralRequest.getDealType(),Constants.ZERO)){
+                dealIntegralRequest.setIntegralNum(dealIntegralRequest.getIntegralNum().setScale(0, BigDecimal.ROUND_DOWN));
+            }else{
+                dealIntegralRequest.setIntegralNum(dealIntegralRequest.getIntegralNum().setScale(0, BigDecimal.ROUND_UP));
+            }
+        }
         if(shop ==null){
             shop = shopMapper.selectById(dealIntegralRequest.getMemberId());
         }
@@ -208,7 +224,7 @@
         integral.setIsdeleted(Constants.ZERO);
         integral.setTitle( dealIntegralRequest.getIntegralObjType()!=null?dealIntegralRequest.getIntegralObjType().getName():"");
         String info = dealIntegralRequest.getIntegralObjType().getNoteinfo();
-        info = info.replace("${param}",dealIntegralRequest.getIntegralNum().toString());
+        info = info.replace("${param}",dealIntegralRequest.getIntegralNum().toBigInteger().toString());
         if(StringUtils.isNotBlank(dealIntegralRequest.getParam1())){
             info = info .replace("${param1}",dealIntegralRequest.getParam1());
         }

--
Gitblit v1.9.3