链街Dcat后台
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

110 lines
3.6 KiB

<?php
namespace App\Console\Commands;
use App\Admin\Common\Order;
use App\Models\LanzuCsInfo;
use App\Models\LanzuUserRelationBind;
use Illuminate\Console\Command;
use Illuminate\Support\Facades\DB;
use \App\Models\v3\CsInfo as modelCsInfo;
class CsInfoStatis extends Command
{
/**
* The name and signature of the console command.
*
* @var string
*/
protected $signature = 'command:CsInfoStatis';
/**
* The console command description.
*
* @var string
*/
protected $description = 'export CsInfoStatis';
/**
* Create a new command instance.
*
* @return void
*/
public function __construct()
{
parent::__construct();
}
/**
* Execute the console command.
*
* @return int
*/
public function handle()
{
$rows = $this->getSaleMan();
dd($rows);
return 0;
}
/**
* 获取拓展员
*/
public function getSaleMan()
{
$data = LanzuCsInfo::select(
DB::raw('count("lanzu_cs_info.person_id") as total'),
DB::raw('group_concat(lanzu_cs_info.admin_user_id) as admin_user_id'),
DB::raw('group_concat(rb.user_id) as user_id'),
'lanzu_cs_info.person_id','lanzu_user.nick_name')
->groupBy('lanzu_cs_info.person_id')
->leftJoin('lanzu_user','lanzu_user.id','lanzu_cs_info.person_id')
->leftJoin('lanzu_user_relation_bind as rb','rb.source_id','lanzu_cs_info.admin_user_id')
->where('lanzu_cs_info.person_id','>',0)->get()->toArray();
foreach ($data as $key=>$value){
$value['admin_user_id'] = array_unique(explode(',',$value['admin_user_id']));
$row = $this->csDetail($value['admin_user_id'],-30);
dump($row);
}
}
/**
* 获取站点详情
*/
public function csDetail($adminUid,$option)
{
$data = modelCsInfo::whereIn('admin_user_id',$adminUid)
->paginate(10)
->toArray();
foreach ($data['data'] as &$value){
//>>1.获取绑定后下过单的用户
$value['user_num'] = LanzuUserRelationBind::where('source_id',$value['admin_user_id'])->count();
$uid = Order::getUserOrder($value['admin_user_id']);
//>>2.获取订单数据
$value['order_user_num'] = Order::getOrderData([
'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型
'data_type'=>'count_user',//取什么数据 data_type 数据类型
'market_id'=>'',//取哪个市场数据
'condition'=>1,//取数据维度 condition
'user_ids'=>$uid?$uid:null
],$option);//下单人数
$value['order_num'] = Order::getOrderData([
'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型
'data_type'=>'number',//取什么数据 data_type 数据类型
'market_id'=>'',//取哪个市场数据
'condition'=>1,//取数据维度 condition
'user_ids'=>$uid?$uid:null
],$option);//订单数
$value['order_amount'] = Order::getOrderData([
'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型
'data_type'=>'amount',//取什么数据 data_type 数据类型
'market_id'=>'',//取哪个市场数据
'condition'=>1,//取数据维度 condition
'user_ids'=>$uid?$uid:null
],$option);//订单金额
}
dd($data);
}
}