condition, $this->params, [ 'select'=>'PM.*, U.USER_NAME, U.REAL_NAME,RU.USER_NAME REC_USER_NAME,RU.REAL_NAME REC_REAL_NAME,', 'from' => PerfMonth::tableName().' AS PM', 'join' => [ ['LEFT JOIN', modelUser::tableName() . ' AS U', 'PM.USER_ID=U.ID'], ['LEFT JOIN', UserInfo::tableName() . ' AS UI', 'PM.USER_ID=UI.USER_ID'], ['LEFT JOIN', modelUser::tableName() . ' AS RU', 'UI.REC_UID=RU.ID'], ], 'orderBy' => 'PM.CREATED_AT DESC, PM.ID DESC', 'page' => $this->page, 'pageSize' => $this->pageSize, ]); if ($data['list']) { foreach ($data['list'] as $key => $value) { $data['list'][$key]['LAST_DEC_LV_NAME'] = Cache::getDecLevelConfig()[$value['LAST_DEC_LV']]['LEVEL_NAME'] ?? ''; $data['list'][$key]['LAST_EMP_LV_NAME'] = Cache::getEmpLevelConfig()[$value['LAST_EMP_LV']]['LEVEL_NAME'] ?? ''; } } $this->listData = $data; } /** * 要展示和导出的所有字段 * @return array */ public function getColumn(){ if(!$this->columns){ $this->columns = [ 'CALC_MONTH' => [ 'header' => 'Bonus Month', // 结算月 'headerOther' => [ 'width' => '110', ], ], 'USER_NAME' => [ 'header' => 'Member Code', // 会员编号 'headerOther' => [ 'width' => '110', ], ], 'REAL_NAME' => [ 'header' => 'Member Name', // 会员姓名 'headerOther' => [ 'width' => '150', ], ], 'REC_USER_NAME' => [ 'header' => 'Recommender No', // 推荐人编号 'headerOther' => [ 'width' => '140', ], ], 'REC_REAL_NAME' => [ 'header' => 'Recommender Name', // 推荐人姓名 'headerOther' => [ 'width' => '160', ], ], 'LAST_DEC_LV_NAME' => [ 'header' => 'PC Member Level', // 结算时会员级别 'headerOther' => [ 'width' => '150', ], ], 'LAST_EMP_LV_NAME' => [ 'header' => 'Director Rank', // 结算时会员聘级 'headerOther' => [ 'width' => '150', ], ], 'PV_PCS' => [ 'header' => 'Personal Performance', // 个人业绩 'headerOther' => [ 'width' => '170', ], 'value' => function($row) { return (new Price([ 'value' => $row['PV_PCS'], ]))->result(); }, ], 'VIP_PV_1L_ZC' => [ 'header' => 'L. New Market Entry Performance', // 一市场新增报单业绩 'headerOther' => [ 'width' => '240', ], 'value' => function($row) { return (new Price([ 'value' => $row['VIP_PV_1L_ZC'], ]))->result(); }, ], 'VIP_PV_2L_ZC' => [ 'header' => 'R. New Market Entry Performance', // 二市场新增报单业绩 'headerOther' => [ 'width' => '240', ], 'value' => function($row) { return (new Price([ 'value' => $row['VIP_PV_2L_ZC'], ]))->result(); }, ], 'VIP_SURPLUS_1L_ZC' => [ 'header' => 'L. Market Monthly Remaining Declaration Performance', // 一市场月剩余报单业绩 'headerOther' => [ 'width' => '370', ], 'value' => function($row) { return (new Price([ 'value' => $row['VIP_SURPLUS_1L_ZC'], ]))->result(); }, ], 'VIP_SURPLUS_2L_ZC' => [ 'header' => 'R. Market Monthly Remaining Declaration Performance', // 二市场月剩余报单业绩 'headerOther' => [ 'width' => '370', ], 'value' => function($row) { return (new Price([ 'value' => $row['VIP_SURPLUS_2L_ZC'], ]))->result(); }, ], 'PV_PSS' => [ 'header' => 'Monthly New Team Performance', // 月新增团队业绩 'headerOther' => [ 'width' => '230', ], 'value' => function($row) { return (new Price([ 'value' => $row['PV_PSS'], ]))->result(); }, ], 'PV_PSS_TOTAL' => [ 'header' => 'Monthly Cumulative Team Performance', // 月累计团队业绩 'headerOther' => [ 'width' => '270', ], 'value' => function($row) { return (new Price([ 'value' => $row['PV_PSS_TOTAL'], ]))->result(); }, ], 'CREATED_AT' => [ 'header' => 'Creation Time', // 创建时间 'value' => function($row) { return (new DateTime([ 'value' => $row['CREATED_AT'], ]))->result(); }, 'headerOther' => ['width' => '170'], ], ]; } return $this->columns; } /** * 前台用于筛选的类型集合 * @return mixed */ public function getFilterTypes() { if(!$this->filterTypes){ $this->filterTypes = [ 'CALC_MONTH'=> ['isUserTable'=> false, 'name'=> 'Bonus Month'], // 结算月 'USER_NAME'=> ['isUserTable'=> false, 'name'=> 'Member Code'], // 会员编号 'REC_USER_NAME'=> ['isUserTable'=> false, 'name'=> 'Recommender No'], // 推荐人编号 'CREATED_AT'=> ['isUserTable'=> false, 'name'=> 'Creation Time', 'other'=> 'date'], // 创建时间 ]; } return $this->filterTypes; } }