Файловый менеджер - Редактировать - /home/clickysoft/public_html/assets.clickysoft.net/app/Repositories/UsersRepository.php
Назад
<?php namespace App\Repositories; use App\Http\Resources\Api\UserShowResource; use App\Models\User; use DB; use Exception; use Illuminate\Http\Request; use Symfony\Component\HttpFoundation\Response; class UsersRepository implements UsersRepositoryInterface { public function getAllUsers(Request $request) { $users = User::orderBy('id', 'desc'); if ($request->filled('search')) { $users = User::where("first_name", "like", "%" . $request->get("search", "") . "%") ->orWhere("last_name", "like", "%" . $request->get("search", "") . "%") ->orWhere("email", "like", "%" . $request->get("search", "") . "%") ->orWhere("contact_number", "like", "%" . $request->get("search", "") . "%")->orWhere("user_type", "like", "%" . $request->get("search", "") . "%"); } return $users->paginate(50); } public function getUsersDropDown() { return User::select('id', 'first_name', 'last_name', 'email')->get(); } public function storeUser(Request $request) { DB::beginTransaction(); try { $user = User::create($request->all()); $user->companies()->attach($request->input('companies', [])); $user->roles()->attach($request->input('roles', [])); if ($request->file('avatar')) { $user->addMediaFromRequest('avatar')->toMediaCollection('avatar', 'avatar'); } DB::commit(); return (new UserShowResource($user)) ->response() ->setStatusCode(Response::HTTP_CREATED); } catch (Exception $e) { DB::rollBack(); return response()->json(['message' => $e->getMessage()], 500); } } public function updateUser(Request $request, User $user) { DB::beginTransaction(); try { if (empty($request->input('password'))) { $request->request->remove('password'); } $user->update($request->all()); $user->companies()->sync($request->input('companies', [])); $user->roles()->sync($request->input('roles', [])); if ($request->file('avatar', false)) { if ($user->avatar) { $user->avatar->delete(); } $user->addMediaFromRequest('avatar')->toMediaCollection('avatar', 'avatar'); } DB::commit(); return (new UserShowResource($user)) ->response() ->setStatusCode(Response::HTTP_ACCEPTED); } catch (Exception $e) { DB::rollBack(); return response()->json(['message' => $e->getMessage()], Response::HTTP_INTERNAL_SERVER_ERROR); } } public function destroyUser(User $user) { if ($user->avatar) { $user->avatar->delete(); } $user->delete(); } public function updateUserProfile(Request $request) { $user = auth()->user(); $user->update($request->validated()); if ($request->file('avatar', false)) { if ($user->avatar) { $user->avatar->delete(); } $user->addMediaFromRequest('avatar')->toMediaCollection('avatar', 'avatar'); $user = User::find($user->id); } return $user; } public function massDestroyUsers($ids) { try { DB::beginTransaction(); $users = User::whereIn("id", $ids)->get(); foreach ($users as $user) { if ($user->avatar) { $user->avatar->delete(); } $user->delete(); } DB::commit(); return response(null, Response::HTTP_NO_CONTENT); } catch (Exception $error) { DB::rollBack(); return response(["message" => "Could not delete users"], Response::HTTP_INTERNAL_SERVER_ERROR); } } }
| ver. 1.4 |
Github
|
.
| PHP 8.1.29 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка