Browse Source

加上管理奖金

zxiansheng 4 years ago
parent
commit
3064ebfe00
1 changed files with 17 additions and 6 deletions
  1. 17 6
      common/helpers/bonus/BonusCalc.php

+ 17 - 6
common/helpers/bonus/BonusCalc.php

@@ -272,7 +272,7 @@ class BonusCalc extends BaseObject {
             // echo('计算达标奖'.($this->_sysConfig['openJXS']['VALUE']?'完成':'关闭').',耗时:' . round($t18 - $t17, 3) . ',内存使用:' . (round(memory_get_usage() / 1024 / 1024, 3)) . 'MB' . PHP_EOL);
             // $this->_updatePercent(65);
 
-            // 蓝星奖入库,实际上是插入有奖金会员数据缓存中.蓝星奖即是新的管理奖
+            // 蓝星奖入库,实际上是插入有奖金会员数据缓存中.
             //if($this->_sysConfig['openGL']['VALUE']) {
                 $this->calcBonusBsGL(); // ===============================todo===================
             // }
@@ -1582,7 +1582,7 @@ class BonusCalc extends BaseObject {
     }
 
     /**
-     * 蓝星奖金/即新的管理奖金
+     * 蓝星管理奖金
      * @param int $offset
      * @return bool
      * @throws \yii\db\Exception
@@ -3076,16 +3076,27 @@ class BonusCalc extends BaseObject {
                 $userBS = is_array($userBS) ? reset($userBS) : [];
                 $blueStartAmount = isset($userBS['AMOUNT']) && !empty($userBS['AMOUNT']) ? $userBS['AMOUNT'] : 0; // 奖金
                 $buleStartOriBonus = isset($userBS['ORI_BONUS']) && !empty($userBS['ORI_BONUS']) ? $userBS['ORI_BONUS'] : 0; // 原奖金
-                $buleStartManageTax = isset($userBS['MANAGE_TAX']) && !empty($userBS['MANAGE_TAX']) ? $userBS['MANAGE_TAX'] : 0; // 管理费
-                $monthSumData = CalcBonus::findUseSlaves()->select('SUM(BONUS_GX) AS BONUS_GX_SUM')->where('USER_ID=:USER_ID AND CALC_MONTH=:CALC_MONTH', ['USER_ID'=>$userId, 'CALC_MONTH'=>$this->_calcYearMonth])->asArray()->one();
+                // $buleStartManageTax = isset($userBS['MANAGE_TAX']) && !empty($userBS['MANAGE_TAX']) ? $userBS['MANAGE_TAX'] : 0; // 管理费
+                $monthSumData = CalcBonus::findUseSlaves()
+                ->select('SUM(BONUS_GX) AS BONUS_GX_SUM, SUM(BONUS_GL) AS BONUS_GL_SUM')
+                ->where('USER_ID=:USER_ID AND CALC_MONTH=:CALC_MONTH', 
+                    [
+                        'USER_ID'=>$userId, 
+                        'CALC_MONTH'=>$this->_calcYearMonth
+                    ]
+                )
+                ->asArray()
+                ->one();
                 $bonusGxSum = $monthSumData['BONUS_GX_SUM'] ?? 0;
+                $bonusGlSum = $monthSumData['BONUS_GL_SUM'] ?? 0;
                 $realBonusGx += $bonusGxSum + $bonus['BONUS_GX'];
+                $realBonusGl += $bonusGlSum + $bonus['BONUS_GL'];
                 $realBonusBs = $blueStartAmount; // 蓝星奖直接取数据库中算好的值
-                $bonusReal += $realBonusGx + $realBonusBs;
+                $bonusReal += $realBonusGx + $realBonusBs + $realBonusGl;
                 $exchangePoints = isset($userBS['PRODUCT_POINT']) && !empty($userBS['PRODUCT_POINT']) ? $userBS['PRODUCT_POINT'] : 0; // 兑换积分
 
                 $bonus['BONUS_TOTAL'] = $bonus['BONUS_TOTAL'] + $buleStartOriBonus; // 管理奖在存储过程计算,这里单独加上管理奖(即蓝星奖)
-                unset($monthSumData, $bonusGxSum);
+                unset($monthSumData, $bonusGxSum, $bonusGlSum);
             }
         }
         // if( $this->_isCalcMonth ) {