$method($request); } break; } } public function orderIndexStatis2($request) { $system_commiss = new SystemCommissionStatisServices(); $data['prev_month_final_commiss'] = $system_commiss->getSum(['month' => 0, 'status' => 1], 'final_money'); } public function orderIndexStatis($request) { $month = $request->input('month', 0); $order = new OrderStatisServices(); //月订单支付总额 $data['month_order_money'] = $order->getSum(['month' => $month], 'order_money'); //全部订单支付总额 $data['month_order_all_money'] = $order->getSum([], 'order_money'); //月成功支付总额,已经支付判断,不判断是否交易成功 $data['month_order_ok_money'] = $order->getSum(['month' => $month, 'pay_status' => 1], 'pay_money'); //全部成功支付总额,已经支付判断,不判断是否交易成功 $data['month_order_ok_all_money'] = $order->getSum(['pay_status' => 1], 'pay_money'); //月结算总额 $data['month_order_payfor_money'] = $order->getSum(['month' => $month, 'pay_status' => 1], 'total_money'); //全部结算总额 $data['month_order_payfor_all_money'] = $order->getSum(['pay_status' => 1], 'total_money'); //今日结算 $today_info = $order->getSumArr(['day' => 0, 'pay_status' => 1], ['total_money', 'final_money']); //dd($today_info); //今日盈利 $data['day_payfor_money'] = $today_info['total_money'] ? $today_info['total_money'] : 0; $data['day_profit_money'] = $today_info['final_money'] ? $today_info['final_money'] : 0; //昨天盈利 $yesterday_info = $order->getSumArr(['day' => -1, 'pay_status' => 1], ['total_money', 'final_money']); $data['yesterday_payfor_money'] = $yesterday_info['total_money'] ? $yesterday_info['total_money'] : 0; $data['yesterday_profit_money'] = $yesterday_info['final_money'] ? $yesterday_info['final_money'] : 0; //今日提现申请 $draw = new DrawMoneyStatisServices(); $data['day_draw_money'] = $draw->getSum(['day' => 0, 'status_in' => [0, 2]], 'draw_money'); //提现手续费收入 $data['day_draw_fee_money'] = $draw->getSum(['statut' => 1], 'fee_money'); $system_commiss = new SystemCommissionStatisServices(); $system_commiss_month = $system_commiss->getSumArr(['month' => $month, 'status' => 1], ['final_money', 'gateway_money']); $data['prev_month_final_commiss'] = $system_commiss->getSum(['month' => -1, 'status' => 1], 'final_money'); $data['month_sys_commiss'] = money_str(sprintf("%.2f", (array_sum($system_commiss_month)))); $system_commiss_all = $system_commiss->getSumArr(['status' => 1], ['final_money', 'gateway_money']); $data['month_sys_all_commiss'] = money_str(sprintf("%.2f", (array_sum($system_commiss_all)))); //纯收入查询 $data['month_final_commiss'] = money_str($system_commiss_month['final_money']); $data['month_final_all_commiss'] = money_str($system_commiss_all['final_money']); //支付宝扣除 $data['month_zf_commiss'] = money_str($system_commiss_month['gateway_money']); $data['month_zf_all_commiss'] = money_str($system_commiss_all['gateway_money']); return $this->jsonFormat($data, $request); } //商户信息 public function merchantStatis($request) { //商户信息 $merchant = new MerchantStatisServices(); $data['merchant_proxy_number'] = $merchant->getNumber(['level' => 2]); $data['merchant_gudong_number'] = $merchant->getNumber(['level' => 1]); //全部 $data['merchant_number'] = $merchant->getNumber(['level' => 3]); //等待审核 $data['merchant_wait_number'] = $merchant->getNumber(['check_status' => 2]); return $this->jsonFormat($data, $request); } //提现申请 public function drawStatis($request) { //商户信息 $draw = new DrawMoneyStatisServices(); $data['draw_number'] = $draw->getNumber(['status' => 0]); //全部 return $this->jsonFormat($data, $request); } //活跃订单商户 public function topOrderNumber($request) { $data = $request->all(); $data['pay_status'] = 1; $order = new OrderStatisServices(); $total = $order->topMerchantNumber($data); return $this->jsonFormat($total, $request); } //失败率订单商户 public function successFailNumber($request) { $date = DateServices::today(); $data = DB::select("select t.merchant_name,t.merchant_id,t.total,t.created_at ,t.order_money, (select sum(p.order_money) from orders p where p.merchant_id=t.merchant_id and pay_status='1' and created_at>='" . $date['start_at'] . "' and created_at <='" . $date['end_at'] . "') as ok_money, (select count(p.pay_status) from orders p where p.merchant_id=t.merchant_id and pay_status='1' and created_at>='" . $date['start_at'] . "' and created_at <='" . $date['end_at'] . "')as ok_total from (select count(pay_status) as total,sum(order_money)as order_money,merchant_id,merchant_name,created_at from orders where created_at>='" . $date['start_at'] . "' and created_at <='" . $date['end_at'] . "' group by merchant_id) t ORDER BY order_money desc"); return $this->jsonFormat($data, $request); } //订单量+资金 public function dayOrderNumber($request) { $data = $request->all(); $order = new OrderStatisServices(); $time = $request->input('timeDay'); $time = str_replace('~', ',', $time); $time = explode(",", $time); $start_at = isset($time[0]) ? $time[0] : ''; $end_at = isset($time[1]) ? $time[1] : ''; if ($start_at) { $days = DateServices::diffDay($end_at, $start_at); for ($i = 0; $i <= $days; $i++) { $put['x'][] = DateServices::incrDay($start_at, $i); } } $put['order'] = $this->dayOrderNumberDoing($put['x'], $order->dayOrderNumber($data)); $put['order_pay'] = $this->dayOrderNumberDoing($put['x'], $order->dayOrderNumber($data + ['pay_status' => 1])); $put['order_ok'] = $this->dayOrderNumberDoing($put['x'], $order->dayOrderNumber($data + ['status' => 1])); //$put['order_fail']=$this->dayOrderNumberDoing($put['x'],$order->dayOrderNumber($data+['pay_status'=>0])); //dd($put); return $this->jsonFormat($put, $request); } public function dayOrderNumberDoing($days, $data) { $arr = []; foreach ($days as $k => $v) { $arr['number'][$v] = 0; $arr['order_money'][$v] = 0; $arr['pay_money'][$v] = 0; $arr['total_money'][$v] = 0; } if (count($data) >= 0) { foreach ($data as $k => $v) { if (in_array($v['day'], $days)) { $arr['number'][$v['day']] = $v['number']; $arr['order_money'][$v['day']] = $v['order_money']; $arr['pay_money'][$v['day']] = $v['pay_money']; $arr['total_money'][$v['day']] = $v['total_money']; } } } $narr['detail'] = $data; $narr['echart'] = $arr; return $narr; } public function jsonFormat($msg, $request) { if ($request->ajax()) { return response()->json(['error' => 0, 'data' => $msg]); } return (['error' => 0, 'data' => $msg]); } }