Ver código fonte

保存会员最新聘级

kevin_zhangl 3 anos atrás
pai
commit
39c7621125

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

@@ -3618,6 +3618,7 @@ class BonusCalc extends BaseObject {
                 $bonus['BONUS_TOTAL'] = $bonus['BONUS_TOTAL'] - $blueBonusGL - $blueBonusYJ;
                 // 共享奖最后一起算,所以总原奖金中,需要加上整个月的数据
                 $bonus['BONUS_TOTAL'] = $bonus['BONUS_TOTAL'] + $oriGxMonthBonus;
+                $empLv = $userBS['LEVEL_ID'] ?? $empLv;
             } else {
                 // 蓝星奖原奖金在扣管理费的时候被加入到了BONUS_TOTAL,需要再减去原奖金
                 $oriBonusBs = isset($bonus['ORI_BONUS_BS']) && $bonus['ORI_BONUS_BS'] > 0 ? $bonus['ORI_BONUS_BS'] : 0;
@@ -3625,6 +3626,7 @@ class BonusCalc extends BaseObject {
                 $oriBonusBsYJCF = isset($bonus['ORI_BONUS_ABBR']) && $bonus['ORI_BONUS_ABBR'] > 0 ? $bonus['ORI_BONUS_ABBR'] : 0;
                 $oriBonusBsGLCF = isset($bonus['ORI_BONUS_MNT']) && $bonus['ORI_BONUS_MNT'] > 0 ? $bonus['ORI_BONUS_MNT'] : 0;
                 $bonus['BONUS_TOTAL'] = $bonus['BONUS_TOTAL'] - $oriBonusBs - $oriBonusBsYJCF - $oriBonusBsGLCF;
+                $empLv = EmployLevel::getDefaultLevelId();
             }
         }
         

+ 9 - 0
common/helpers/bonus/BonusSend.php

@@ -462,6 +462,15 @@ class BonusSend extends BaseObject {
             }
             unset($allData);
         }
+
+        // 刷新会员EmpLv为0
+        User::updateAll([
+            'LAST_EMP_LV' => '',
+            'LAST_EMP_LV_UPDATED_AT' => time(),
+            'LAST_EMP_LV_UPDATED_PERIOD' => $this->_periodNum,
+        ], 'LAST_EMP_LV_UPDATED_PERIOD < :PERIOD_NUM AND LAST_EMP_LV <> ""', [':PERIOD_NUM' => $this->_periodNum]);
+        User::deleteAllBaseInfoFromRedis();
+
         return true;
     }
 

+ 8 - 0
common/models/User.php

@@ -267,6 +267,14 @@ class User extends \common\components\ActiveRecord
         Yii::$app->redis->hdel(Cache::USER_INFO_KEY, $userId);
     }
 
+    /**
+     * 批量删除用户
+     * @return void
+     */
+    public static function deleteAllBaseInfoFromRedis() {
+        Yii::$app->redis->del(Cache::USER_INFO_KEY);
+    }
+
     /**
      * 获取会员的部分信息并对敏感信息加密
      * @param $userId