Файловый менеджер - Редактировать - /home/clickysoft/public_html/assets.clickysoft.net/app/Repositories/MaintenanceSchedulesRepository.php
Назад
<?php namespace App\Repositories; use App\Models\MaintenanceSchedule; use App\Models\MaintenanceStatus; use DB; use Exception; use Illuminate\Http\Request; use Symfony\Component\HttpFoundation\Response; class MaintenanceSchedulesRepository implements MaintenanceSchedulesRepositoryInterface { public function getAllMaintenanceSchedules(Request $request) { $maintenanceSchedule = MaintenanceSchedule::with(["asset", "tag", "user", "currency"])->orderBy("id", "desc"); if ($request->filled('search')) { $maintenanceSchedule = MaintenanceSchedule::where("maintenance_type", "like", "%" . $request->get("search", "") . "%") ->orWhere("status", "like", "%" . $request->get("search", "") . "%") ->orWhere("frequency", "like", "%" . $request->get("search", "") . "%") ->orWhere("interval", "like", "%" . $request->get("search", "") . "%") ->orWhere("notes", "like", "%" . $request->get("search", "") . "%"); $maintenanceSchedule = $maintenanceSchedule->orWhereHas('asset', function ($q) use ($request) { $q->where('asset_name', 'like', '%' . $request->search . '%'); })->orWhereHas('user', function ($q) use ($request) { $q->where('first_name', 'like', '%' . $request->search . '%') ->orWhere('last_name', 'like', '%' . $request->search . '%'); }); } return $maintenanceSchedule->paginate(50); } public function getMaintenanceSchedulesDropDownList() { $types = []; $statuses = []; $frequencies = []; foreach (config('scheduling.types') as $type) { $types[] = ["label" => $type, "value" => $type]; } foreach (config('scheduling.statuses') as $status) { $statuses[] = ["label" => $status, "value" => $status]; } foreach (config('scheduling.frequencies') as $frequency) { $frequencies[] = ["label" => $frequency, "value" => $frequency]; } return response([ 'types' => $types, 'statuses' => $statuses, 'frequencies' => $frequencies, ]); } public function storeMaintenanceSchedule($data) { $maintenance_schedule = MaintenanceSchedule::create($data); MaintenanceStatus::create([ "maintenance_schedule_id" => $maintenance_schedule->id, "status" => $data->status, "organization_id" => $data["organization_id"] ]); return $maintenance_schedule->load(["asset", "user", "currency"]); } public function getMaintenanceSchedule(MaintenanceSchedule $maintenance_schedule) { return $maintenance_schedule->load(["asset", "user", "currency"]); } public function updateMaintenanceSchedule($data, MaintenanceSchedule $maintenance_schedule) { $currentStatus = $maintenance_schedule->status; $maintenance_schedule->update($data); if ($currentStatus != $data["status"]) { MaintenanceStatus::create([ "maintenance_schedule_id" => $maintenance_schedule->id, "status" => $data["status"], "organization_id" => $data["organization_id"] ]); } return $maintenance_schedule->load(["asset", "user", "currency"]); } public function destroyMaintenanceSchedule(MaintenanceSchedule $maintenance_schedule) { $maintenance_schedule->delete(); } public function massDestroyMaintenanceSchedules($ids) { try { DB::beginTransaction(); MaintenanceSchedule::whereIn("id", $ids)->delete(); return response(null, Response::HTTP_INTERNAL_SERVER_ERROR); } catch (Exception $error) { DB::rollBack(); return response(["message" => "Could not delete maintenance schedules"], Response::HTTP_INTERNAL_SERVER_ERROR); } } }
| ver. 1.4 |
Github
|
.
| PHP 8.1.29 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка