|
|
@@ -3435,17 +3435,25 @@ class BonusCalc extends BaseObject {
|
|
|
// 不是结算月,则不需要进行聘级调整
|
|
|
return false;
|
|
|
}
|
|
|
- // 从缓存获取分页有收入的会员信息
|
|
|
- $allData = CalcBonusBS::findUseDbCalc()
|
|
|
+ $allData = CalcBonus::findUseDbCalc()
|
|
|
->where('PERIOD_NUM=:PERIOD_NUM', [':PERIOD_NUM' => $this->_periodNum])
|
|
|
- ->groupBy('USER_ID')
|
|
|
->offset($offset)
|
|
|
->limit($this->_limit)
|
|
|
->asArray()
|
|
|
->all();
|
|
|
if ($allData) {
|
|
|
foreach ($allData as $data) {
|
|
|
- $nowBsEmpLv = $data['LEVEL_ID']; // 当前蓝星奖计算(即管理奖) 的等级
|
|
|
+ // 获取蓝星表中的数据
|
|
|
+ $blueBsInfo = CalcBonusBS::findOneAsArray(
|
|
|
+ 'PERIOD_NUM=:PERIOD_NUM AND USER_ID=:USER_ID',
|
|
|
+ [':PERIOD_NUM'=>$this->_periodNum, ':USER_ID'=>$data['USER_ID']]
|
|
|
+ );
|
|
|
+ if (!empty($blueBsInfo)) {
|
|
|
+ $nowBsEmpLv = $blueBsInfo['LEVEL_ID']; // 当前蓝星奖计算(即管理奖) 的等级
|
|
|
+ } else {
|
|
|
+ $nowBsEmpLv = EmployLevel::NO_LEVEL_ID;
|
|
|
+ }
|
|
|
+
|
|
|
// 修改AR_CALC_BONUS的LAST_EMP_LV聘级,修改奖金流水的聘级AR_FLOW_BONUS表的LAST_EMP_LV
|
|
|
// 期结算结果
|
|
|
CalcBonus::updateAll(['LAST_EMP_LV' => $nowBsEmpLv], 'USER_ID=:USER_ID AND PERIOD_NUM=:PERIOD_NUM',
|