middleware('auth'); } public function index() { dd("function?"); $this->setFilterVars(); $data = [ 'filter_months' => HTMLHelper::getTransMonths(), 'filter_years' => HTMLHelper::getYearRange(), ]; return view('admin.payment.invoice', $data); } private function setFilterVars() { if (!session('invoice_filter_month')) { session(['invoice_filter_month' => intval(date('m'))]); } if (!session('invoice_filter_year')) { session(['invoice_filter_year' => intval(date('Y'))]); } if (Request::get('invoice_filter_name')) { session(['invoice_filter_name' => Request::get('invoice_filter_name')]); } else { session(['invoice_filter_name' => '']); } if (Request::get('invoice_filter_month')) { session(['invoice_filter_month' => Request::get('invoice_filter_month')]); } if (Request::get('invoice_filter_year')) { session(['invoice_filter_year' => Request::get('invoice_filter_year')]); } } private function initSearch($archive = false, $request = true) { $this->setFilterVars(); $query = UserInvoice::with('shopping_order')->with('shopping_order.shopping_user')->select('user_invoices.*') ->where('user_invoices.month', '=', Request::get('invoice_filter_month')) ->where('user_invoices.year', '=', Request::get('invoice_filter_year')); if (Request::get('invoice_filter_name')) { $query->where('shopping_order.shopping_user.billing_firstname', 'LIKE', '%' . Request::get('invoice_filter_name') . '%'); $query->where('shopping_order.shopping_user.billing_lastname', 'LIKE', '%' . Request::get('invoice_filter_name') . '%'); $query->where('shopping_order.shopping_user.billing_email', 'LIKE', '%' . Request::get('invoice_filter_name') . '%'); } //->orderBy('created_at', 'DESC'); /* $query = FlexHour::leftJoin("flex_hour_items", function($join) { $join->on("flex_hour_items.flex_hour_id","=","flex_hours.id"); $join->where("flex_hour_items.date","=", FlexHourItemBot::$date); })*/ return $query; } public function datatable() { $query = $this->initSearch(); return \DataTables::eloquent($query) ->addColumn('id', function (UserInvoice $UserInvoice) { if ($UserInvoice->shopping_order->auth_user_id) { return ''; } return ''; }) ->addColumn('total_shipping', function (UserInvoice $UserInvoice) { return '' . $UserInvoice->shopping_order->getFormattedTotalShipping() . " €"; }) ->addColumn('created_at', function (UserInvoice $UserInvoice) { return $UserInvoice->created_at->format("d.m.Y"); }) ->addColumn('txaction', function (UserInvoice $UserInvoice) { if ($UserInvoice->shopping_order) { return Payment::getShoppingOrderBadge($UserInvoice->shopping_order); } return "-"; }) ->addColumn('status', function (UserInvoice $UserInvoice) { return ' ' . $UserInvoice->getStatusType() . ' '; }) ->addColumn('invoice', function (UserInvoice $UserInvoice) { $ret = ""; $ret .= ' '; $ret .= ''; return $ret; }) ->orderColumn('id', 'id $1') ->orderColumn('invoice_number', 'invoice_number $1') ->orderColumn('txaction', 'txaction $1') ->orderColumn('shipped', 'shipped $1') ->orderColumn('total_shipping', 'total_shipping $1') ->rawColumns(['id', 'shipping_order', 'txaction', 'total_shipping', 'status', 'txaction', 'invoice']) ->make(true); } }