public function delete(User $user, Form $form) { if ($user->isAdmin() && !$form->isRestricted()) { return true; } return false; }
public function show(User $user, Employee $employee) { if ($user->employee->id == $employee->id) { return true; } elseif ($user->isAdmin()) { return true; } elseif ($user->department && $employee->user->department && $user->isDepartmentHead() && $user->department->id == $employee->user->department->id) { return true; } return false; }
public function create(User $user, TravelOrder $travel) { $employee = $user->employee; if ($user->isFinanceDirector() && getAdmin()) { return true; } if ($employee->approval_heirarchy && $employee->utility->can_file_travel_order && HumanResource::financeDirector()) { return true; } return false; }
public function update(Request $request, User $user) { if ($user) { $user->update($request->all()); if ($request->positions) { $user->positions()->sync($request->positions); } else { $user->positions()->sync([]); } flash()->success($user->username . ' successfully updated.'); } else { flash()->error('An unknown error occured!'); } return redirect()->back(); }
/** * @return mixed */ public function create() { $users = User::with('employee')->get()->reject(function ($user) { return $user->id === auth()->user()->id; }); return response()->view('messages.create', with(compact('users'))); }
public function getLockScreen(Request $request) { $user = User::where('username', $request->username)->first(); if ($user) { return view('auth.lock')->with(compact('user')); } flash()->error($this->getFailedLoginMessage()); return redirect()->back(); }
public function show(User $user, EmployeeLeave $leave) { $employee = $user->employee; if ($user->isAdmin()) { return true; } switch ($employee->id) { case $leave->employee->id: return true; break; case $leave->recommending_approval_id: return true; break; case $leave->approved_by_id: return true; break; default: return false; break; } }
/** * Bind data to the view. * * @param View $view * @return void */ public function compose(View $view) { if (auth()->user()->employee) { $stats = collect(); $sessions = $this->session->getActiveUsers(); $stats->push(['title' => 'System users', 'class' => 'info', 'icon' => 'users', 'number' => User::count(), 'description' => 'Registered user account in the system', 'url' => '/employee']); $stats->push(['title' => 'User with PDS', 'class' => 'success', 'icon' => 'user', 'number' => round(Employee::count() / User::count() * 100, 0) . '%', 'description' => Employee::count() . ' employees with Personal Data Sheet', 'url' => '/employee']); $stats->push(['title' => 'Leave Request', 'class' => 'danger', 'icon' => 'thumbs-o-up', 'number' => EmployeeLeave::approved()->count(), 'description' => '<i class="fa fa-thumbs-o-up"></i> ' . EmployeeLeave::count() . ' Total filed leaves', 'url' => 'leave']); $stats->push(['title' => 'Upcoming Trainings', 'class' => 'warning', 'icon' => 'calendar', 'number' => Training::where('start', '>', Carbon::today())->count(), 'description' => '<i class="fa fa-calendar"></i> ' . Training::count() . ' Trainings & Seminar', 'url' => '/calendar']); $view->with(compact('stats', 'sessions')); } }
/** * Execute the console command. * * @return mixed */ public function handle() { $users = User::active()->has('employee')->with('employee.accumulated_leave', 'employee.utility', 'employee.personnel_leave_card')->get(); foreach ($users as $user) { $employee = $user->employee; $utility = $employee->utility; $incrementedSickLeave = $utility->can_file_sick_leave ? 1.25 : 0; $incrementedVacationLeave = $utility->can_file_vacation_leave ? 1.25 : 0; $employee->accumulated_leave->update(['sick_leave' => $incrementedSickLeave + $employee->accumulated_leave->sick_leave, 'vacation_leave' => $incrementedVacationLeave + $employee->accumulated_leave->vacation_leave_leave]); $employee->personnel_leave_card()->create(['particulars' => 'Increment leave credit', 'vl_earned' => $incrementedVacationLeave, 'vl_balance' => $employee->accumulated_leave->vacation_leave, 'sl_earned' => $incrementedSickLeave, 'sl_balance' => $employee->accumulated_leave->sick_leave, 'remarks' => 'Increment leave credits']); } $this->info('Leave credits successfully incremented!'); }
public static function financeDirector() { $user = User::financeDirector()->orderBy('created_at', 'desc')->first(); return self::checkIfNull($user); }
public function forUser(User $user) { return $user->employee()->with('employee_address', 'employee_child', 'employee_civil_services', 'employee_educations', 'employee_non_academics', 'employee_organizations', 'employee_parents', 'employee_reference', 'employee_skills', 'employee_spouse', 'employee_training_programs', 'employee_voluntary_works', 'employee_work_experiences', 'trainings', 'approval_heirarchy'); }
/** * Create a new user instance after a valid registration. * * @param array $data * @return User */ protected function create(array $data) { $user = User::create(['username' => $data['username'], 'type' => $data['type'], 'password' => Hash::make($data['username']), 'department_id' => isset($data['department_id']) ? $data['department_id'] : null]); $user->positions()->attach($data['positions']); return $user; }
public function summary(Request $request) { $users = User::has('employee')->orderBy('username')->get(); if ($users->isEmpty()) { flash()->error('Employee is empty.'); return redirect()->back(); } write_form(new \DNSCHumanResource\FormWriters\WriteEmployeeSummary($users)); }
public function getAllEmployees() { $users = User::with('employee.employee_qce', 'employee.personnel_performance', 'department', 'positions', 'employee.leave_credit', 'employee.accumulated_leave', 'employee.approval_heirarchy', 'employee.utility')->get(); return response()->json($users); }