middleware('auth'); } public function index() { $filter_members = UserSalesVolume::join('users', 'user_id', '=', 'users.id') ->groupBy('user_id')->join('user_accounts', 'account_id', '=', 'user_accounts.id') ->select('users.id', 'users.email', 'user_accounts.first_name', 'user_accounts.last_name')->get(); $this->setFilterVars(); $data = [ 'filter_months' => HTMLHelper::$months, 'filter_years' => HTMLHelper::getYearRange(), 'filter_members' => $filter_members, ]; return view('admin.business.points', $data); } public function store(){ $data = Request::all(); if(!isset($data['action'])){ return back(); } if(!isset($data['change_member_key']) || $data['change_member_key'] !== config('mivita.edit_data_pass')){ \Session()->flash('alert-error', 'Das Passwort ist falsch.'); return back(); } if(!isset($data['is_checked_action'])){ \Session()->flash('alert-error', 'Änderung nicht bestätigt'); return back(); } if($data['action'] === 'add_user_sales_volume'){ SalesPointsVolume::addSalesPointsVolume($data); return back(); } if($data['action'] === 'edit_user_sales_volume'){ SalesPointsVolume::editSalesPointsVolume($data); return back(); } dd($data); return redirect(route('admin_business_points')); // // /* $add_credit_error = false; if(!isset($data['member_id']) || !$user = User::find($data['member_id'])){ $add_credit_error = 'Vertriebspartner nicht gefunden'; } if(!isset($data['credit'])){ $add_credit_error = 'Bitte Betrag eingeben'; } if(!isset($data['message'])){ $add_credit_error = 'Bitte Mitteilung eingeben'; } if($add_credit_error){ $data = $this->makeData(); $data['add_credit_error'] = $add_credit_error; return view('admin.payment.credit.index', $data); } // $credit = Util::reFormatNumber($data['credit']); //$credit = number_format($credit, 2, '.', ''); //Payment::addUserCreditMargin($user, $credit, 3, $data['message']); \Session()->flash('alert-success', "Guthaben hinzugefügt"); }*/ } private function setFilterVars(){ if(!session('points_filter_month')){ session(['points_filter_month' => intval(date('m'))]); } if(!session('points_filter_year')){ session(['points_filter_year' => intval(date('Y'))]); } if(Request::get('points_filter_member_id')){ session(['points_filter_member_id' => Request::get('points_filter_member_id')]); } if(Request::get('points_filter_month')){ session(['points_filter_month' => Request::get('points_filter_month')]); } if(Request::get('points_filter_year')){ session(['points_filter_year' => Request::get('points_filter_year')]); } } private function initSearch($archive = false, $request = true) { $this->setFilterVars(); $query = UserSalesVolume::with('user', 'user.account')->with('shopping_order')->select('user_sales_volumes.*') ->where('user_sales_volumes.month', '=', Request::get('points_filter_month')) ->where('user_sales_volumes.year', '=', Request::get('points_filter_year')); if(Request::get('points_filter_member_id')){ $query->where('user_sales_volumes.user_id', '=', Request::get('points_filter_member_id')); } //->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 (UserSalesVolume $UserSalesVolume) { return ''; }) ->addColumn('order', function (UserSalesVolume $UserSalesVolume) { if($UserSalesVolume->shopping_order){ if($UserSalesVolume->status === 1){ return ''.$UserSalesVolume->shopping_order->id.''; } if($UserSalesVolume->status === 2 || $UserSalesVolume->status === 3){ return ''.$UserSalesVolume->shopping_order->id.''; } } return ''; }) ->addColumn('total_net', function (UserSalesVolume $UserSalesVolume) { return formatNumber($UserSalesVolume->total_net).' €'; }) ->addColumn('first_name', function (UserSalesVolume $UserSalesVolume) { return isset($UserSalesVolume->user) ? $UserSalesVolume->user->account->first_name : ''; }) ->addColumn('last_name', function (UserSalesVolume $UserSalesVolume) { return isset($UserSalesVolume->user) ? $UserSalesVolume->user->account->last_name : ''; }) ->addColumn('email', function (UserSalesVolume $UserSalesVolume) { return isset($UserSalesVolume->user) ? $UserSalesVolume->user->email : ''; }) ->addColumn('status', function (UserSalesVolume $UserSalesVolume) { return ''.$UserSalesVolume->getStatusType().''; }) ->addColumn('message', function (UserSalesVolume $UserSalesVolume) { return ''.$UserSalesVolume->message.''; }) ->orderColumn('id', 'id $1') ->orderColumn('order', 'order $1') ->orderColumn('status', 'status $1') ->orderColumn('status', 'message $1') ->rawColumns(['id', 'order', 'status', 'message', 'total_net']) ->make(true); } }