Bloco padrão executado antes de deletar um registro nas entidades User e Role. O bloco apenas verifica se o registro informado pode ser excluído ou não.

Se o registro corresponde a um usuário comum, o bloco permite que ele seja excluído e retorna um objeto. No entanto, se o registro for de um usuário administrador e este for o único administrador do sistema, a exclusão não será permitida.


Figura 1 - Bloco Antes de Deletar


As aplicações padrão do Cronapp utilizam este bloco na função BeforeDelete do arquivo blockly servidor UserManager (Localização: Bloco de Programação/Servidor/UserManager  )

Compatibilidade

  • Bloco servidor: cronapi.authentication.Operations.beforeDelete()

Retorno

Retorna um objeto JSON contendo os dados do registro informado ou uma exceção quando o registro for do único usuário administrador.

Parâmetros

Entidade

Entidade que terá um registro excluído.

  • Posição: 1
  • Inglês: Entity
  • Tipo: Objeto (User e Role) / Object (User e Role)
  • Exemplo: Retorno do bloco Criar novo objeto

Exemplo

Na função abaixo, o id de um usuário da tabela User é atribuído a variável "id". Posteriormente, o bloco Antes de Deletar recebe como parâmetro o bloco na lista, que obtém o primeiro registro do usuário a partir de uma consulta no banco de dados por meio do bloco Abrir consulta

Se o id informado for de um usuário administrador, o bloco Antes de Deletar verifica se existe mais de um usuário dessa categoria. Se não houver, será exibida uma notificação informando que o usuário não pode ser removido (Figura 2.1). Caso contrário, se houver mais de um usuário administrador ou o id informado for de um usuário comum, o registro poderá ser excluído. E as informações do usuário serão impressas no console do depurador por meio do bloco imprime


Figura 2 - Exemplo de uso do bloco Antes de Deletar


Figura 2.1 - Exibição da mensagem de notificação 


No campo de informação abaixo, apresentamos o objeto gerado com as informações do usuário quando é permitido excluí-lo.


{
  "id": "5B79F5AA-0E1A-4A7D-B663-28FDBBA96041",
  "accessFailedCount": 0,
  "email": "joaopedro@gmail.com",
  "emailConfirmed": true,
  "lockoutEnabled": false,
  "name": "João Pedro",
  "normalizedEmail": "",
  "normalizedUserName": "",
  "password": "$2a$10$tejZxHzdwF.tHF/Sz9bM9.cSHKE.Zz.OuiIHzumYQreF4/hCWnJlG",
  "phoneNumberConfirmed": true,
  "securityStamp": "B928C2E1-F604-40EF-AF71-5DEDDD108BD9",
  "twoFactorEnabled": false,
  "userName": "joaopedro"
}

Nesta página