|
|
|
@ -271,22 +271,7 @@ class FinancePromoteController extends AdminController
|
|
|
|
|
$map['company.develop_type'] = ['in',I('develop_type')];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$adminIds = null;
|
|
|
|
|
// $havingPids = [];
|
|
|
|
|
$isMarketAdmin = isMarketAdmin();
|
|
|
|
|
if ($isMarketAdmin) {
|
|
|
|
|
$userAuth = session('user_auth');
|
|
|
|
|
$adminIds = [$userAuth['uid']];
|
|
|
|
|
} else {
|
|
|
|
|
if (!empty(I('admin_id'))) {
|
|
|
|
|
$adminIds = [I('admin_id')];
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (is_null($adminIds) && isset($_REQUEST['department_id'])) {
|
|
|
|
|
$admins = getMarketAdmin($_REQUEST['department_id']);
|
|
|
|
|
$adminIds = count($admins) ? array_column($admins, 'uid') : [-1];
|
|
|
|
|
}
|
|
|
|
|
$adminIds = getSearchAdminIds();
|
|
|
|
|
|
|
|
|
|
if($type == "spend"){
|
|
|
|
|
if (isset($_REQUEST['game_name']) || isset($_REQUEST['game_type'])) {
|
|
|
|
@ -357,22 +342,7 @@ class FinancePromoteController extends AdminController
|
|
|
|
|
$map['company.develop_type'] = ['in',I('develop_type')];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$adminIds = null;
|
|
|
|
|
// $havingPids = [];
|
|
|
|
|
$isMarketAdmin = isMarketAdmin();
|
|
|
|
|
if ($isMarketAdmin) {
|
|
|
|
|
$userAuth = session('user_auth');
|
|
|
|
|
$adminIds = [$userAuth['uid']];
|
|
|
|
|
} else {
|
|
|
|
|
if (!empty(I('admin_id'))) {
|
|
|
|
|
$adminIds = [I('admin_id')];
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (is_null($adminIds) && isset($_REQUEST['department_id'])) {
|
|
|
|
|
$admins = getMarketAdmin($_REQUEST['department_id']);
|
|
|
|
|
$adminIds = count($admins) ? array_column($admins, 'uid') : [-1];
|
|
|
|
|
}
|
|
|
|
|
$adminIds = getSearchAdminIds();
|
|
|
|
|
|
|
|
|
|
if($type == "spend"){
|
|
|
|
|
if (isset($_REQUEST['game_name']) || isset($_REQUEST['game_type'])) {
|
|
|
|
@ -509,16 +479,29 @@ class FinancePromoteController extends AdminController
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
$marketAdmins = [];
|
|
|
|
|
$adminDepartments = [];
|
|
|
|
|
if (count($senddata) > 0) {
|
|
|
|
|
$promoteIds = array_column($senddata, 'promote_id');
|
|
|
|
|
if (count($promoteIds)) {
|
|
|
|
|
$marketAdmins = getMarketAdminsByPromoteIds($promoteIds);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$adminIds = [];
|
|
|
|
|
foreach ($marketAdmins as $item) {
|
|
|
|
|
if ( $item['admin']) {
|
|
|
|
|
$adminIds[] = $item['admin']['id'];
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (count($adminIds)) {
|
|
|
|
|
$adminDepartments = getAdminDepartmentList($adminIds);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
foreach($senddata as $k=>$v){
|
|
|
|
|
$promote = $promotes[$v['promote_id']] ?? null;
|
|
|
|
|
$v['admin_username'] = isset($marketAdmins[$v['promote_id']]) && $marketAdmins[$v['promote_id']]['admin'] ? $marketAdmins[$v['promote_id']]['admin']['username'] : '无';
|
|
|
|
|
$marketAdmin = $marketAdmins[$v['promote_id']]['admin'] ?? null;
|
|
|
|
|
$v['admin_username'] = $marketAdmin ? $marketAdmin['username'] : '无';
|
|
|
|
|
$v['admin_department'] = $marketAdmin && isset($adminDepartments[$marketAdmin['id']]) ? $adminDepartments[$marketAdmin['id']] : '无';
|
|
|
|
|
$v['develop_type_text'] = getCompanyDevelopTypeText($v['develop_type']);
|
|
|
|
|
$v['company_belong'] = getCompanyBlong($v['company_belong']);
|
|
|
|
|
if(empty($v['company_name'])) $v['company_name']= $this->COMPANY_NAME;
|
|
|
|
@ -553,6 +536,7 @@ class FinancePromoteController extends AdminController
|
|
|
|
|
data2csv($data,'渠道统计',array(
|
|
|
|
|
"company_name"=>"推广公司",
|
|
|
|
|
"promote_account"=>"推广员账号",
|
|
|
|
|
"admin_department"=>"所属市场部",
|
|
|
|
|
"admin_username"=>"所属市场专员",
|
|
|
|
|
"company_belong"=>"团体类型",
|
|
|
|
|
"develop_type_text"=>"开发类型",
|
|
|
|
@ -568,6 +552,9 @@ class FinancePromoteController extends AdminController
|
|
|
|
|
|
|
|
|
|
$size = $row;
|
|
|
|
|
$data = array_slice($data, ($arraypage - 1) * $size, $size);
|
|
|
|
|
|
|
|
|
|
$departments = M('department', 'sys_')->select();
|
|
|
|
|
$this->assign('departments', $departments);
|
|
|
|
|
$this->assign('all_count', $allcount);
|
|
|
|
|
$this->assign('list_data', $data);
|
|
|
|
|
$this->meta_title = '渠道统计';
|
|
|
|
@ -580,18 +567,9 @@ class FinancePromoteController extends AdminController
|
|
|
|
|
if (isset($_REQUEST['company_id'])) {
|
|
|
|
|
$map['promote.company_id'] = $_REQUEST['company_id'];
|
|
|
|
|
}
|
|
|
|
|
if ($type == "spend") {
|
|
|
|
|
$adminId = 0;
|
|
|
|
|
$isMarketAdmin = isMarketAdmin();
|
|
|
|
|
if ($isMarketAdmin) {
|
|
|
|
|
$userAuth = session('user_auth');
|
|
|
|
|
$adminId = $userAuth['uid'];
|
|
|
|
|
} else {
|
|
|
|
|
if (!empty(I('admin_id'))) {
|
|
|
|
|
$adminId = I('admin_id');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$adminIds = getSearchAdminIds();
|
|
|
|
|
if ($type == "spend") {
|
|
|
|
|
if (isset($_REQUEST['game_name']) || isset($_REQUEST['game_type'])) {
|
|
|
|
|
$map["s.game_id"] = array("in",implode(',', array_column(getGameByName($_REQUEST['game_name'], $_REQUEST['game_type']), 'id')) );
|
|
|
|
|
}
|
|
|
|
@ -603,8 +581,8 @@ class FinancePromoteController extends AdminController
|
|
|
|
|
$map['s.market_admin_id'] = ['gt', 0];
|
|
|
|
|
$map['promote.admin_id'] = ['gt', 0];
|
|
|
|
|
}
|
|
|
|
|
if ($adminId) {
|
|
|
|
|
$map['s.market_admin_id'] = $adminId;
|
|
|
|
|
if (is_array($adminIds)) {
|
|
|
|
|
$map['s.market_admin_id'] = ['in', $adminIds];
|
|
|
|
|
}
|
|
|
|
|
$map['s.pay_status']=1;
|
|
|
|
|
$map['s.is_check']=1;
|
|
|
|
@ -628,21 +606,10 @@ class FinancePromoteController extends AdminController
|
|
|
|
|
}
|
|
|
|
|
$map['s.status']=1;
|
|
|
|
|
$map['s.source_id']=0;
|
|
|
|
|
|
|
|
|
|
$adminId = 0;
|
|
|
|
|
$isMarketAdmin = isMarketAdmin();
|
|
|
|
|
if ($isMarketAdmin) {
|
|
|
|
|
$userAuth = session('user_auth');
|
|
|
|
|
$adminId = $userAuth['uid'];
|
|
|
|
|
} else {
|
|
|
|
|
if (!empty(I('admin_id'))) {
|
|
|
|
|
$adminId = I('admin_id');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$isMarketLeader = isMarketLeader();
|
|
|
|
|
if ($adminId > 0) {
|
|
|
|
|
$map['promote.admin_id'] = $adminId;
|
|
|
|
|
if (is_array($adminIds)) {
|
|
|
|
|
$map['promote.admin_id'] = ['in', $adminIds];
|
|
|
|
|
} elseif ($isMarketLeader) {
|
|
|
|
|
$map['promote.admin_id'] = ['gt', 0];
|
|
|
|
|
}
|
|
|
|
@ -657,8 +624,8 @@ class FinancePromoteController extends AdminController
|
|
|
|
|
->group('promote_id');
|
|
|
|
|
|
|
|
|
|
/* $havingPids = [];
|
|
|
|
|
if ($adminId > 0) {
|
|
|
|
|
$topIds = M('promote', 'tab_')->where(['admin_id' => $adminId])->getField('id', true);
|
|
|
|
|
if (is_array($adminIds)) {
|
|
|
|
|
$topIds = M('promote', 'tab_')->where(['admin_id' => ['in', $adminIds]])->getField('id', true);
|
|
|
|
|
$havingPids = getPromoteIdsByTopIds($topIds);
|
|
|
|
|
$havingPids = count($havingPids) > 0 ? $havingPids : [0];
|
|
|
|
|
$query->having('promote_id in (' . implode(',', $havingPids) . ')');
|
|
|
|
@ -720,7 +687,9 @@ class FinancePromoteController extends AdminController
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
$promotes = index_by_column('id', $promotes);
|
|
|
|
|
$adminUsernames = getAdminUsernameList(array_column($promotes, 'admin_id'));
|
|
|
|
|
$adminIds = array_column($promotes, 'admin_id');
|
|
|
|
|
$adminUsernames = getAdminUsernameList($adminIds);
|
|
|
|
|
$adminDepartments = getAdminDepartmentList($adminIds);
|
|
|
|
|
|
|
|
|
|
foreach ($data as $key => &$value) {
|
|
|
|
|
$promote = $promotes[$value['p_id']] ?? null;
|
|
|
|
@ -731,6 +700,7 @@ class FinancePromoteController extends AdminController
|
|
|
|
|
$value['company_belong'] =getCompanyBlong($value['company_belong']);
|
|
|
|
|
($value['account']=='官方渠道')?($value['account']=C('OFFICIEL_CHANNEL')):'';
|
|
|
|
|
|
|
|
|
|
$value['admin_department'] = $adminDepartments[$promote['admin_id']] ?? '无';
|
|
|
|
|
$value['admin_username'] = $adminUsernames[$promote['admin_id']] ?? '无';
|
|
|
|
|
$value['develop_type_text'] = getCompanyDevelopTypeText($value['develop_type']);
|
|
|
|
|
|
|
|
|
@ -753,6 +723,7 @@ class FinancePromoteController extends AdminController
|
|
|
|
|
"company_name"=>"推广公司",
|
|
|
|
|
"account"=>"会长账号",
|
|
|
|
|
"admin_username"=>"所属市场专员",
|
|
|
|
|
"admin_department"=>"所属市场部",
|
|
|
|
|
"company_belong"=>"团体类型",
|
|
|
|
|
"develop_type_text"=>"开发类型",
|
|
|
|
|
"game_name"=>"游戏",
|
|
|
|
@ -781,6 +752,8 @@ class FinancePromoteController extends AdminController
|
|
|
|
|
$sumInside = $totalData['inside_cash_count'];
|
|
|
|
|
$sumAll = number_format($sumCash + $sumBalance + $sumInside,2,'.','');
|
|
|
|
|
|
|
|
|
|
$departments = M('department', 'sys_')->select();
|
|
|
|
|
$this->assign('departments', $departments);
|
|
|
|
|
$this->assign('sumCash', $sumCash);
|
|
|
|
|
$this->assign('sumBalance', $sumBalance);
|
|
|
|
|
$this->assign('sumInside', $sumInside);
|
|
|
|
@ -813,25 +786,15 @@ class FinancePromoteController extends AdminController
|
|
|
|
|
$map['pay_order_number'] = $_REQUEST['pay_order_number'];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$adminId = 0;
|
|
|
|
|
$havingPids = [];
|
|
|
|
|
$isMarketAdmin = isMarketAdmin();
|
|
|
|
|
if ($isMarketAdmin) {
|
|
|
|
|
$userAuth = session('user_auth');
|
|
|
|
|
$adminId = $userAuth['uid'];
|
|
|
|
|
} else {
|
|
|
|
|
if (!empty(I('admin_id'))) {
|
|
|
|
|
$adminId = I('admin_id');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
$adminIds = getSearchAdminIds();
|
|
|
|
|
|
|
|
|
|
$isMarketLeader = isMarketLeader();
|
|
|
|
|
if ($isMarketLeader) {
|
|
|
|
|
$map['market_admin_id'] = ['gt', 0];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ($adminId > 0) {
|
|
|
|
|
$map['market_admin_id'] = $adminId;
|
|
|
|
|
|
|
|
|
|
if (is_array($adminIds)) {
|
|
|
|
|
$map['market_admin_id'] = ['in', $adminIds];
|
|
|
|
|
}
|
|
|
|
|
D("Spend")->addSubsiteWhere($map);
|
|
|
|
|
/* if (!empty(I('develop_type'))) {
|
|
|
|
@ -899,7 +862,9 @@ class FinancePromoteController extends AdminController
|
|
|
|
|
|
|
|
|
|
$marketAdmins = [];
|
|
|
|
|
if (count($data) > 0) {
|
|
|
|
|
$marketAdmins = getAdminUsernameList(array_column($data, 'market_admin_id'));
|
|
|
|
|
$marketAdminIds = array_column($data, 'market_admin_id');
|
|
|
|
|
$marketAdmins = getAdminUsernameList($marketAdminIds);
|
|
|
|
|
$adminDepartments = getAdminDepartmentList($marketAdminIds);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$merchant_data = M("payment_merchant","tab_")
|
|
|
|
@ -918,6 +883,7 @@ class FinancePromoteController extends AdminController
|
|
|
|
|
$data[$key]['game_name'] =clearGameNameType($data[$key]['game_name']);
|
|
|
|
|
$data[$key]['sdk_version'] =getGameTypeName($data[$key]['sdk_version']);
|
|
|
|
|
$data[$key]['market_admin_username'] = $marketAdmins[$value['market_admin_id']] ?? '无';
|
|
|
|
|
$data[$key]['admin_department'] = $adminDepartments[$value['market_admin_id']] ?? '无';
|
|
|
|
|
($data[$key]['promote_account']=='官方渠道')?($data[$key]['promote_account']=C('OFFICIEL_CHANNEL')):'';
|
|
|
|
|
|
|
|
|
|
if (isset($_REQUEST['export'])) {
|
|
|
|
@ -969,6 +935,9 @@ class FinancePromoteController extends AdminController
|
|
|
|
|
if($page) {$this->assign('_page', $page);}
|
|
|
|
|
$this->meta_title = '游戏订单查看';
|
|
|
|
|
|
|
|
|
|
$departments = M('department', 'sys_')->select();
|
|
|
|
|
$this->assign('departments', $departments);
|
|
|
|
|
|
|
|
|
|
$this->assign('data',$data);
|
|
|
|
|
$from = I('from', '');
|
|
|
|
|
$this->display($from);
|
|
|
|
@ -976,19 +945,9 @@ class FinancePromoteController extends AdminController
|
|
|
|
|
|
|
|
|
|
private function gameStatisticsData($map, $row = 0, $page = 1)
|
|
|
|
|
{
|
|
|
|
|
$adminId = 0;
|
|
|
|
|
$isMarketAdmin = isMarketAdmin();
|
|
|
|
|
if ($isMarketAdmin) {
|
|
|
|
|
$userAuth = session('user_auth');
|
|
|
|
|
$adminId = $userAuth['uid'];
|
|
|
|
|
} else {
|
|
|
|
|
if (!empty(I('admin_id'))) {
|
|
|
|
|
$adminId = I('admin_id');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ($adminId > 0) {
|
|
|
|
|
$map['s.market_admin_id'] = $adminId;
|
|
|
|
|
$adminIds = getSearchAdminIds();
|
|
|
|
|
if (is_array($adminIds)) {
|
|
|
|
|
$map['s.market_admin_id'] = ['in', $adminIds];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$map['s.pay_status']=1;
|
|
|
|
@ -1021,19 +980,9 @@ class FinancePromoteController extends AdminController
|
|
|
|
|
}
|
|
|
|
|
private function totalGameStatisticsData($map, $join = true)
|
|
|
|
|
{
|
|
|
|
|
$adminId = 0;
|
|
|
|
|
$isMarketAdmin = isMarketAdmin();
|
|
|
|
|
if ($isMarketAdmin) {
|
|
|
|
|
$userAuth = session('user_auth');
|
|
|
|
|
$adminId = $userAuth['uid'];
|
|
|
|
|
} else {
|
|
|
|
|
if (!empty(I('admin_id'))) {
|
|
|
|
|
$adminId = I('admin_id');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ($adminId > 0) {
|
|
|
|
|
$map['s.market_admin_id'] = $adminId;
|
|
|
|
|
$adminIds = getSearchAdminIds();
|
|
|
|
|
if (is_array($adminIds)) {
|
|
|
|
|
$map['s.market_admin_id'] = ['in', $adminIds];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$query = SM("spend","tab_")->alias("s")
|
|
|
|
|