/** * Run the database seeds. * * @return void */ public function run() { Model::unguard(); $faker = \Faker\Factory::create(); $user = User::create(['name' => 'Christian Kasperbauer', 'email' => '*****@*****.**', 'password' => bcrypt('grütze'), 'phone' => '0176-23152819', 'misc' => 'Friedrich-Ebert-Ring 4 97072 Würzburg (Ton-)Technik, KRIS, Website!', 'rights' => 'all']); $user2 = User::create(['name' => $faker->name, 'email' => $faker->email, 'password' => bcrypt('grütze'), 'phone' => $faker->phoneNumber, 'misc' => $faker->sentence()]); for ($i = 0; $i <= 15; $i++) { User::create(['name' => $faker->name, 'email' => $faker->email, 'password' => bcrypt('grütze'), 'phone' => $faker->phoneNumber, 'misc' => $faker->sentence()]); } Category::insert([['name' => 'Konzert', 'class' => 'light-green'], ['name' => 'Partey', 'class' => 'funky'], ['name' => 'Theater', 'class' => 'red'], ['name' => 'Kino', 'class' => 'amber'], ['name' => 'Sonstiges', 'class' => 'blue-grey'], ['name' => 'Wort', 'class' => 'light-blue']]); $user->events()->save(Event::create(['scheduled_at' => Carbon::now()->addDays(4), 'category_id' => rand(1, 6), 'title' => 'Basement Blast', 'subtitle' => 'Geballer im Keller', 'description' => $faker->paragraph(10), 'admission' => 'donation', 'genre' => 'Metal', 'google_event_id' => str_random(12)])); $user2->events()->save(Event::create(['scheduled_at' => Carbon::now()->addDays(9), 'category_id' => rand(1, 6), 'title' => 'Boxbeutel Boombox', 'subtitle' => 'Lecker Weinchen', 'description' => $faker->paragraph(10), 'admission' => 'free', 'genre' => 'Suff', 'google_event_id' => str_random(12)])); $user->events()->save(Event::create(['scheduled_at' => Carbon::now()->addDays(2)->addMonth(), 'category_id' => rand(1, 6), 'title' => 'Beats & Lyrics', 'subtitle' => 'Freestyle Chypher', 'description' => $faker->paragraph(10), 'admission' => 'donation', 'genre' => 'HipHop', 'google_event_id' => str_random(12)])); $user2->events()->save(Event::create(['scheduled_at' => Carbon::now()->subDays(2), 'category_id' => rand(1, 6), 'title' => 'Schon vorbei', 'subtitle' => 'Schade, du warst du spät', 'description' => $faker->paragraph(10), 'admission' => 'free', 'google_event_id' => str_random(12)])); $user->events()->save(Event::create(['scheduled_at' => Carbon::now()->subMonth(2), 'category_id' => rand(1, 6), 'title' => 'Gelöscht', 'subtitle' => 'Wird niemals stattfinden', 'description' => $faker->paragraph(10), 'admission' => 'free', 'google_event_id' => str_random(12), 'deleted_at' => Carbon::now()->subDays(7)])); $events = Event::all(); foreach ($events as $event) { $event->options()->save(EventOptions::create(['time_start' => '19:00', 'time_end' => '00:00', 'time_meal' => '18:00', 'shifts_bar' => rand(1, 2), 'shifts_tech' => rand(0, 2), 'shifts_door' => rand(0, 1), 'meal_servings' => rand(0, 15), 'misc' => 'Test test test'])); $user_id = rand(1, 2); $event->shifts()->save(Shift::create(['user_id' => $user_id, 'type' => 'tech'])); $event->shifts()->save(Shift::create(['user_id' => $user_id == 1 ? 2 : 1, 'type' => 'bar'])); } Model::reguard(); }
protected function makeShift($schedule, $manager_id, $employee_id) { foreach ($schedule as $shift) { $shift['start_time'] = $shift['date'] . ' ' . $shift['start_time']; $shift['end_time'] = $shift['date'] . ' ' . $shift['end_time']; Shift::create(['employee_id' => $employee_id, 'manager_id' => $manager_id, 'start_time' => $shift['start_time'], 'end_time' => $shift['end_time']]); } }
/** * Execute the console command. * * @return mixed */ public function handle() { $date = new \DateTime(); $date->modify('+3 days'); $formatted_date_from = $date->format('Y-m-d'); $date->modify('+6 days'); $formatted_date_to = $date->format('Y-m-d'); $dates = createDateRangeArray(strtotime($formatted_date_from), strtotime($formatted_date_to)); $bases = Base::where('center', 1)->get(); $current_gen = Gen::getCurrentGen(); $shiftSessions = ShiftSession::where('active', 1)->get(); $lastShift = Shift::where('gen_id', $current_gen->id)->orderBy('week', 'desc')->first(); $week = $lastShift ? $lastShift->week : 0; foreach ($dates as $date) { foreach ($bases as $base) { foreach ($shiftSessions as $shiftSession) { $shift = new Shift(); $shift->gen_id = $current_gen->id; $shift->base_id = $base->id; $shift->shift_session_id = $shiftSession->id; $shift->week = $week + 1; $shift->date = $date; $shift->save(); } } } $role_ids = Tab::find(35)->roles->pluck('id')->unique()->toArray(); $roles = Role::whereIn('id', $role_ids)->get(); if ($week == 0) { $week = 1; } foreach ($roles as $role) { $users = $role->users; foreach ($users as $user) { send_mail_regis_shift($user, $week, $current_gen, ['*****@*****.**']); } } $this->info('done'); }
/** * Bootstrap any application services. * * @return void */ public function boot(Guard $auth) { view()->composer('*', function ($view) { $pages = Page::orderBy('position', 'asc')->get(); $view->with('pages', $pages); }); view()->composer('*', function ($view) { $view->with('currentUser', Auth::user()); }); view()->composer('sidebar.special', function ($view) { $specialProduct = Product::where('special', 1)->get(); $view->with('specialProduct', $specialProduct); }); view()->composer('sidebar.admin', function ($view) { $today = \Carbon\Carbon::today(); $orders = DB::table('orders')->where('dateOrdered', '=', $today)->where('status_id', '>', 1)->count('id'); $view->with('orders', $orders); }); view()->composer('sidebar.admin', function ($view) { $today = date('l'); $hours = DB::table('hours')->where('day', $today)->value('hours'); $view->with('hours', $hours); }); view()->composer('sidebar.admin', function ($view) { $batches = Batch::where('proddate', \Carbon\Carbon::today())->count(); $view->with('batches', $batches); }); view()->composer('sidebar.admin', function ($view) { $date = date('Y-m-d'); $shift = Shift::where('date', $date)->pluck('id'); $employeees = Shift::find($shift)->users()->count(); $view->with('employeees', $employeees); }); view()->composer('sidebar.special', function ($view) { $categories = Category::all(); $view->with('categories', $categories); }); view()->composer('*', function ($view) use($auth) { $user = Auth::user(); if (Auth::user()) { $cart = DB::table('orders')->select('id')->where('status_id', '=', 1)->where('user_id', '=', $user->id)->value('id'); $cartItems = DB::table('order_products')->where('order_id', '=', $cart)->sum('quantity'); $view->with('cartItems', $cartItems); } }); }
/** * Store a newly created resource in storage. * * @return Response */ public function store(Request $request) { // Only managers can create new shifts if (Auth::user()->role == "manager") { // These need better validation but for times sake, this will prevent some bad data (not all) $validator = Validator::make($request->all(), ['employee_id' => 'required', 'start_time' => 'required|min:1', 'end_time' => 'required|min:1']); if ($validator->fails()) { return $this->setStatusCode('400')->setError('Missing data to create a new shift resource'); } $shift = new \App\Shift(); $shift->employee_id = $request->employee_id; $shift->manager_id = Auth::user()->id; $shift->start_time = $request->start_time; $shift->end_time = $request->end_time; if (!$shift->save()) { return $this->setStatusCode(500)->setError('An error occured'); } // Everything checks out... return $this->setStatusCode(200)->setSuccess('success'); } else { // For readability sake, even though we will always return return $this->setStatusCode(403)->setError('Unauthorized Access'); } }
/** * Show the form for editing the specified resource. * * @param int $id * @return \Illuminate\Http\Response */ public function edit($id) { $users = User::where('role_id', '<', '3')->get(); $shift = Shift::find($id); return view('shifts.edit', ['users' => $users, 'shift' => $shift]); }
/** * Remove the specified resource from storage. * * @param int $id * @return Response */ public function destroy($id) { // return response('Successfully deleted', 200, []); $shift = Shift::find($id); if ($shift) { $shift->delete(); return response('Successfully deleted', 200, []); } else { return response('Something went wrong!', 500, []); } }
public function remove_shift_regis(Request $request) { $shift_id = $request->shift_id; $shift = Shift::find($shift_id); $shift->user_id = 0; $shift->save(); $shift_pick = new ShiftPick(); $shift_pick->user_id = $this->user->id; $shift_pick->shift_id = $shift->id; $shift_pick->status = 0; $shift_pick->save(); $data = json_encode(["id" => $shift->id]); $publish_data = array("event" => "remove-shift", "data" => $data); Redis::publish('colorme-channel', json_encode($publish_data)); return response()->json(['message' => "Bỏ đăng ký thành công", 'status' => 1]); }
public function store(Request $request) { $input = $request->all(); Shift::create($input); return redirect('schedule'); }
/** * Update a resource in storage * @return Response */ public function update($id, Request $request) { // Only managers can update shifts if (Auth::user()->role == "manager") { //var_dump($request->all()); /*$validator = Validator::make($request->all(), [ 'id' => 'required', ]); if ($validator->fails()) { return $this->setStatusCode('400')->setError('Missing data to update shift resource'); }*/ $shift = Shift::findOrFail($id); if (!$shift) { return $this->setStatusCode(404)->setError('Shift resource #' . $request->id . ' not found'); } // What changed in the passed in data if ($shift->start_time != $request->start_time) { $shift->start_time = $request->start_time; } if ($shift->end_time != $request->end_time) { $shift->end_time = $request->end_time; } if ($shift->employee_id != $request->employee_id) { $shift->employee_id = $request->employee_id; } if ($shift->save()) { return $this->setStatusCode(200)->setSuccess('success'); } } else { // For readability sake, even though we will always return return $this->setStatusCode(403)->setError('Unauthorized Access'); } }
public function destroy(Shift $shift) { $shift->delete(); return $this->respond($shift); }