From 15abe034d8d3e2fa86b2f3bf1bdbdb718a9a0909 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Wed, 17 Apr 2024 14:35:06 +0800
Subject: [PATCH] 55测试环境

---
 src/main/java/com/xcong/excoin/modules/yunding/service/Impl/XchProfitServiceImpl.java |   16 ++++++++--------
 1 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/modules/yunding/service/Impl/XchProfitServiceImpl.java b/src/main/java/com/xcong/excoin/modules/yunding/service/Impl/XchProfitServiceImpl.java
index 8dcf79c..16eb6ef 100644
--- a/src/main/java/com/xcong/excoin/modules/yunding/service/Impl/XchProfitServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/yunding/service/Impl/XchProfitServiceImpl.java
@@ -103,9 +103,9 @@
         if (CollUtil.isNotEmpty(orders)) {
             for (YdOrderEntity order : orders) {
                 if ("P".equals(order.getYdProductEntity().getProUnit())) {
-                    totalPower = totalPower.add(BigDecimal.valueOf(order.getQuantity() * 1024));
+                    totalPower = totalPower.add(BigDecimal.valueOf(order.getQuantity() * order.getYdProductEntity().getProNum() * 1024));
                 } else {
-                    totalPower = totalPower.add(BigDecimal.valueOf(order.getQuantity()));
+                    totalPower = totalPower.add(BigDecimal.valueOf(order.getQuantity() * order.getYdProductEntity().getProNum()));
                 }
             }
         }
@@ -116,7 +116,7 @@
         } else {
             needPower = basicLevelSetting.getCalculationPower();
         }
-        return totalPower.compareTo(needPower) > 0;
+        return totalPower.compareTo(needPower) >= 0;
     }
 
     /**
@@ -263,11 +263,11 @@
     @Transactional(rollbackFor = Exception.class)
     public void xchProfitDistributor(BigDecimal totalProfit) {
         Date currentDate = new Date();
-        List<YdProductEntity> products = ydProductDao.selectList(null);
+        List<YdProductEntity> products = ydProductDao.selectXchProductList();
         if (CollUtil.isNotEmpty(products)) {
             BigDecimal totalCount = BigDecimal.ZERO;
             for (YdProductEntity product : products) {
-                BigDecimal count = product.getTotalT();
+                BigDecimal count = product.getTotalT().multiply(BigDecimal.valueOf(product.getProNum()));
                 if ("P".equals(product.getProUnit())) {
                     count = count.multiply(BigDecimal.valueOf(1024));
                 }
@@ -294,7 +294,7 @@
                     List<String> inviteIds = StrUtil.split(memberEntity.getRefererIds(), ',');
                     List<MemberEntity> agents = memberDao.selectYdParentAgent(inviteIds);
 
-                    BigDecimal count = BigDecimal.valueOf(order.getQuantity());
+                    BigDecimal count = BigDecimal.valueOf(order.getQuantity() * order.getYdProductEntity().getProNum());
                     if ("P".equals(order.getYdProductEntity().getProUnit())) {
                         count = count.multiply(BigDecimal.valueOf(1024));
                     }
@@ -317,10 +317,10 @@
                         }
                     }
 
+                    BigDecimal partnerAmount = orderProfit.multiply(setting.getPartnerXchRatio());
+                    remainProfit = remainProfit.subtract(partnerAmount);
                     // 合伙人收益
                     if (CollUtil.isNotEmpty(partners)) {
-                        BigDecimal partnerAmount = orderProfit.multiply(setting.getPartnerXchRatio());
-                        remainProfit = remainProfit.subtract(partnerAmount);
                         BigDecimal unitPartnerAmount = partnerAmount.divide(BigDecimal.valueOf(partners.size()), 8, BigDecimal.ROUND_DOWN);
                         for (MemberEntity partner : partners) {
                             String conent = "合伙人XCH分红";

--
Gitblit v1.9.1