Jelajahi Sumber

1348 蓝星奖拆分蓝星管理奖/蓝星业绩奖

kevin_zhangl 3 tahun lalu
induk
melakukan
83c47b413f

+ 66 - 18
backendApi/modules/v1/models/lists/bonus/PeriodBonusList.php

@@ -335,42 +335,90 @@ class PeriodBonusList extends \common\libs\dataList\DataList implements DataList
                         'prop'=>'ORI_BONUS_QY_BD',
                     ],
                 ],
-                'BONUS_BS' => [
+//                'BONUS_BS' => [
+//                    'header' => '蓝星管理奖',
+//                    'value' => function($row) {
+//                        return (new Price([
+//                            'value' => $row['BONUS_BS'],
+//                        ]))->result();
+//                    },
+//                    'headerOther' => [
+//                        'width' => '120',
+//                        'prop'=>'BONUS_BS',
+//                    ],
+//                ],
+//                'ORI_BONUS_BS' => [
+//                    'header' => '蓝星管理奖原金额',
+//                    'value' => function($row) {
+//                        return (new Price([
+//                            'value' => $row['ORI_BONUS_BS'],
+//                        ]))->result();
+//                    },
+//                    'headerOther' => [
+//                        'width' => '120',
+//                        'prop'=>'ORI_BONUS_BS',
+//                    ],
+//                ],
+                // 'REAL_BONUS_BS' => [
+                //     'header' => '实发蓝星管理奖',
+                //     'value' => function($row) {
+                //         return (new Price([
+                //             'value' => $row['REAL_BONUS_BS'],
+                //         ]))->result();
+                //     },
+                //     'headerOther' => [
+                //         'width' => '120',
+                //         'prop'=>'REAL_BONUS_BS',
+                //     ],
+                // ],
+                'BONUS_BS_MNT' => [
                     'header' => '蓝星管理奖',
                     'value' => function($row) {
                         return (new Price([
-                            'value' => $row['BONUS_BS'],
+                            'value' => $row['BONUS_BS_MNT'],
                         ]))->result();
                     },
                     'headerOther' => [
                         'width' => '120',
-                        'prop'=>'BONUS_BS',
+                        'prop' => 'BONUS_BS_MNT',
                     ],
                 ],
-                'ORI_BONUS_BS' => [
+                'ORI_BONUS_BS_MNT' => [
                     'header' => '蓝星管理奖原金额',
                     'value' => function($row) {
                         return (new Price([
-                            'value' => $row['ORI_BONUS_BS'],
+                            'value' => $row['ORI_BONUS_BS_MNT'],
                         ]))->result();
                     },
                     'headerOther' => [
                         'width' => '120',
-                        'prop'=>'ORI_BONUS_BS',
+                        'prop' => 'ORI_BONUS_BS_MNT',
+                    ],
+                ],
+                'BONUS_BS_ABBR' => [
+                    'header' => '蓝星业绩奖',
+                    'value' => function($row) {
+                        return (new Price([
+                            'value' => $row['BONUS_BS_ABBR'],
+                        ]))->result();
+                    },
+                    'headerOther' => [
+                        'width' => '120',
+                        'prop' => 'BONUS_BS_ABBR',
+                    ],
+                ],
+                'ORI_BONUS_BS_ABBR' => [
+                    'header' => '蓝星业绩奖原金额',
+                    'value' => function($row) {
+                        return (new Price([
+                            'value' => $row['ORI_BONUS_BS_ABBR'],
+                        ]))->result();
+                    },
+                    'headerOther' => [
+                        'width' => '120',
+                        'prop' => 'ORI_BONUS_BS_ABBR',
                     ],
                 ],
-                // 'REAL_BONUS_BS' => [
-                //     'header' => '实发蓝星管理奖',
-                //     'value' => function($row) {
-                //         return (new Price([
-                //             'value' => $row['REAL_BONUS_BS'],
-                //         ]))->result();
-                //     },
-                //     'headerOther' => [
-                //         'width' => '120',
-                //         'prop'=>'REAL_BONUS_BS',
-                //     ],
-                // ],
                 'BONUS_GX' => [
                     'header' => '共享奖',
                     'value' => function($row) {

+ 34 - 2
common/helpers/bonus/BonusCalc.php

@@ -1642,8 +1642,21 @@ class BonusCalc extends BaseObject {
                 $realBonusBs = $deductData['surplus']; // 扣除管理费和复消积分后的实发蓝星奖金
                 $manageTax = $deductData['manageTax']; // 管理费
                 $point = $deductData['reConsumePoints'];// 复消积分
+
+                // 蓝星管理奖
+                $deductMntData = $this->deduct($user['USER_ID'], $user['ORI_BONUS_MNT']);
+                // 蓝星业绩奖
+                $deductAbbrData = $this->deduct($user['USER_ID'], $user['ORI_BONUS_ABBR']);
+
                 // 更新蓝星奖金存储过程的实发金额数据
-                CalcBonusBS::updateAll(['AMOUNT' => $realBonusBs, 'MANAGE_TAX' => $manageTax, 'RECONSUME_POINTS' => $point], 
+                CalcBonusBS::updateAll([
+                    'AMOUNT' => $realBonusBs,
+                    'MANAGE_TAX' => $manageTax,
+                    'RECONSUME_POINTS' => $point,
+                    'AMOUNT_MNT' => $deductMntData['surplus'] ?? 0,
+                    'MANAGE_TAX_MNT' => $deductMntData['manageTax'] ?? 0,
+                    'AMOUNT_ABBR' => $deductAbbrData['surplus'] ?? 0,
+                    'MANAGE_TAX_ABBR' => $deductAbbrData['manageTax'] ?? 0],
                 'USER_ID=:USER_ID AND PERIOD_NUM=:PERIOD_NUM', 
                 [':USER_ID' => $user['USER_ID'], ':PERIOD_NUM' => $this->_periodNum]);
             }
@@ -3232,6 +3245,12 @@ class BonusCalc extends BaseObject {
         $buleStartOriBonus = 0;
         $buleStartManageTax = 0;
         $exchangePoints = 0; // 蓝星奖管理奖. 产生的兑换积分
+
+        $realBonusBsMnt = 0; // 蓝星管理奖. BlueStar
+        $blueStartOriBonusMnt = 0;
+
+        $realBonusBsAbbr = 0; // 蓝星业绩奖. BlueStar
+        $blueStartOriBonusAbbr = 0;
         if( $this->_isCalcMonth ) {
             //查看是否复消300
             $monthPerfData = CalcCache::nowMonthPerf($userId, $this->_periodNum);
@@ -3250,7 +3269,7 @@ class BonusCalc extends BaseObject {
                         ':USER_ID' => $userId
                     ]
                 )
-                ->select('AMOUNT,ORI_BONUS,MANAGE_TAX,LEVEL_ID,PRODUCT_POINT')
+                ->select('AMOUNT,ORI_BONUS,MANAGE_TAX,LEVEL_ID,PRODUCT_POINT,AMOUNT_MNT,ORI_BONUS_MNT,MANAGE_TAX_MNT,AMOUNT_ABBR,ORI_BONUS_ABBR,MANAGE_TAX_ABBR')
                 ->limit(1)
                 ->orderBy('CREATED_AT DESC')
                 ->asArray()
@@ -3259,6 +3278,13 @@ class BonusCalc extends BaseObject {
                 $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; // 管理费
+
+                $realBonusBsMnt = $userBS['AMOUNT_MNT'] ?? 0; // 蓝星管理奖. 奖金
+                $blueStartOriBonusMnt = $userBS['ORI_BONUS_MNT'] ?? 0; // 蓝星管理奖. 原奖金
+
+                $realBonusBsAbbr = $userBS['AMOUNT_ABBR'] ?? 0; // 蓝星业绩奖. 奖金
+                $blueStartOriBonusAbbr = $userBS['ORI_BONUS_ABBR'] ?? 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', 
@@ -3372,6 +3398,12 @@ class BonusCalc extends BaseObject {
             'BONUS_BS' => $realBonusBs, // 新的管理奖金,即蓝星管理奖
             'ORI_BONUS_BS' => $buleStartOriBonus, // 蓝星管理奖金原奖金,即包含管理费
             'REAL_BONUS_BS' => $realBonusBs, // 实发蓝星管理奖金
+            'BONUS_BS_MNT' => $realBonusBsMnt, // 蓝星管理奖
+            'ORI_BONUS_BS_MNT' => $blueStartOriBonusMnt, // 蓝星管理奖金原奖金,即包含管理费
+            'REAL_BONUS_BS_MNT' => $realBonusBsMnt, // 实发蓝星管理奖金
+            'BONUS_BS_ABBR' => $realBonusBsAbbr, // 蓝星业绩奖
+            'ORI_BONUS_BS_ABBR' => $blueStartOriBonusAbbr, // 蓝星业绩奖金原奖金,即包含管理费
+            'REAL_BONUS_BS_ABBR' => $realBonusBsAbbr, // 实发蓝星业绩奖金
             'ORI_BONUS_GL_BD' => $bonus['ORI_BONUS_GL_BD'],
             'ORI_BONUS_GL_FX' => $bonus['ORI_BONUS_GL_FX'],
             'ORI_BONUS_QY' => $bonus['ORI_BONUS_QY'],

+ 5 - 1
common/models/CalcBonus.php

@@ -233,7 +233,11 @@ class CalcBonus extends \common\components\ActiveRecord
             'MANAGE_TAX'=> '管理费',
             'EXCHANGE_POINTS' => '兑换积分',
             'BONUS_BS' => '蓝星奖',
-            'ORI_BONUS_BS' => '蓝星原奖金'
+            'ORI_BONUS_BS' => '蓝星原奖金',
+            'BONUS_BS_MNT' => '蓝星管理奖',
+            'ORI_BONUS_BS_MNT' => '蓝星管理奖原奖金',
+            'BONUS_BS_ABBR' => '蓝星业绩奖',
+            'ORI_BONUS_BS_ABBR' => '蓝星业绩奖原奖金'
         ];
     }
 

+ 6 - 0
common/models/CalcBonusBS.php

@@ -73,6 +73,12 @@ class CalcBonusBS extends \common\components\ActiveRecord
             'LOGS' => '日志',
             'ORI_BONUS' => '原奖金',
             'MANAGE_TAX' => '管理费',
+            'AMOUNT_MNT' => '蓝星管理奖金额',
+            'ORI_BONUS_MNT' => '蓝星管理奖原奖金',
+            'MANAGE_TAX_MNT' => '蓝星管理奖管理费',
+            'AMOUNT_ABBR' => '蓝星业绩奖金额',
+            'ORI_BONUS_ABBR' => '蓝星业绩奖原奖金',
+            'MANAGE_TAX_ABBR' => '蓝星业绩奖管理费',
         ];
     }
 }