add permission instead of role
This commit is contained in:
@@ -3,6 +3,7 @@ FROM docker.arvancloud.ir/php:8.3-fpm-alpine3.21
|
||||
# Install common php extension dependencies
|
||||
RUN apk update && apk add --no-cache \
|
||||
bash \
|
||||
nano \
|
||||
curl \
|
||||
libpng \
|
||||
libpng-dev \
|
||||
@@ -19,8 +20,7 @@ RUN apk update && apk add --no-cache \
|
||||
WORKDIR /var/www/crm
|
||||
COPY . .
|
||||
|
||||
RUN chown -R www-data:www-data /var/www/crm \
|
||||
&& chmod -R 777 /var/www/crm/storage
|
||||
RUN chmod -R 777 /var/www/crm/storage /var/www/crm/bootstrap/cache
|
||||
|
||||
|
||||
# install composer
|
||||
|
||||
@@ -68,7 +68,7 @@ class UserManagementController extends Controller
|
||||
'telephone_id' => $request->telephone_id,
|
||||
]);
|
||||
|
||||
$user->givePermissionTo($request->permissions);
|
||||
$user->syncPermissions($request->permissions);
|
||||
});
|
||||
|
||||
return $this->successResponse();
|
||||
@@ -102,7 +102,7 @@ class UserManagementController extends Controller
|
||||
'telephone_id' => $request->telephone_id
|
||||
]);
|
||||
|
||||
$user->syncRoles($request->roles);
|
||||
$user->syncPermissions($request->permissions);
|
||||
});
|
||||
|
||||
return $this->successResponse();
|
||||
|
||||
@@ -36,7 +36,7 @@ class UpdateRequest extends FormRequest
|
||||
'regex:/^09\d{9}$/'
|
||||
],
|
||||
'province_id' => 'required|exists:provinces,id',
|
||||
'roles' => 'required|exists:roles,id',
|
||||
'permissions' => 'required|exists:permissions,id',
|
||||
'avatar' => 'mimes:png,jpg,pdf|max:2048',
|
||||
'email' => ['email', Rule::unique('users', 'email')->ignore($this->user->id)],
|
||||
'telephone_id' => ['required', 'string', Rule::unique('users', 'telephone_id')->ignore($this->user->id)]
|
||||
|
||||
@@ -8,45 +8,47 @@ use App\Http\Controllers\ProfileController;
|
||||
use App\Http\Middleware\SuperAdminCheck;
|
||||
use Illuminate\Support\Facades\Route;
|
||||
|
||||
Route::prefix('auth')
|
||||
->name('auth.')
|
||||
->controller(AuthController::class)
|
||||
->group(function () {
|
||||
Route::post('/login', 'login')->name('login');
|
||||
Route::post('/logout', 'logout')->name('logout');
|
||||
});
|
||||
Route::prefix('server')->group(function () {
|
||||
Route::prefix('auth')
|
||||
->name('auth.')
|
||||
->controller(AuthController::class)
|
||||
->group(function () {
|
||||
Route::post('/login', 'login')->name('login');
|
||||
Route::post('/logout', 'logout')->name('logout');
|
||||
});
|
||||
|
||||
Route::prefix('profile')
|
||||
->name('profile.')
|
||||
->controller(ProfileController::class)
|
||||
->group(function () {
|
||||
Route::get('/info', 'info')->middleware('auth:sanctum')->name('info');
|
||||
Route::post('/change_password', 'changePassword')->middleware('auth:sanctum')->name('changePassword');
|
||||
});
|
||||
Route::prefix('profile')
|
||||
->name('profile.')
|
||||
->controller(ProfileController::class)
|
||||
->group(function () {
|
||||
Route::get('/info', 'info')->middleware('auth:sanctum')->name('info');
|
||||
Route::post('/change_password', 'changePassword')->middleware('auth:sanctum')->name('changePassword');
|
||||
});
|
||||
|
||||
Route::prefix('users')
|
||||
->name('users.')
|
||||
->middleware(['auth:sanctum', 'permission:manage_users'])
|
||||
->controller(UserManagementController::class)
|
||||
->group(function () {
|
||||
Route::get('/', 'index')->name('index');
|
||||
Route::get('/{user}', 'show')->middleware([SuperAdminCheck::class])->name('show');
|
||||
Route::post('/', 'store')->name('store');
|
||||
Route::post('/{user}', 'update')->middleware([SuperAdminCheck::class])->name('update');
|
||||
Route::delete('/{user}', 'destroy')->middleware([SuperAdminCheck::class])->name('destroy');
|
||||
});
|
||||
Route::prefix('users')
|
||||
->name('users.')
|
||||
->middleware(['auth:sanctum', 'permission:manage_users'])
|
||||
->controller(UserManagementController::class)
|
||||
->group(function () {
|
||||
Route::get('/', 'index')->name('index');
|
||||
Route::get('/{user}', 'show')->middleware([SuperAdminCheck::class])->name('show');
|
||||
Route::post('/', 'store')->name('store');
|
||||
Route::post('/{user}', 'update')->middleware([SuperAdminCheck::class])->name('update');
|
||||
Route::delete('/{user}', 'destroy')->middleware([SuperAdminCheck::class])->name('destroy');
|
||||
});
|
||||
|
||||
Route::prefix('calls')
|
||||
->name('calls.')
|
||||
->controller(CallController::class)
|
||||
->group(function () {
|
||||
Route::post('/', 'store')->name('store');
|
||||
Route::get('/list', 'list')->name('list')->middleware(['auth', 'permission:manage_calls']);
|
||||
Route::post('/{call}', 'update')->name('update')->middleware(['auth', 'permission:manage_calls']);
|
||||
});
|
||||
Route::prefix('calls')
|
||||
->name('calls.')
|
||||
->controller(CallController::class)
|
||||
->group(function () {
|
||||
Route::post('/', 'store')->name('store');
|
||||
Route::get('/list', 'list')->name('list')->middleware(['auth', 'permission:manage_calls']);
|
||||
Route::post('/{call}', 'update')->name('update')->middleware(['auth', 'permission:manage_calls']);
|
||||
});
|
||||
|
||||
Route::middleware('auth')
|
||||
->controller(CategoryController::class)
|
||||
->group(function () {
|
||||
Route::get('/categories', 'list');
|
||||
});
|
||||
Route::middleware('auth')
|
||||
->controller(CategoryController::class)
|
||||
->group(function () {
|
||||
Route::get('/categories', 'list');
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user