|
|
@@ -24,7 +24,7 @@ class PushBaseDataToCalc extends BaseBusiness
|
|
|
{
|
|
|
const BASE_INFO_METHODS = [
|
|
|
//--- 用户表
|
|
|
- 'user' => ['separately' => true, 'table' => 'AR_USER', 'field' => [
|
|
|
+ 'user' => ['table' => 'AR_USER', 'field' => [
|
|
|
'ID',
|
|
|
'USER_NAME',
|
|
|
'REAL_NAME',
|
|
|
@@ -37,6 +37,7 @@ class PushBaseDataToCalc extends BaseBusiness
|
|
|
'DEC_ID',
|
|
|
'DEC_ROLE_ID',
|
|
|
'LAST_DEC_LV',
|
|
|
+ 'LAST_EMP_LV',
|
|
|
'IS_STUDIO',
|
|
|
'LAST_CROWN_LV',
|
|
|
'DELETED',
|
|
|
@@ -420,54 +421,54 @@ class PushBaseDataToCalc extends BaseBusiness
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
- public function user($table, $fieldArray, $db)
|
|
|
- {
|
|
|
- $field = '`' . implode('`, `', $fieldArray) . '`,null as LAST_EMP_LV';
|
|
|
- $fieldArray[] = 'LAST_EMP_LV';
|
|
|
- $_offset = 0;
|
|
|
-
|
|
|
- $forwardMonthPeriod = Period::find()
|
|
|
- ->where('IS_MONTH=1 AND PERIOD_NUM<:PERIOD_NUM', [':PERIOD_NUM' => $this->_periodNum])
|
|
|
- ->orderBy('PERIOD_NUM DESC')->asArray()->one();
|
|
|
-
|
|
|
- $forwardPeriodNum = $forwardMonthPeriod['PERIOD_NUM'];
|
|
|
-
|
|
|
-// $employeeLevelIds = CalcBonusBS::findAllAsArray(
|
|
|
+// public function user($table, $fieldArray, $db)
|
|
|
+// {
|
|
|
+// $field = '`' . implode('`, `', $fieldArray) . '`,null as LAST_EMP_LV';
|
|
|
+// $fieldArray[] = 'LAST_EMP_LV';
|
|
|
+// $_offset = 0;
|
|
|
+//
|
|
|
+// $forwardMonthPeriod = Period::find()
|
|
|
+// ->where('IS_MONTH=1 AND PERIOD_NUM<:PERIOD_NUM', [':PERIOD_NUM' => $this->_periodNum])
|
|
|
+// ->orderBy('PERIOD_NUM DESC')->asArray()->one();
|
|
|
+//
|
|
|
+// $forwardPeriodNum = $forwardMonthPeriod['PERIOD_NUM'];
|
|
|
+//
|
|
|
+//// $employeeLevelIds = CalcBonusBS::findAllAsArray(
|
|
|
+//// 'PERIOD_NUM=:PERIOD_NUM ', [':PERIOD_NUM' => $forwardPeriodNum]
|
|
|
+//// );
|
|
|
+//
|
|
|
+// $employeeLevelIds = CalcBonusBS::find()->where(
|
|
|
// 'PERIOD_NUM=:PERIOD_NUM ', [':PERIOD_NUM' => $forwardPeriodNum]
|
|
|
-// );
|
|
|
-
|
|
|
- $employeeLevelIds = CalcBonusBS::find()->where(
|
|
|
- 'PERIOD_NUM=:PERIOD_NUM ', [':PERIOD_NUM' => $forwardPeriodNum]
|
|
|
- )->select('USER_ID,LEVEL_ID')->asArray()->all();
|
|
|
-
|
|
|
- if (!empty($employeeLevelIds)) {
|
|
|
- $employeeLevelIds = array_column($employeeLevelIds, null, 'USER_ID'); // 当前蓝星奖计算(即管理奖) 的等级
|
|
|
- }
|
|
|
-
|
|
|
- $noLevelId = EmployLevel::NO_LEVEL_ID;
|
|
|
-
|
|
|
- user:
|
|
|
- $offset = $_offset * $this->_limit;
|
|
|
- $data = ActiveRecord::findBySql("SELECT $field from AR_USER limit $this->_limit offset $offset;")->asArray()->all();
|
|
|
-
|
|
|
- if (!empty($data)) {
|
|
|
- foreach ($data as $k => $v) {
|
|
|
- $data[$k]['LAST_EMP_LV'] = $noLevelId;
|
|
|
- if (isset($employeeLevelIds[$v['ID']])) {
|
|
|
- $data[$k]['LAST_EMP_LV'] = $employeeLevelIds[$v['ID']]['LEVEL_ID'] ?? 0;
|
|
|
- }
|
|
|
- }
|
|
|
- $_offset += 1;
|
|
|
- \Yii::$app->$db->createCommand()->batchInsert($table, $fieldArray, $data)->execute();
|
|
|
-
|
|
|
- $data = null;
|
|
|
- goto user;
|
|
|
- }
|
|
|
- $data = null;
|
|
|
- $employeeLevelIds = null;
|
|
|
-
|
|
|
- return true;
|
|
|
- }
|
|
|
+// )->select('USER_ID,LEVEL_ID')->asArray()->all();
|
|
|
+//
|
|
|
+// if (!empty($employeeLevelIds)) {
|
|
|
+// $employeeLevelIds = array_column($employeeLevelIds, null, 'USER_ID'); // 当前蓝星奖计算(即管理奖) 的等级
|
|
|
+// }
|
|
|
+//
|
|
|
+// $noLevelId = EmployLevel::NO_LEVEL_ID;
|
|
|
+//
|
|
|
+// user:
|
|
|
+// $offset = $_offset * $this->_limit;
|
|
|
+// $data = ActiveRecord::findBySql("SELECT $field from AR_USER limit $this->_limit offset $offset;")->asArray()->all();
|
|
|
+//
|
|
|
+// if (!empty($data)) {
|
|
|
+// foreach ($data as $k => $v) {
|
|
|
+// $data[$k]['LAST_EMP_LV'] = $noLevelId;
|
|
|
+// if (isset($employeeLevelIds[$v['ID']])) {
|
|
|
+// $data[$k]['LAST_EMP_LV'] = $employeeLevelIds[$v['ID']]['LEVEL_ID'] ?? 0;
|
|
|
+// }
|
|
|
+// }
|
|
|
+// $_offset += 1;
|
|
|
+// \Yii::$app->$db->createCommand()->batchInsert($table, $fieldArray, $data)->execute();
|
|
|
+//
|
|
|
+// $data = null;
|
|
|
+// goto user;
|
|
|
+// }
|
|
|
+// $data = null;
|
|
|
+// $employeeLevelIds = null;
|
|
|
+//
|
|
|
+// return true;
|
|
|
+// }
|
|
|
|
|
|
public function calcBonusQy($table, $fieldArray, $db): bool
|
|
|
{
|
|
|
@@ -655,4 +656,4 @@ class PushBaseDataToCalc extends BaseBusiness
|
|
|
$data = null;
|
|
|
return true;
|
|
|
}
|
|
|
-}
|
|
|
+}
|