Compare commits

...

1 Commits

Author SHA1 Message Date
faezeh
f133107b9f create show for Expert Document Controller 2026-07-08 09:44:39 +03:30
3 changed files with 19 additions and 3 deletions

View File

@@ -29,6 +29,16 @@ class DocumentationController extends Controller
); );
} }
public function show(User $user): JsonResponse
{
$data=User::query()
->with([
'gateway:id,user_id,domain,tax_id,bank_name,account_holder,logo',
'documents:id,documentable_id,documentable_type,title,url',
])->find($user);
return $this->successResponse($data);
}
public function files(User $user): JsonResponse public function files(User $user): JsonResponse
{ {
return $this->successResponse($user->load('documents')); return $this->successResponse($user->load('documents'));

View File

@@ -7,7 +7,8 @@ use Database\Factories\UserFactory;
use Illuminate\Database\Eloquent\Attributes\Guarded; use Illuminate\Database\Eloquent\Attributes\Guarded;
use Illuminate\Database\Eloquent\Attributes\Hidden; use Illuminate\Database\Eloquent\Attributes\Hidden;
use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Relations\MorphToMany; use Illuminate\Database\Eloquent\Relations\HasOne;
use Illuminate\Database\Eloquent\Relations\MorphMany;
use Illuminate\Foundation\Auth\User as Authenticatable; use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable; use Illuminate\Notifications\Notifiable;
use Illuminate\Support\Facades\Hash; use Illuminate\Support\Facades\Hash;
@@ -22,9 +23,13 @@ class User extends Authenticatable
use HasFactory, Notifiable, HasApiTokens; use HasFactory, Notifiable, HasApiTokens;
protected $guarded = ['id']; protected $guarded = ['id'];
public function documents(): MorphToMany public function documents(): MorphMany
{ {
return $this->morphToMany(Document::class, 'documentable'); return $this->morphMany(Document::class, 'documentable');
}
public function gateway(): HasOne
{
return $this->hasOne(UserGateway::class);
} }
public function validateForPassportPasswordGrant(string $password): bool public function validateForPassportPasswordGrant(string $password): bool

View File

@@ -22,6 +22,7 @@ Route::prefix('documents')
->controller(DocumentationController::class) ->controller(DocumentationController::class)
->group(function () { ->group(function () {
Route::get('/', 'index')->name('index'); Route::get('/', 'index')->name('index');
Route::get('/{user}', 'show')->name('show');
Route::post('confirm/{user}', 'confirm')->name('confirm'); Route::post('confirm/{user}', 'confirm')->name('confirm');
Route::post('reject/{user}', 'reject')->name('reject'); Route::post('reject/{user}', 'reject')->name('reject');
Route::get('files/{user}', 'files')->name('files'); Route::get('files/{user}', 'files')->name('files');