Przeglądaj źródła

记录团队奖封顶前的金额

root 3 lat temu
rodzic
commit
b44fe2d3bf

+ 5 - 0
common/helpers/bonus/BonusCalc.php

@@ -1230,9 +1230,12 @@ class BonusCalc extends BaseObject {
                 if ($touchBonusArr['touchBonus'] <= 0) continue;
 
                 $teamBonus = $touchBonusArr['touchBonus'];
+                $capBonusQy = $teamBonus; // 封顶前的奖金
                 //判断级别上限,个人奖金封顶限制
                 $teamBonus = $this->declarationLevelCap($teamBonus, $userId, $userBaseInfo['DEC_LV']);
                 if( $teamBonus <= 0 ) continue;
+                // 将封顶前的金额加入用户奖金缓存中,此金额不能发放(总奖金,总实际奖金) 
+                CalcCache::bonus($userId, $periodNum, 'CAPPED_BONUS_QY', $capBonusQy); 
 
                 $teamBonus = $this->bonusTotalLimit($teamBonus, $userId, $userBaseInfo['REC_NUM'], $userBaseInfo['ZC_AMOUNT']);
                 if( $teamBonus <= 0 ) continue;
@@ -1254,6 +1257,7 @@ class BonusCalc extends BaseObject {
                 $insertBonusData[] = [
                     'ID' => SnowFake::instance()->generateId(),
                     'USER_ID' => $userId,
+                    'ORI_CAPPED_BONUS_QY' => $capBonusQy,
                     'LAST_DEC_LV' => $userBaseInfo['DEC_LV'],
                     'LAST_EMP_LV' => $userBaseInfo['EMP_LV'],
                     'LAST_STAR_LV' => $starCrown['ID'],
@@ -3664,6 +3668,7 @@ class BonusCalc extends BaseObject {
             'ORI_BONUS_YC' => $bonus['ORI_BONUS_YC'] + $bonus['ORI_BONUS_YC_EXTRA'],
             'ORI_BONUS_VIP' => $bonus['ORI_BONUS_VIP'],
             'ORI_BONUS_STANDARD' => $standardBonus,
+            'ORI_CAPPED_BONUS_QY' => $bonus['ORI_CAPPED_BONUS_QY'], // 团队奖封顶前的奖金
 
             'BONUS_TOURISM' => $tourismBonus, // 旅游奖
             'BONUS_GARAGE' => $garageBonus, // 车房奖

+ 3 - 0
common/helpers/bonus/CalcCache.php

@@ -103,12 +103,14 @@ class CalcCache {
     const INCOME_BONUS_TRAVEL = 'BONUS_TRAVEL';
     const INCOME_BONUS_CAR = 'BONUS_CAR';
     const INCOME_BONUS_HOUSE = 'BONUS_HOUSE';
+    const CAPPED_BONUS_QY = 'CAPPED_BONUS_QY'; // 团队奖封顶前的金额
     const INCOME_BONUS_LIST = [
 //        self::INCOME_TG_BONUS,
 //        self::INCOME_XF_BONUS,
 //        self::INCOME_YJ_BONUS,
 //        self::INCOME_QY_BONUS,
         self::INCOME_QY_BONUS_BD,
+        self::CAPPED_BONUS_QY,
 //        self::INCOME_QY_BONUS_FX,
     ];
     const NOT_SEND_BONUS_LIST = [
@@ -1501,6 +1503,7 @@ class CalcCache {
             'BONUS_TOTAL' => 0,
             'RECONSUME_POINTS' => 0,
             'MANAGE_TAX' => 0,
+            'ORI_CAPPED_BONUS_QY' => 0,// 团队奖,封顶前金额
 
             //没有用到的
             'BONUS_FX' => 0,

+ 0 - 0
common/models/CalcBonusTourism.php


+ 0 - 0
common/models/FlowTourismPoints.php


+ 0 - 0
common/models/StarCrownLevel.php


+ 0 - 0
common/models/StarCrownLevelForm.php