File manager - Edit - /var/www/html/spdc/api/app/Http/Services/NupdecActuationService.php
Back
<?php namespace App\Http\Services; use App\Classes\BaseServiceResponse; use App\Http\Requests\NupdecActuationRequest; use App\Http\Resources\NupdecCommonResource; use App\Http\Resources\NupdecResource; use App\Models\Nupdec; use App\Models\NupdecActuation; use Exception; use Illuminate\Http\JsonResponse; use Illuminate\Support\Facades\DB; use Illuminate\Http\Request; use Illuminate\Support\Facades\Validator; class NupdecActuationService extends BaseService { public function index(): BaseServiceResponse { $nupdecs = NupdecActuation::paginate(15); return $this->response( NupdecCommonResource::collection($nupdecs), JsonResponse::HTTP_OK ); } public function show(string $id) { $nupdec = NupdecActuation::findOrFail(['id' => $id])->first(); return $this->response( [ 'nupdec' => new NupdecCommonResource($nupdec), ], JsonResponse::HTTP_OK ); } public function store(NupdecActuationRequest $request): BaseServiceResponse { try { DB::beginTransaction(); $data = $request->all(); $nupdec = NupdecActuation::create($data); } catch (Exception $exception) { DB::rollBack(); return $this->response( ["error" => $exception->getMessage()], JsonResponse::HTTP_INTERNAL_SERVER_ERROR ); } DB::commit(); return $this->response( new NupdecCommonResource($nupdec), JsonResponse::HTTP_CREATED ); } public function update(Request $request, string $id): BaseServiceResponse { $data = $request->all(); $nupdec = NupdecActuation::findOrFail($id)->first(); $nupdec->update($data); return $this->response( new NupdecCommonResource($nupdec), JsonResponse::HTTP_CREATED ); } public function delete(string $id) { try{ DB::beginTransaction(); $nupdec = NupdecActuation::findOrFail($id)->first(); $nupdec->delete(); }catch(Exception $e){ DB::rollBack(); return $this->response( ["error" => $e->getMessage()], JsonResponse::HTTP_INTERNAL_SERVER_ERROR ); } DB::commit(); return $this->response( [], JsonResponse::HTTP_OK ); } public function getByNupdec(string $nupdecId): BaseServiceResponse { try { if(!Nupdec::where('id', $nupdecId)->exists()) { return $this->response( ['message' => 'Nupdec not found'], JsonResponse::HTTP_NOT_FOUND ); } $nupdec = NupdecActuation::where('nupdec_id', $nupdecId); $data['total'] = $nupdec->count(); $data['list'] = $nupdec->get(); } catch (Exception $e) { return $this->response( ["error" => $e->getMessage()], JsonResponse::HTTP_INTERNAL_SERVER_ERROR ); } return $this->response( $data, JsonResponse::HTTP_OK ); } public function storeMany(Request $request): BaseServiceResponse { $validator = Validator::make($request->all(), [ 'nupdec_id' => ['required', 'exists:nupdec,id'], 'actuations' => ['required', 'array'], 'actuations.*.notes' => ['nullable', 'string'], 'actuations.*.date' => ['required', 'date'], ]); if ($validator->fails()) { return $this->response( ["error" => $validator->errors()], JsonResponse::HTTP_UNPROCESSABLE_ENTITY ); } try { DB::beginTransaction(); $nupdec = Nupdec::findOrFail($request->nupdec_id); if (!$nupdec) { return $this->response( null, JsonResponse::HTTP_NOT_FOUND, 'Nupdec not found' ); } $data = $request->actuations; $nupdec->actuations()->createMany($data); } catch (Exception $exception) { DB::rollBack(); return $this->response( ["error" => $exception->getMessage()], JsonResponse::HTTP_INTERNAL_SERVER_ERROR ); } DB::commit(); return $this->response( new NupdecResource($nupdec), JsonResponse::HTTP_CREATED ); } }
| ver. 1.4 |
Github
|
.
| PHP 8.3.28 | Generation time: 0.02 |
proxy
|
phpinfo
|
Settings