all(); switch ($input['type']) { case '0': $starttime = date("Y-m-d 00:00:00", strtotime($input['time'][0])); $endtime = date("Y-m-d 00:00:00", strtotime($input['time'][1] . "+1 days")); break; case '1': $starttime = date("Y-m-01 00:00:00", strtotime($input['time'])); $endtime = date("Y-m-01 00:00:00", strtotime($input['time'] . "+1 months")); break; case '2': $starttime = date("Y-01-01 00:00:00", strtotime($input['time'])); $endtime = date("Y-01-01 00:00:00", strtotime($input['time'] . "+1 year")); break; } $time = [$starttime, $endtime]; $list = DB::table('order') ->select('order.id', 'order.ordersn', DB::raw('SUM(order_goods.totalprice) as account'), DB::raw('SUM(order_goods.num) as total'), 'order.created_at') ->leftJoin('order_goods', 'order.id', '=', 'order_goods.order_id') ->where('order.status', 2) ->whereBetween('order.created_at', $time) ->groupBy('order.id') ->orderBy('account', 'desc') ->get()->toarray(); if ($list) { Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')导出流水账单成功,导出时间段:'.$time[0].'-'.$time[1]); return $this->success($list); } else { return $this->error(); } } //导出奖励支出(进货奖励) public function exportRewardSpending(Request $request){ $input=$request->all(); switch($input['type']){ case '0': $starttime=date("Y-m-d 00:00:00",strtotime($input['time'][0])); $endtime= date("Y-m-d 00:00:00",strtotime($input['time'][1] ."+1 days")); break; case '1': $starttime=date("Y-m-01 00:00:00",strtotime($input['time'])); $endtime= date("Y-m-01 00:00:00",strtotime($input['time'] ."+1 months")); break; case '2': $starttime=date("Y-01-01 00:00:00",strtotime($input['time'])); $endtime= date("Y-01-01 00:00:00",strtotime($input['time'] ."+1 year")); break; } $time = [$starttime, $endtime]; $list=DB::table('rewards') ->select('rewards.id','uu.nickname as agent_name','users.nickname as recom_name','rewards.bonus','rewards.created_at') ->leftJoin('users','users.id','=','rewards.recom_id') ->leftJoin('users as uu','uu.id','=','rewards.agent_id') ->where('rewards.type',1) ->whereBetween('rewards.created_at',$time) ->orderBy('rewards.id','desc') ->get(); if ($list) { Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')导出奖励支出成功,导出时间段:'.$time[0].'-'.$time[1]); return $this->success($list); } else { return $this->error(); } } //导出业绩奖励 public function exportPerformanceReward(Request $request) { $input = $request->all(); switch ($input['type']) { case '0': $starttime = date("Y-m-d 00:00:00", strtotime($input['time'][0])); $endtime = date("Y-m-d 00:00:00", strtotime($input['time'][1] . "+1 days")); break; case '1': $starttime = date("Y-m-01 00:00:00", strtotime($input['time'])); $endtime = date("Y-m-01 00:00:00", strtotime($input['time'] . "+1 months")); break; case '2': $starttime = date("Y-01-01 00:00:00", strtotime($input['time'])); $endtime = date("Y-01-01 00:00:00", strtotime($input['time'] . "+1 year")); break; } $time = [$starttime, $endtime]; $list= DB::table('rewards') ->select('rewards.id','users.nickname', 'rewards.bonus','rewards.month','rewards.created_at') ->leftJoin('users', 'users.id', '=', 'rewards.recom_id') ->where('rewards.type', 2) ->whereBetween('rewards.created_at', $time) ->orderBy('rewards.id', 'desc') ->get(); if ($list) { Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')导出业绩奖励成功,导出时间段:'.$time[0].'-'.$time[1]); return $this->success($list); } else { return $this->error(); } } //导出店铺奖励 public function exportStoreReward(Request $request) { $input = $request->all(); switch ($input['type']) { case '0': $starttime = date("Y-m-d 00:00:00", strtotime($input['time'][0])); $endtime = date("Y-m-d 00:00:00", strtotime($input['time'][1] . "+1 days")); break; case '1': $starttime = date("Y-m-01 00:00:00", strtotime($input['time'])); $endtime = date("Y-m-01 00:00:00", strtotime($input['time'] . "+1 months")); break; case '2': $starttime = date("Y-01-01 00:00:00", strtotime($input['time'])); $endtime = date("Y-01-01 00:00:00", strtotime($input['time'] . "+1 year")); break; } $time = [$starttime, $endtime]; $list = DB::table('rewards') ->select('store.id', 'store.name','goods.name as goodsname','rewards.*') ->leftJoin('goods', 'goods.id', '=', 'rewards.goods_id') ->leftJoin('store', 'store.id', '=', 'rewards.store_id') ->where('rewards.type', 3) ->whereBetween('rewards.created_at', $time) ->orderBy('rewards.id', 'desc') ->get(); if ($list) { Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')导出店铺奖励成功,导出时间段:'.$time[0].'-'.$time[1]); return $this->success($list); } else { return $this->error(); } } //导出战区销售额排行 public function exportWareaSalesResults(Request $request){ $input=$request->all(); switch($input['type']){ case '0': $starttime=date("Y-m-d 00:00:00",strtotime($input['time'][0])); $endtime= date("Y-m-d 00:00:00",strtotime($input['time'][1] ."+1 days")); break; case '1': $starttime=date("Y-m-01 00:00:00",strtotime($input['time'])); $endtime= date("Y-m-01 00:00:00",strtotime($input['time'] ."+1 months")); break; case '2': $starttime=date("Y-01-01 00:00:00",strtotime($input['time'])); $endtime= date("Y-01-01 00:00:00",strtotime($input['time'] ."+1 year")); break; } $time = [$starttime, $endtime]; $list =DB::table('warea')->distinct('warea.id') ->select('warea.name as warea', DB::raw('SUM(order_goods.totalprice) as account')) ->leftJoin('users', function ($join) { $join->on('users.warea_id', '=', 'warea.id') ->where('users.level', '=', 3); }) ->leftJoin('order', 'order.user_id', '=', 'users.id') ->leftJoin('order_goods', 'order.id', '=', 'order_goods.order_id') ->where('order.status', 2) ->whereBetween('order.created_at',$time) ->groupBy('warea.id') ->orderBy('account','desc') ->get()->toArray(); if ($list) { Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')导出战区销售额排行成功,导出时间段:'.$time[0].'-'.$time[1]); return $this->success($list); } else { return $this->error(); } } //导出皇冠代理团队业绩排行 public function exportCrownTeamSalesResults(Request $request){ $input=$request->all(); switch($input['type']){ case '0': $starttime=date("Y-m-d 00:00:00",strtotime($input['time'][0])); $endtime= date("Y-m-d 00:00:00",strtotime($input['time'][1] ."+1 days")); break; case '1': $starttime=date("Y-m-01 00:00:00",strtotime($input['time'])); $endtime= date("Y-m-01 00:00:00",strtotime($input['time'] ."+1 months")); break; case '2': $starttime=date("Y-01-01 00:00:00",strtotime($input['time'])); $endtime= date("Y-01-01 00:00:00",strtotime($input['time'] ."+1 year")); break; } $time = [$starttime, $endtime]; $list= DB::table('users') ->select('users.nickname as crowteam', DB::raw('SUM(order_goods.totalprice) as account')) ->leftJoin('users as uu', 'users.id', '=', 'uu.agent_id') ->leftJoin('order', 'order.user_id', '=', 'uu.id') ->leftJoin('order_goods', 'order.id', '=', 'order_goods.order_id') ->where('order.status', 2) ->whereBetween('order.created_at',$time) ->where('users.level', '=', 3) ->groupBy('users.id') ->orderBy('account','desc') ->get()->toArray(); if ($list) { Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')导出皇冠代理团队业绩排行成功,导出时间段:'.$time[0].'-'.$time[1]); return $this->success($list); } else { return $this->error(); } } //导出皇冠团队新增代理人数 public function exportCrownAddAgentNum(Request $request){ $input=$request->all(); switch($input['type']){ case '0': $starttime=date("Y-m-d 00:00:00",strtotime($input['time'][0])); $endtime= date("Y-m-d 00:00:00",strtotime($input['time'][1] ."+1 days")); break; case '1': $starttime=date("Y-m-01 00:00:00",strtotime($input['time'])); $endtime= date("Y-m-01 00:00:00",strtotime($input['time'] ."+1 months")); break; case '2': $starttime=date("Y-01-01 00:00:00",strtotime($input['time'])); $endtime= date("Y-01-01 00:00:00",strtotime($input['time'] ."+1 year")); break; } $time = [$starttime, $endtime]; $list = DB::table('users') ->select('users.nickname as teamName','users.id', DB::raw('COUNT(uu.id) as count')) ->where('users.level', '=', 3) ->leftJoin('users as uu', 'users.id', '=', 'uu.crown_id') ->whereBetween('uu.created_at',$time) ->groupBy('users.id') ->orderBy('count','desc') ->get()->toArray(); if ($list) { Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')导出皇冠团队新增代理人数成功,导出时间段:'.$time[0].'-'.$time[1]); return $this->success_list($list); } else { return $this->error(); } } //导出店铺业绩排行榜 public function exportStoreSalesResults(Request $request){ $input=$request->all(); switch($input['type']){ case '0': $starttime=date("Y-m-d 00:00:00",strtotime($input['time'][0])); $endtime= date("Y-m-d 00:00:00",strtotime($input['time'][1] ."+1 days")); break; case '1': $starttime=date("Y-m-01 00:00:00",strtotime($input['time'])); $endtime= date("Y-m-01 00:00:00",strtotime($input['time'] ."+1 months")); break; case '2': $starttime=date("Y-01-01 00:00:00",strtotime($input['time'])); $endtime= date("Y-01-01 00:00:00",strtotime($input['time'] ."+1 year")); break; } $time = [$starttime, $endtime]; $list = DB::table('store') ->select('store.name as storename', DB::raw('SUM(order_goods.totalprice) as account')) ->leftJoin('users', function ($join) { $join->on('users.store_id', '=', 'store.id'); }) ->leftJoin('order', 'order.user_id', '=', 'users.id') ->leftJoin('order_goods', 'order.id', '=', 'order_goods.order_id') ->where('order.status', 2) ->whereBetween('order.created_at',$time) ->groupBy('store.id') ->orderBy('account','desc') ->get()->toArray(); if ($list) { Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')导出店铺业绩排行榜成功,导出时间段:'.$time[0].'-'.$time[1]); return $this->success($list); } else { return $this->error(); } } //导出代理业绩排行榜 public function exportAgentSalesResults(Request $request){ $input=$request->all(); switch($input['type']){ case '0': $starttime=date("Y-m-d 00:00:00",strtotime($input['time'][0])); $endtime= date("Y-m-d 00:00:00",strtotime($input['time'][1] ."+1 days")); break; case '1': $starttime=date("Y-m-01 00:00:00",strtotime($input['time'])); $endtime= date("Y-m-01 00:00:00",strtotime($input['time'] ."+1 months")); break; case '2': $starttime=date("Y-01-01 00:00:00",strtotime($input['time'])); $endtime= date("Y-01-01 00:00:00",strtotime($input['time'] ."+1 year")); break; } $search_name=$input["search_name"]; $time = [$starttime, $endtime]; $list=DB::table('users') ->select('users.nickname','users.level','warea.name as warea','uu.nickname as agent',DB::raw('SUM(order_goods.totalprice) as account')) ->leftJoin('order','order.user_id','=','users.id') ->leftJoin('order_goods','order.id','=','order_goods.order_id') ->leftJoin('warea','warea.id','=','users.warea_id') ->leftJoin('users as uu','uu.id','=','users.agent_id') ->where('order.status',2) ->whereBetween('order.created_at',$time) ->where('users.nickname', 'like', '%' . $search_name . '%') ->groupBy('users.id') ->orderBy('account','desc') ->get(); if($list){ Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')导出代理业绩排行榜成功,导出时间段:'.$time[0].'-'.$time[1]); return $this->success($list); }else{ return $this->error(); } } }