Files
new_raffles/Modules/CourseFinder/app/Services/RequiredDocumentService.php
2025-07-27 17:40:56 +05:45

50 lines
1.3 KiB
PHP

<?php
namespace Modules\CourseFinder\Services;
use Illuminate\Support\Facades\DB;
use Modules\CourseFinder\Models\RequiredDocument;
class RequiredDocumentService
{
public function getAllCategories()
{
$query = RequiredDocument::query();
return $query->get();
}
public function storeRequiredDocument(array $requiredDocumentData): RequiredDocument
{
return DB::transaction(function () use ($requiredDocumentData) {
$requiredDocument = RequiredDocument::create($requiredDocumentData);
return $requiredDocument;
});
}
public function getRequiredDocumentById(int $id)
{
return RequiredDocument::findOrFail($id);
}
public function updateRequiredDocument(int $id, array $requiredDocumentData)
{
$requiredDocument = $this->getRequiredDocumentById($id);
return DB::transaction(function () use ($requiredDocument, $requiredDocumentData) {
$requiredDocument->update($requiredDocumentData);
return $requiredDocument;
});
}
public function deleteRequiredDocument(int $id)
{
return DB::transaction(function () use ($id) {
$requiredDocument = $this->getRequiredDocumentById($id);
$requiredDocument->delete();
return true;
});
}
}