链街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.
 
 
 
 

111 lines
4.9 KiB

<?php
namespace App\Http\Controllers;
use App\Admin\Common\Order;
use App\Models\LanzuCsInfo;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Log;
class Salesman extends \Illuminate\Routing\Controller
{
public function addData()
{
set_time_limit(0);
$rows = 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 ($rows as &$value){
$value['admin_user_id'] = array_unique(explode(',',$value['admin_user_id']));
$value['total'] = count($value['admin_user_id']);
$uid = explode(',',$value['user_id']);
$value['t_num'] = Order::getOrderData([
'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型
'data_type'=>'number',//取什么数据 data_type 数据类型
'market_id'=>'',//取哪个市场数据
'condition'=>1,//取数据维度 condition
'user_ids'=>$uid?$uid:null
],1);//今日订单数
$value['t_amount'] = Order::getOrderData([
'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型
'data_type'=>'amount',//取什么数据 data_type 数据类型
'market_id'=>'',//取哪个市场数据
'condition'=>1,//取数据维度 condition
'user_ids'=>$uid?$uid:null
],1);//今日订单金额
$value['y_num'] = Order::getOrderData([
'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型
'data_type'=>'number',//取什么数据 data_type 数据类型
'market_id'=>'',//取哪个市场数据
'condition'=>1,//取数据维度 condition
'user_ids'=>$uid?$uid:null
],-1);//昨日订单数
$value['y_amount'] = Order::getOrderData([
'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型
'data_type'=>'amount',//取什么数据 data_type 数据类型
'market_id'=>'',//取哪个市场数据
'condition'=>1,//取数据维度 condition
'user_ids'=>$uid?$uid:null
],-1);//昨日订单金额
$value['w_num'] = Order::getOrderData([
'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型
'data_type'=>'number',//取什么数据 data_type 数据类型
'market_id'=>'',//取哪个市场数据
'condition'=>1,//取数据维度 condition
'user_ids'=>$uid?$uid:null
],'w');//本周订单 数
$value['w_amount'] = Order::getOrderData([
'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型
'data_type'=>'amount',//取什么数据 data_type 数据类型
'market_id'=>'',//取哪个市场数据
'condition'=>1,//取数据维度 condition
'user_ids'=>$uid?$uid:null
],'w');//本周订单金额
$value['m_num'] = Order::getOrderData([
'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型
'data_type'=>'number',//取什么数据 data_type 数据类型
'market_id'=>'',//取哪个市场数据
'condition'=>1,//取数据维度 condition
'user_ids'=>$uid?$uid:null
],'30');//本月订单数
$value['m_amount'] = Order::getOrderData([
'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型
'data_type'=>'amount',//取什么数据 data_type 数据类型
'market_id'=>'',//取哪个市场数据
'condition'=>1,//取数据维度 condition
'user_ids'=>$uid?$uid:null
],'30');//本月订单金额
unset($value['admin_user_id']);
unset($value['user_id']);
}
DB::beginTransaction();
try {
DB::table('lanzu_salesman_data')->delete();
$result = DB::table('lanzu_salesman_data')->insert($rows);
if ($result){
echo 'success';
}else{
echo 'fail';
}
DB::commit();
}catch (\Exception $e){
Log::debug('社区拓展员数据添加失败',[$e->getMessage()]);
DB::rollBack();
}
}
}