protected void _btnEnviar_Click(object sender, EventArgs e) { if (ValidarEsqueciSenha() && Page.IsValid) { try { DataTable dt = chkPossuiEmail.Checked ? SYS_UsuarioBO.GetSelectBy_ent_id_usu_email(new Guid(UCComboEntidade2._Combo.SelectedValue), _txtEmail.Text) : SYS_UsuarioBO.SelecionaPorCPFDataNascimento(new Guid(UCComboEntidade2._Combo.SelectedValue), txtCPF.Text, Convert.ToDateTime(txtDtNasc.Text)); if (dt.Rows.Count == 0) { string log = chkPossuiEmail.Checked ? "Erro no envio de senha. Usuário não encontrado." : "Erro na alteração de senha. Usuário não encontrado."; ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Login, log); string mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.LoginMensagemUsuarioNaoEncontrado); _lblMessage.Text = UtilBO.GetErroMessage(string.IsNullOrEmpty(mensagem) ? "Usuário não encontrado." : mensagem, UtilBO.TipoMensagem.Alerta); } else { byte usu_integracaoAD = Convert.ToByte(dt.Rows[0]["usu_integracaoAD"]); byte usu_situacao = Convert.ToByte(dt.Rows[0]["usu_situacao"]); Guid usu_id = new Guid(dt.Rows[0]["usu_id"].ToString()); string pes_nome = dt.Rows[0]["pes_nome"].ToString(); switch (usu_integracaoAD) { case (byte)SYS_UsuarioBO.eIntegracaoAD.NaoIntegrado: if (chkPossuiEmail.Checked) { EnviaNovaSenhaEmail(usu_id, usu_situacao, pes_nome, usu_integracaoAD); } else { ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Login, "Não é possível alterar a senha de usuários não ligados no Active Directory por data de nascimento e CPF."); _lblMessage.Text = UtilBO.GetErroMessage("Não é possível alterar a senha de usuários não ligados no Active Directory por data de nascimento e CPF.", UtilBO.TipoMensagem.Alerta); } break; case (byte)SYS_UsuarioBO.eIntegracaoAD.IntegradoAD: ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Login, "Não é possível recuperar/alterar a senha pois o usuário solicitado está ligado no Active Directory."); _lblMessage.Text = UtilBO.GetErroMessage("Não é possível recuperar/alterar a senha pois o usuário solicitado está ligado no Active Directory, contate o administrador de rede do seu domínio.", UtilBO.TipoMensagem.Alerta); break; case (byte)SYS_UsuarioBO.eIntegracaoAD.IntegradoADReplicacaoSenha: if (chkPossuiEmail.Checked) { EnviaNovaSenhaEmail(usu_id, usu_situacao, pes_nome, usu_integracaoAD); } else { AlterarSenhaEsqueci(usu_id, usu_situacao, usu_integracaoAD); } break; } ; } ScriptManager.RegisterClientScriptBlock(this, GetType(), "EsqueciSenha", "$('#divEsqueciSenha').dialog('close');", true); } catch (Exception ex) { ApplicationWEB._GravaErro(ex); _lblMessageEsqueciSenha.Text = chkPossuiEmail.Checked ? UtilBO.GetErroMessage("Erro ao tentar enviar e-mail com a senha para o usuário.", UtilBO.TipoMensagem.Erro) : UtilBO.GetErroMessage("Erro ao tentar alterar a senha para o usuário.", UtilBO.TipoMensagem.Erro); } } else { _updEsqueciSenha.Update(); } }