Файловый менеджер - Редактировать - /home/clickysoft/public_html/standup.clickysoft.net/app/Http/Controllers/Admin/StandupController.php
Назад
<?php namespace App\Http\Controllers\Admin; use App\Http\Controllers\Controller; use App\Http\Requests\MassDestroyStandupRequest; use App\Http\Requests\StoreStandupRequest; use App\Http\Requests\UpdateStandupRequest; use App\Models\Absent; use App\Models\Project; use App\Models\Standup; use App\Models\Team; use App\Models\User; use Gate; use Illuminate\Http\Request; use Illuminate\Support\Facades\DB; use Symfony\Component\HttpFoundation\Response; use Yajra\DataTables\Facades\DataTables; class StandupController extends Controller { public $attendanceDD= ["" => "-- Select Attendance --", "Present" => "Present", "Absent" => "Absent", "WFH" => "WFH"]; public function index(Request $request) { abort_if(Gate::denies('standup_access'), Response::HTTP_FORBIDDEN, '403 Forbidden'); if ($request->ajax()) { $query = Standup::with(['user', 'project', 'team'])->select(sprintf('%s.*', (new Standup)->table)); $table = Datatables::of($query); $table->addColumn('placeholder', ' '); $table->addColumn('actions', ' '); $table->editColumn('actions', function ($row) { $viewGate = 'standup_show'; $editGate = 'standup_edit'; $deleteGate = 'standup_delete'; $crudRoutePart = 'standup'; return view('partials.datatablesActions', compact( 'viewGate', 'editGate', 'deleteGate', 'crudRoutePart', 'row' )); }); $table->editColumn('id', function ($row) { return $row->id ? $row->id : ''; }); $table->addColumn('user_name', function ($row) { return $row->user ? $row->user->name : ''; }); $table->addColumn('attendance', function ($row) { return $row->attendance ? : 'N/A'; }); $table->addColumn('project_project_name', function ($row) { return $row->project ? $row->project->project_name : 'N/A'; }); $table->editColumn('yesterday_work', function ($row) { return $row->yesterday_work ? $row->yesterday_work : 'N/A'; }); $table->editColumn('today_work', function ($row) { return $row->today_work ? $row->today_work : 'N/A'; }); $table->editColumn('any_concern', function ($row) { return $row->any_concern ? $row->any_concern : 'N/A'; }); $table->rawColumns(['actions', 'placeholder', 'user', 'project']); return $table->make(true); } if(auth()->user()->roles->contains(1)) { $users = User::orderBy("name")->get(); } else { $team = Team::where('owner_id', auth()->user()->id)->first(); $users = User::orderBy("name")->where('team_id', $team->id ?? 0)->get(); } $projects = Project::get(); $teams = Team::get(); return view('admin.standup.index', compact('users', 'projects', 'teams')); } public function create() { abort_if(Gate::denies('standup_create'), Response::HTTP_FORBIDDEN, '403 Forbidden'); // if(auth()->user()->roles->contains(1)) { // $users = User::pluck('name', 'id')->prepend(trans('global.pleaseSelect'), ''); // } else { // $team = Team::where('owner_id', auth()->user()->id)->first(); // $users = User::where('team_id', $team->id ?? 0)->pluck('name', 'id')->prepend(trans('global.pleaseSelect'), ''); // } $team = Team::where('owner_id', auth()->user()->id)->first(); $users = User::where('team_id', $team->id ?? 0)->pluck('name', 'id')->prepend(trans('global.pleaseSelect'), ''); $projects = Project::pluck('project_name', 'id')->prepend(trans('global.pleaseSelect'), ''); return view('admin.standup.create', ['projects' => $projects, 'users' => $users, 'attendanceDD' => $this->attendanceDD]); } public function store(StoreStandupRequest $request) { $user = User::find($request->user_id); $data = $request->all(); $data["team_id"] = $user->team_id; Standup::create($data); return redirect()->back()->with("message", "Added successfully."); // return redirect()->route('admin.standup.index'); } public function edit(Standup $standup) { abort_if(Gate::denies('standup_edit'), Response::HTTP_FORBIDDEN, '403 Forbidden'); $users = User::pluck('name', 'id')->prepend(trans('global.pleaseSelect'), ''); $projects = Project::pluck('project_name', 'id')->prepend(trans('global.pleaseSelect'), ''); $standup->load('user', 'project', 'team'); return view('admin.standup.edit', ['projects' => $projects, 'standup' => $standup, 'users' => $users , 'attendanceDD' => $this->attendanceDD]); } public function update(UpdateStandupRequest $request, Standup $standup) { $standup->update($request->all()); return redirect()->route('admin.standup.index'); } public function show(Standup $standup) { abort_if(Gate::denies('standup_show'), Response::HTTP_FORBIDDEN, '403 Forbidden'); $standup->load('user', 'project', 'team'); return view('admin.standup.show', compact('standup')); } public function destroy(Standup $standup) { abort_if(Gate::denies('standup_delete'), Response::HTTP_FORBIDDEN, '403 Forbidden'); $standup->delete(); return back(); } public function massDestroy(MassDestroyStandupRequest $request) { $standups = Standup::find(request('ids')); foreach ($standups as $standup) { $standup->delete(); } return response(null, Response::HTTP_NO_CONTENT); } public function getLastEntry($user_id) { $standup = Standup::where('user_id', $user_id)->with(["user", "project"])->orderBy('id', 'desc')->first(); if($standup) { return response()->json(["message" => "", "standup" => $standup]); } else { return response()->json(["message" => "No entry found.", "standup" => null]); } } public function absentUser() { $users = User::get(); return view('admin.standup.absent-user',compact('users')); } public function absentUserCreate(Request $request) { $validatedData = $request->validate([ 'user_id' => 'required|exists:users,id', ]); $absent = Standup::create([ 'user_id'=>$request->input('user_id'), 'attendance'=>'absent', 'standup_date'=>$request->input('standup_date'), ]); return redirect()->route('admin.standup.index') ->with('message', 'Absent record created successfully!') ->with('absent', $absent); } }
| ver. 1.4 |
Github
|
.
| PHP 8.1.29 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка