diff --git a/app/Admin/Controllers/v3/Salesman.php b/app/Admin/Controllers/v3/Salesman.php index b6b8183..ac554da 100644 --- a/app/Admin/Controllers/v3/Salesman.php +++ b/app/Admin/Controllers/v3/Salesman.php @@ -4,6 +4,7 @@ namespace App\Admin\Controllers\v3; +use App\Models\v3\SalesmanData; use Dcat\Admin\Controllers\AdminController; use Dcat\Admin\Grid; @@ -11,7 +12,7 @@ class Salesman extends AdminController { protected function grid() { - return Grid::make(new \App\Admin\Repositories\v3\Salesman(),function (Grid $grid){ + return Grid::make(new SalesmanData(),function (Grid $grid){ $grid->paginate(10); $grid->column('person_id','懒ID'); $grid->column('nick_name','拓展员'); @@ -25,9 +26,8 @@ class Salesman extends AdminController $grid->column('m_num','本月订单数'); $grid->column('m_amount','本月成交额'); $grid->disableActions(); - //$grid->export(); $grid->filter(function (Grid\Filter $filter){ - $filter->equal('user_id','拓展员懒ID'); + $filter->equal('person_id','拓展员懒ID'); }); }); } diff --git a/app/Admin/Repositories/v3/Salesman.php b/app/Admin/Repositories/v3/Salesman.php index 06578a8..6666f97 100644 --- a/app/Admin/Repositories/v3/Salesman.php +++ b/app/Admin/Repositories/v3/Salesman.php @@ -6,6 +6,7 @@ namespace App\Admin\Repositories\v3; use App\Admin\Common\Order; use App\Models\LanzuCsInfo; +use App\Models\v3\SalesmanData; use Dcat\Admin\Grid; use Dcat\Admin\Repositories\EloquentRepository; use Illuminate\Support\Facades\DB; @@ -30,6 +31,7 @@ class Salesman extends EloquentRepository } //>>1.获取业务员 $rows = $build->paginate(10)->toArray(); + //>>2.获取业务员下的所有社区的绑定用户 foreach ($rows['data'] as &$value){ $value['admin_user_id'] = array_unique(explode(',',$value['admin_user_id'])); @@ -73,7 +75,7 @@ class Salesman extends EloquentRepository 'market_id'=>'',//取哪个市场数据 'condition'=>1,//取数据维度 condition 'user_ids'=>$uid?$uid:null - ],'w');//本周订单数 + ],'w');//本周订单 数 $value['w_amount'] = Order::getOrderData([ 'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型 @@ -98,6 +100,8 @@ class Salesman extends EloquentRepository 'condition'=>1,//取数据维度 condition 'user_ids'=>$uid?$uid:null ],'30');//本月订单金额 + unset($value['admin_user_id']); + unset($value['user_id']); } return $model->makePaginator($rows['total'],$rows['data']); // 传入总记录数// 传入数据二维数组 } diff --git a/app/Http/Controllers/Salesman.php b/app/Http/Controllers/Salesman.php new file mode 100644 index 0000000..36856a8 --- /dev/null +++ b/app/Http/Controllers/Salesman.php @@ -0,0 +1,97 @@ +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::table('lanzu_salesman_data')->delete(); + return DB::table('lanzu_salesman_data')->insert($rows); + } +} diff --git a/app/Models/v3/SalesmanData.php b/app/Models/v3/SalesmanData.php new file mode 100644 index 0000000..537c04b --- /dev/null +++ b/app/Models/v3/SalesmanData.php @@ -0,0 +1,13 @@ +