29 lines
1.0 KiB
PHP
29 lines
1.0 KiB
PHP
<?php
|
|
|
|
namespace App\Services\Cartables\UserManagement;
|
|
|
|
use App\Facades\DataTable\DataTableFacade;
|
|
use App\Models\User;
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Support\Facades\Auth;
|
|
|
|
class UserManagementService
|
|
{
|
|
public function datatable(Request $request): array
|
|
{
|
|
$user = Auth::user();
|
|
$query = $user->hasPermissionTo('full-user-management') ?
|
|
User::query() :
|
|
User::query()->where('province_id', '=', $user->province_id);
|
|
|
|
return DataTableFacade::run(
|
|
$query,
|
|
$request,
|
|
allowedFilters: ['*'],
|
|
allowedSortings: ['*'],
|
|
allowedSelects: ['id', 'username', 'province_id', 'province_fa', 'city_id', 'city_fa', 'first_name', 'last_name', 'mobile', 'position', 'major', 'setad_id', 'last_login', 'edarate_shahri_id', 'edarate_shahri_name', 'national_code', 'name', 'enabled', 'email',
|
|
'edarate_ostani_id', 'edarate_ostani_name', 'degree', 'confirmed', 'checked', 'updated_at', 'photo', 'created_at'],
|
|
);
|
|
}
|
|
}
|