json($data); } /** * @throws Throwable */ public function store(StoreRequest $request): JsonResponse { auth()->user()->addActivityComplete(1043); $role = DB::transaction(function () use ($request) { $role = Role::create([ 'name' => $request->name, 'name_fa' => $request->name_fa, 'description' => $request->description, 'guard_name' => 'web', ]); $role->givePermissionTo($request->permissions); }); return $this->successResponse($role); } /** * @throws Throwable */ public function update(UpdateRequest $request, Role $role): JsonResponse { auth()->user()->addActivityComplete(1044); DB::transaction(function () use ($request, $role) { $role->update([ 'name' => $request->name, 'name_fa' => $request->name_fa, 'description' => $request->description, 'guard_name' => 'web', ]); $role->syncPermissions($request->permissions); }); return $this->successResponse(); } public function show(Role $role): JsonResponse { return $this->successResponse($role); } public function destroy(Role $role): JsonResponse { auth()->user()->addActivityComplete(1045); $role->delete(); return $this->successResponse(); } }