public function dashboard() { $user = Auth::user(); $recent = Change::where('user_id', $user->id)->get(); $tasks = $user->goats()->orderBy('due_date')->get(); $dept = $user->departments()->get(); $recentEmpty = true; $tasksEmpty = true; foreach ($tasks as $task) { if (!$task->complete) { $tasksEmpty = false; } // if (Carbon\Carbon::parse($task->due_date)->diff(Carbon\Carbon::now())){ // $task->soon = 'red'; // } // else{ // $task->soon = ''; // } } //redo controller $inProgress = $user->goats()->where('complete', '0')->count(); $complete = $user->goats()->where('complete', '1')->count(); $overdue = 0; foreach ($tasks as $task) { if (Carbon\Carbon::parse($task->due_date)->lt(Carbon\Carbon::now())) { $overdue++; } } $inProgress -= $overdue; foreach ($recent as $task) { $recentEmpty = false; $task->task = Goat::where('id', $task->goat_id)->value('description'); } return view('dashboard', compact('user', 'tasks', 'dept', 'recent', 'recentEmpty', 'tasksEmpty', 'complete', 'inProgress', 'overdue')); }
public function store(BookingRequest $request) { $booking = array('car_type_id' => $request->car_type_id, 'number_of_passengers' => $request->number_of_passengers, 'pickup_time' => $request->pickup_date_part . ' ' . $request->pickup_time_part, 'ip_info' => $request->ip_info); $newBooking = Booking::create($booking); flash()->success('Your booking has been created!')->important(); if (!empty($request->comment1)) { //children comment $comment1 = array('booking_id' => $newBooking->id, 'comment_type_id' => '1', 'role_id' => '1', 'comment' => $request->comment1); Comment::create($comment1); } if (!empty($request->comment2)) { //general comment $comment2 = array('booking_id' => $newBooking->id, 'comment_type_id' => '2', 'role_id' => '1', 'comment' => $request->comment2); Comment::create($comment2); } $change = array('booking_id' => $newBooking->id, 'change_type_id' => '4', 'user_id' => Auth::user()->id, 'from' => null, 'to' => null); Change::create($change); $passenger = User::firstOrNew(['email' => $request->email]); $passenger->name = $request->name; $passenger->phone = $request->phone; $passenger->save(); $role = array('booking_id' => $newBooking->id, 'role_type_id' => '2', 'user_id' => $passenger->id); Role::create($role); $price = array('booking_id' => $newBooking->id, 'income_type_id' => '1', 'amount_eur' => $request->price); Income::create($price); $locationArray = $request->location; foreach ($request->address as $order => $address_id) { $route_point = null; $route_point = array('booking_id' => $newBooking->id, 'location_id' => $locationArray[$order], 'address_id' => $address_id, 'order' => $order); Route_point::create($route_point); } return redirect('bookings'); }
public function index(Request $request) { $query = $request->input(); $changes = Change::select('*'); if ($request->input('user')) { $changes = $changes->where('user_id', $request->input('user')); } if ($request->input('start')) { $changes = $changes->where('changes.created_at', '>=', $request->input('start')); } if ($request->input('end')) { $changes = $changes->where('changes.created_at', '<=', $request->input('end')); } if ($request->input('goat')) { $changes = $changes->where('goat_id', $request->input('goat')); } if ($request->input('type')) { $changes = $changes->where('change_type', $request->input('type')); } $changes = $changes->join('goats', 'goats.id', '=', 'changes.goat_id')->select('changes.description as description', 'changes.created_at as created_at', 'changes.change_type as change_type', 'changes.user_id as user_id', 'changes.goat_id as goat_id'); if ($request->input('dept')) { $changes = $changes->where('department_id', $request->input('dept')); } return view('changelog')->with(['changes' => $changes->orderBy('created_at', 'desc')->paginate(20), 'users' => \App\User::all(), 'depts' => \App\Department::all(), 'query' => $query]); }
public function forms() { $exitPass = ExitPass::where('status', '!=', 3)->get(); $leaveForm = Leaves::where('status', '!=', 3)->get(); $changeSchedule = Change::where('status', '!=', 3)->get(); $oas = Overtime::where('status', '!=', 3)->get(); return count($exitPass) + count($leaveForm) + count($changeSchedule) + count($oas); }
public function create(Request $req) { $user = Auth::user(); $change = new Change(); if ($req->option === 'Status') { $changeType = 'S'; } else { $changeType = 'N'; } if ($req->complete) { Goat::where('id', $req->id)->update(['complete' => '1']); } else { Goat::where('id', $req->id)->update(['complete' => false]); } if ($req->statusUpdate === '' && $req->complete) { $req->statusUpdate = 'Complete'; } $change = Change::create(['change_type' => $changeType, 'description' => $req->statusUpdate, 'goat_id' => $req->id, 'user_id' => $user->id]); return back(); }
public function __construct() { /*Licznik zmian, który zmienia się po 24h od dodania zmiany*/ $date = Carbon::now(); $date->modify('-24 hours'); $formatted_date = $date->format('Y-m-d H:i:s'); $countchange = Change::where('created_at', '>', $formatted_date)->count(); /*Licznik graczy Online na serwerze*/ $countonline = Player::where('online', '=', 1)->count(); /*Licznik niedoczytanych wiadomości prywatnych*/ $notread1 = Message::where('to_user_id', \Auth::id())->where('read', 0)->count(); if (\Auth::check()) { Cache::remember('users', 5, function () { return User::where('id', \Auth::id())->update(['last_activity' => Carbon::now()]); }); } /*Licznik i skrypt usuwający i nadający banicję za 4 ostrzeżenia na stronie*/ $countcautions = Caution::where('user_id', \Auth::id())->count(); if (!\Auth::guest() && $countcautions == 4) { $user = User::where('id', \Auth::id())->first(); $g = array(4); $user->update(['banned' => 'Zbanowany za 4 ostrzeżenia na stronie']); $user->group()->sync($g); } $deleteCaution = Caution::where('user_id', \Auth::id())->where('created_at', '<=', Carbon::now()->subDays(14)); $deleteCaution->delete(); $section = Section::lists('name', 'id'); $lives = Live::latest('created_at')->take(5)->get(); if (!\Auth::guest()) { $notifications = \Auth::user()->notification()->latest('created_at')->take(10)->get(); View::share('notifications', $notifications); } View::share('countchange', $countchange); View::share('countonline', $countonline); View::share('notread1', $notread1); View::share('section', $section); View::share('lives', $lives); $this->middleware('banned', ['except' => ['auth']]); }
public function store(ReservationRequest $request) { //booking $booking = array('car_type_id' => $request->car_type_id, 'number_of_passengers' => $request->number_of_passengers, 'pickup_time' => $request->pickup_date_part . ' ' . $request->pickup_time_part); $newBooking = Booking::create($booking); // main passenger //user (main passenger) $mainpassenger = new User(); $mainpassenger->name = $request->name; $mainpassenger->phone = $request->phone; $mainpassenger->save(); //role (main passenger) $role = array('booking_id' => $newBooking->id, 'role_type_id' => '2', 'user_id' => $mainpassenger->id); Role::create($role); //email receiver //user (email receiver) $emailreceiver = User::firstOrCreate(['email' => $request->email]); //role (email receiver) $role = array('booking_id' => $newBooking->id, 'role_type_id' => '5', 'user_id' => $emailreceiver->id); Role::create($role); //route points //start $route_point = array('booking_id' => $newBooking->id, 'location_id' => $request->start_location_id, 'sub_location_id' => $request->start_sub_location_id, 'description' => $request->start_description, 'order' => 1); Route_point::create($route_point); //via points $descriptionArray = $request->description; //if via array is not empty if (!empty($request->location_id)) { foreach ($request->location_id as $order => $location_id) { $route_point = null; $route_point = array('booking_id' => $newBooking->id, 'location_id' => $location_id, 'description' => $descriptionArray[$order], 'order' => $order); Route_point::create($route_point); } } //end $route_point = null; $route_point = array('booking_id' => $newBooking->id, 'location_id' => $request->end_location_id, 'description' => $request->end_description, 'order' => 99); Route_point::create($route_point); //general comment if (!empty($request->comment)) { $comment = array('booking_id' => $newBooking->id, 'comment_type_id' => '2', 'role_id' => '1', 'comment' => $request->comment); Comment::create($comment); } //price $price = Income_list::where('car_type_id', $request->car_type_id)->where('direction_id', $request->direction_id)->where('income_type_id', 1)->whereNull('user_id')->first(); $income = array('booking_id' => $newBooking->id, 'income_type_id' => '1', 'amount_eur' => $price->amount_eur); Income::create($income); //cashflow if ($request->payment_type_id == 3) { $receiver_id = 1; //receiver is driver $due_date = $newBooking->pickup_time; //on the day of travel } else { $receiver_id = 4; //receiver is us (admin) $pickup_time = new Carbon($newBooking->pickup_time); $due_date = $pickup_time->subHours(48); //48 hours before trip } $cashflow = array('booking_id' => $newBooking->id, 'payer_id' => 2, 'receiver_id' => $receiver_id, 'payment_type_id' => $request->payment_type_id, 'payment_status_id' => 1, 'amount_eur' => $price->amount_eur, 'due_date' => $due_date); Cashflow::create($cashflow); //log reservation creation $change = array('booking_id' => $newBooking->id, 'change_type_id' => '4', 'user_id' => 1, 'from' => null, 'to' => null); Change::create($change); //send email Mail::queue('emails.reservation', ['passenger' => $mainpassenger], function ($message) use($emailreceiver) { $message->from('*****@*****.**', 'Transfer Praha')->to($emailreceiver->email, null)->subject('Booking confirmation'); }); flash()->success('Your booking has been created!')->important(); return redirect('reservation/confirmation'); }
public function editChange(array $data, $id) { $dateFromShift = strtotime($data['dateFromShift']); $dateToShift = strtotime($data['dateToShift']); $dateToday = strtotime(date("Y-m-d")); if ($dateFromShift > $dateToday) { if ($dateToShift < $dateFromShift) { return false; } else { return Change::where('id', $id)->update(array('shift_id' => $data['shiftSchedule'], 'dateFromShift' => $data['dateFromShift'], 'dateToShift' => $data['dateToShift'], 'permission_id1' => $data['supervisor'], 'permission_id2' => $data['projectManager'], 'permission_id3' => $data['permissioner'], 'permission_id4' => $data['HR'], 'purpose' => $data['reasonforChangeSchedule'])); } } else { return false; } }
public function update_driver(Request $request) { /* Delete existing driver (role_type_id 1) */ Role::where('booking_id', $request->booking_id)->where('role_type_id', 1)->delete(); /* Add new role/user */ $role = new Role(); $role->booking_id = $request->booking_id; $role->role_type_id = 1; $role->user_id = $request->user_id; $role->save(); /* write to changes */ $user_name = User::where('id', $request->user_id)->first()->name; $change = array('booking_id' => $request->booking_id, 'change_type_id' => 1, 'user_id' => Auth::user()->id, 'from' => null, 'to' => $user_name); Change::create($change); return $change; }
public function index() { $showchange = Change::latest('id')->paginate(20); return view('changes.index', compact('showchange')); }
public function editChange(array $data, $id) { $dateUpdate = date("Y-m-d H:i:s"); $change = Change::where('id', $id)->update(array('permission_id1' => $data['supervisor'], 'permission_id2' => $data['projectManager'], 'permission_id3' => $data['permissioner'], 'permission_id4' => $data['HR'], 'purpose' => $data['reasonforChangeSchedule'], 'updated_at' => $dateUpdate)); if ($change) { return DateTimeChange::where('change_id', $id)->update(array('dateFromEffectivity' => $data['dateFromEffectivity'], 'timeFromEffectivity' => $data['timeFromEffectivity'], 'dateToEffectivity' => $data['dateToEffectivity'], 'timeToEffectivity' => $data['timeToEffectivity'], 'dateFromShift' => $data['dateFromShift'], 'timeFromShift' => $data['timeFromShift'], 'dateToShift' => $data['dateToShift'], 'timeToShift' => $data['timeToShift'], 'updated_at' => $dateUpdate)); } else { return false; } }
public function postchangeSchedule(Request $request) { $rules = array('dateFromShift' => 'required', 'dateToShift' => 'required', 'shiftSchedule' => 'required', 'reasonforChangeSchedule' => 'required', 'supervisor' => 'required', 'projectManager' => 'required', 'HR' => 'required'); $validator = Validator::make($request->all(), $rules); if ($validator->fails()) { $this->throwValidationException($request, $validator); } $department = Positions::find(Auth::user()->position_id)->departments; $dateFromShift = strtotime($request->input('dateFromShift')); $dateToShift = strtotime($request->input('dateToShift')); $dateToday = strtotime(date("Y-m-d")); if ($dateFromShift > $dateToday) { if ($dateToShift < $dateFromShift) { $status = "Please Double Check The Dates"; } else { $change = new Change(array('user_id' => Auth::user()->id, 'shift_id' => $request->input('shiftSchedule'), 'dateFromShift' => $request->input('dateFromShift'), 'dateToShift' => $request->input('dateToShift'), 'department_id' => $department->id, 'permission_id1' => $request->input('supervisor'), 'permission_id2' => $request->input('projectManager'), 'permission_id3' => $request->input('permissioner'), 'permission_id4' => $request->input('HR'), 'purpose' => $request->input('reasonforChangeSchedule'))); $result = $change->save(); if ($result) { $status = "Success!"; } else { $status = "Failed!"; } } } else { $status = "Please Double Check the Dates"; } return redirect('inbox')->with('status', $status); }