Forráskód Böngészése

佣金流水保留1位小数

kk 1 hónapja
szülő
commit
5d30c6f579

+ 4 - 3
game-business/src/main/java/com/game/business/task/AppAgentGameBettingTask.java

@@ -128,7 +128,7 @@ public class AppAgentGameBettingTask {
         BigDecimal gameRate = new BigDecimal((topCommission.getGameRate() / 100.00) + "");
 
         // 总佣金
-        BigDecimal bettingCommission = bettingAmount.multiply(gameRate).setScale(2, RoundingMode.DOWN);
+        BigDecimal bettingCommission = bettingAmount.multiply(gameRate).setScale(1, BigDecimal.ROUND_HALF_DOWN);
 
         AppGameBetting updateBettingCommission = new AppGameBetting();
         updateBettingCommission.setId(appGameBetting.getId());
@@ -152,8 +152,8 @@ public class AppAgentGameBettingTask {
 
             if(appGameCommission.getGameRate() > 0){
                 // 计算佣金
-                userGgameRate = new BigDecimal(((appGameCommission.getGameRate() - indexCommission) / 100.00) + "");
-                userCommission = bettingAmount.multiply(userGgameRate).setScale(2, RoundingMode.DOWN);
+                userGgameRate = new BigDecimal(((appGameCommission.getGameRate() - indexCommission) / 100.00) + "").setScale(4, BigDecimal.ROUND_HALF_DOWN);
+                userCommission = bettingAmount.multiply(userGgameRate).setScale(1, BigDecimal.ROUND_HALF_DOWN);
             }
 
             // 上一次费率
@@ -265,6 +265,7 @@ public class AppAgentGameBettingTask {
 
         // 主播分佣
         double gameRateAmount = appGameBetting.getBettingAmount() * 0.003;
+        gameRateAmount = new BigDecimal(gameRateAmount + "").setScale(1, BigDecimal.ROUND_HALF_DOWN).doubleValue();
 
         // 更新用户余额
         //if(appGameBetting.getBettingType() == 0){

+ 3 - 0
game-business/src/main/java/com/game/business/task/AppGameBettingTask.java

@@ -18,6 +18,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Component;
 
+import java.math.BigDecimal;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -302,6 +303,7 @@ public class AppGameBettingTask {
             List<String> bettingItemsList = Arrays.asList(bettingItems);
 
             double bettingAmount = appGameBetting.getBettingAmount() * appGameBetting.getBettingMultiple();
+            bettingAmount = new BigDecimal(bettingAmount + "").setScale(2, BigDecimal.ROUND_HALF_DOWN).doubleValue();
 
             if(appGameBetting.getBettingGameType() == 0){
                 if(!bettingItemsList.contains(appGameBetting.getBettingItem())){
@@ -337,6 +339,7 @@ public class AppGameBettingTask {
                         AppGameItemBettingVO appGameItemBettingVO = itemList.get(k);
                         if(bettingItemsList.contains(appGameItemBettingVO.getBettingItem())){
                             bettingAmount = appGameBetting.getBettingAmount() * appGameItemBettingVO.getBettingMultiple();
+                            bettingAmount = new BigDecimal(bettingAmount + "").setScale(2, BigDecimal.ROUND_HALF_DOWN).doubleValue();
                             break;
                         }
                     }

+ 3 - 0
game-business/src/main/java/com/game/business/task/AppGameLotteryTask.java

@@ -16,6 +16,7 @@ import com.game.common.core.redis.RedisCache;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
+import java.math.BigDecimal;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Date;
@@ -91,6 +92,7 @@ public class AppGameLotteryTask {
             List<String> bettingItemsList = Arrays.asList(bettingItems);
 
             double bettingAmount = appGameBetting.getBettingAmount() * appGameBetting.getBettingMultiple();
+            bettingAmount = new BigDecimal(bettingAmount + "").setScale(2, BigDecimal.ROUND_HALF_DOWN).doubleValue();
 
             if(appGameBetting.getBettingGameType() == 0){
                 if(!bettingItemsList.contains(appGameBetting.getBettingItem())){
@@ -126,6 +128,7 @@ public class AppGameLotteryTask {
                         AppGameItemBettingVO appGameItemBettingVO = itemList.get(k);
                         if(bettingItemsList.contains(appGameItemBettingVO.getBettingItem())){
                             bettingAmount = appGameBetting.getBettingAmount() * appGameItemBettingVO.getBettingMultiple();
+                            bettingAmount = new BigDecimal(bettingAmount + "").setScale(2, BigDecimal.ROUND_HALF_DOWN).doubleValue();
                             break;
                         }
                     }