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

97 lines
4.5 KiB

5 years ago
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Admin\Common\Order;
  4. use App\Models\LanzuCsInfo;
  5. use Illuminate\Support\Facades\DB;
  6. class Salesman extends \Illuminate\Routing\Controller
  7. {
  8. public function addData()
  9. {
  10. $rows = LanzuCsInfo::select(
  11. DB::raw('count("lanzu_cs_info.person_id") as total'),
  12. DB::raw('group_concat(lanzu_cs_info.admin_user_id) as admin_user_id'),
  13. DB::raw('group_concat(rb.user_id) as user_id'),
  14. 'lanzu_cs_info.person_id','lanzu_user.nick_name')
  15. ->groupBy('lanzu_cs_info.person_id')
  16. ->leftJoin('lanzu_user','lanzu_user.id','lanzu_cs_info.person_id')
  17. ->leftJoin('lanzu_user_relation_bind as rb','rb.source_id','lanzu_cs_info.admin_user_id')
  18. ->where('lanzu_cs_info.person_id','>',0)->get()->toArray();
  19. foreach ($rows as &$value){
  20. $value['admin_user_id'] = array_unique(explode(',',$value['admin_user_id']));
  21. $value['total'] = count($value['admin_user_id']);
  22. $uid = explode(',',$value['user_id']);
  23. $value['t_num'] = Order::getOrderData([
  24. 'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型
  25. 'data_type'=>'number',//取什么数据 data_type 数据类型
  26. 'market_id'=>'',//取哪个市场数据
  27. 'condition'=>1,//取数据维度 condition
  28. 'user_ids'=>$uid?$uid:null
  29. ],1);//今日订单数
  30. $value['t_amount'] = Order::getOrderData([
  31. 'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型
  32. 'data_type'=>'amount',//取什么数据 data_type 数据类型
  33. 'market_id'=>'',//取哪个市场数据
  34. 'condition'=>1,//取数据维度 condition
  35. 'user_ids'=>$uid?$uid:null
  36. ],1);//今日订单金额
  37. $value['y_num'] = Order::getOrderData([
  38. 'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型
  39. 'data_type'=>'number',//取什么数据 data_type 数据类型
  40. 'market_id'=>'',//取哪个市场数据
  41. 'condition'=>1,//取数据维度 condition
  42. 'user_ids'=>$uid?$uid:null
  43. ],-1);//昨日订单数
  44. $value['y_amount'] = Order::getOrderData([
  45. 'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型
  46. 'data_type'=>'amount',//取什么数据 data_type 数据类型
  47. 'market_id'=>'',//取哪个市场数据
  48. 'condition'=>1,//取数据维度 condition
  49. 'user_ids'=>$uid?$uid:null
  50. ],-1);//昨日订单金额
  51. $value['w_num'] = Order::getOrderData([
  52. 'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型
  53. 'data_type'=>'number',//取什么数据 data_type 数据类型
  54. 'market_id'=>'',//取哪个市场数据
  55. 'condition'=>1,//取数据维度 condition
  56. 'user_ids'=>$uid?$uid:null
  57. ],'w');//本周订单 数
  58. $value['w_amount'] = Order::getOrderData([
  59. 'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型
  60. 'data_type'=>'amount',//取什么数据 data_type 数据类型
  61. 'market_id'=>'',//取哪个市场数据
  62. 'condition'=>1,//取数据维度 condition
  63. 'user_ids'=>$uid?$uid:null
  64. ],'w');//本周订单金额
  65. $value['m_num'] = Order::getOrderData([
  66. 'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型
  67. 'data_type'=>'number',//取什么数据 data_type 数据类型
  68. 'market_id'=>'',//取哪个市场数据
  69. 'condition'=>1,//取数据维度 condition
  70. 'user_ids'=>$uid?$uid:null
  71. ],'30');//本月订单数
  72. $value['m_amount'] = Order::getOrderData([
  73. 'user_type'=>'lanzu_biz',//谁取数据 user_type 用户类型
  74. 'data_type'=>'amount',//取什么数据 data_type 数据类型
  75. 'market_id'=>'',//取哪个市场数据
  76. 'condition'=>1,//取数据维度 condition
  77. 'user_ids'=>$uid?$uid:null
  78. ],'30');//本月订单金额
  79. unset($value['admin_user_id']);
  80. unset($value['user_id']);
  81. }
  82. DB::table('lanzu_salesman_data')->delete();
  83. return DB::table('lanzu_salesman_data')->insert($rows);
  84. }
  85. }