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

56 lines
2.3 KiB

  1. <?php
  2. namespace App\Admin\Repositories\v3;
  3. use App\Admin\Common\Order;
  4. use App\Models\LanzuUserRelationBind;
  5. use Dcat\Admin\Grid;
  6. use Dcat\Admin\Repositories\EloquentRepository;
  7. use \App\Models\v3\CsInfo as modelCsInfo;
  8. class CsInfo extends EloquentRepository
  9. {
  10. protected $eloquentClass = \App\Models\v3\CsInfo::class;
  11. public function get(Grid\Model $model)
  12. {
  13. $adminUid= request()->get('admin_user_id');
  14. $option= request()->get('option');
  15. $data = modelCsInfo::whereIn('admin_user_id',$adminUid)
  16. ->paginate(10)
  17. ->toArray();
  18. foreach ($data['data'] as &$value){
  19. //>>1.获取绑定后下过单的用户
  20. $value['user_num'] = LanzuUserRelationBind::where('source_id',$value['admin_user_id'])->count();
  21. $uid = Order::getUserOrder($value['admin_user_id']);
  22. //>>2.获取订单数据
  23. $value['order_user_num'] = Order::getOrderData([
  24. 'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型
  25. 'data_type'=>'count_user',//取什么数据 data_type 数据类型
  26. 'market_id'=>'',//取哪个市场数据
  27. 'condition'=>1,//取数据维度 condition
  28. 'user_ids'=>$uid?$uid:null
  29. ],$option);//下单人数
  30. $value['order_num'] = Order::getOrderData([
  31. 'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型
  32. 'data_type'=>'number',//取什么数据 data_type 数据类型
  33. 'market_id'=>'',//取哪个市场数据
  34. 'condition'=>1,//取数据维度 condition
  35. 'user_ids'=>$uid?$uid:null
  36. ],$option);//订单数
  37. $value['order_amount'] = Order::getOrderData([
  38. 'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型
  39. 'data_type'=>'amount',//取什么数据 data_type 数据类型
  40. 'market_id'=>'',//取哪个市场数据
  41. 'condition'=>1,//取数据维度 condition
  42. 'user_ids'=>$uid?$uid:null
  43. ],$option);//订单金额
  44. }
  45. return $model->makePaginator(
  46. $data['total'] ?? 0, // 传入总记录数
  47. $data['data'] ?? [] // 传入数据二维数组
  48. );
  49. }
  50. }