public function revokePermissions($id, $permission_id)
 {
     $role = $this->repository->find($id);
     $permission = $this->permissionRepository->find($permission_id);
     $role->revokePermission($permission);
     return redirect()->back();
 }
 public function revokeRoles($id, $role_id)
 {
     //$this->authorize('user_revoke_role');
     $user = $this->repository->find($id);
     $role = $this->roleRepository->find($role_id);
     $user->revokeRole($role);
     return redirect()->back();
 }
 public function create(array $data)
 {
     \DB::beginTransaction();
     try {
         $password = bcrypt($data['password']);
         $user = User::create(['name' => mb_strtoupper($data['name']), 'email' => $data['email'], 'cpf' => $data['cpf'], 'identity' => $data['identity'], 'password' => $password]);
         $data['user_id'] = $user['id'];
         $birthdate = implode("-", array_reverse(explode("-", $data['birthdate'])));
         Client::create(['user_id' => $data['user_id'], 'birthdate' => $birthdate, 'phone' => $data['phone'], 'cel' => $data['cel'], 'gender' => $data['gender'], 'maritalstatus' => $data['maritalstatus'], 'mother' => mb_strtoupper($data['mother']), 'father' => mb_strtoupper($data['father']), 'nationality' => $data['nationality'], 'naturality' => $data['naturality'], 'children' => $data['children'], 'zipcode' => $data['zipcode'], 'address' => $data['address'], 'neighborhood' => $data['neighborhood'], 'complement' => $data['complement'], 'city' => $data['city'], 'state' => $data['state']]);
         $role = $this->roleRepository->find(5);
         $user->addRole($role);
         \DB::commit();
         //$this->authService->passwordSend($data);
     } catch (\Exception $e) {
         \DB::rollback();
         throw $e;
     }
     return $user;
 }