protected void btnRemoverFiltroTodos_Click(object sender, EventArgs e) { var btnRemover = (HtmlButton)sender; string filtro = btnRemover.Attributes["data-filtro"]; var manter = new BMEmailEnvio(); if (idEmailGerado != null) { var email = manter.ObterPorID(idEmailGerado.Value); // Busca por id novamente para ter o objeto novamente na sessão do nhibernate var query = new ManterEmailEnvioPermissao().ObterTodosIQueryable().Where(x => x.EmailEnvio.ID == email.ID); if (filtro == "nivel-ocupacional") { query = query.Where(x => x.NivelOcupacional != null); } if (filtro == "perfil") { query = query.Where(x => x.Perfil != null); } if (filtro == "uf") { query = query.Where(x => x.Uf != null); } if (filtro == "usuario") { query = query.Where(x => x.Usuario != null); } if (filtro == "turma") { query = query.Where(x => x.Turma != null || x.Status != null); } var listaPermissoes = query.ToList(); foreach (EmailEnvioPermissao permissao in listaPermissoes) { email.ListaPermissao.Remove(permissao); } manter.Salvar(email); rptFiltrosPerfil.DataSource = FiltrarPermissoesPerfil(email.ListaPermissao); rptFiltrosPerfil.DataBind(); rptFiltrosNivelOcupacional.DataSource = FiltrarPermissoesNivelOcupacional(email.ListaPermissao); rptFiltrosNivelOcupacional.DataBind(); rptFiltrosUf.DataSource = FiltrarPermissoesUf(email.ListaPermissao); rptFiltrosUf.DataBind(); rptFiltrosUsuario.DataSource = FiltrarPermissoesUsuario(email.ListaPermissao); rptFiltrosUsuario.DataBind(); rptFiltrosTurma.DataSource = FiltrarPermissoesTurma(email.ListaPermissao); rptFiltrosTurma.DataBind(); rptFiltrosStatus.DataSource = FiltrarPermissoesStatus(email.ListaPermissao); rptFiltrosStatus.DataBind(); esconderFiltros(email); if (email.ListaPermissao.Count <= 0) { OcultarModal(); WebFormHelper.ExibirMensagem(enumTipoMensagem.Alerta, "Você deve selecionar pelo menos um filtro"); return; } ucPermissoes1.LimparCampos(); PreencherCampos(email); totalGerado = _manterEmailEnvio.ObterUsuariosParaEnvio(email).Count(); AlterarMensagemModal(totalGerado); } }
protected void btnRemoverFiltro_Click(object sender, EventArgs e) { var btnRemover = (HtmlButton)sender; int id; if (int.TryParse(btnRemover.Attributes["data-id"], out id) && idEmailGerado != null) { classes.EmailEnvio email; using (var manter = new ManterEmailEnvio()) { email = manter.ObterEmailEnvioPorID(idEmailGerado.Value); email = manter.RemoverEmailsGerados(email); // Busca por id novamente para ter o objeto novamente na sessão do nhibernate email = manter.ObterEmailEnvioPorID(email.ID); var permissao = new ManterEmailEnvioPermissao().ObterPorID(id); email.ListaPermissao.Remove(permissao); manter.AlterarEmailEnvio(email, true); GerarEmails(email); } rptFiltrosPerfil.DataSource = FiltrarPermissoesPerfil(email.ListaPermissao); rptFiltrosPerfil.DataBind(); rptFiltrosNivelOcupacional.DataSource = FiltrarPermissoesNivelOcupacional(email.ListaPermissao); rptFiltrosNivelOcupacional.DataBind(); rptFiltrosUf.DataSource = FiltrarPermissoesUf(email.ListaPermissao); rptFiltrosUf.DataBind(); rptFiltrosUsuario.DataSource = FiltrarPermissoesUsuario(email.ListaPermissao); rptFiltrosUsuario.DataBind(); rptFiltrosTurma.DataSource = FiltrarPermissoesTurma(email.ListaPermissao); rptFiltrosTurma.DataBind(); rptFiltrosStatus.DataSource = FiltrarPermissoesStatus(email.ListaPermissao); rptFiltrosStatus.DataBind(); esconderFiltros(email); if (email.ListaPermissao.Count <= 0) { OcultarModal(); WebFormHelper.ExibirMensagem(enumTipoMensagem.Alerta, "Você deve selecionar pelo menos um filtro"); return; } ucPermissoes1.LimparCampos(); PreencherCampos(email); totalGerado = new ManterEmail().ObterPorEmailEnvio(email).Select(x => new { x.ID }).Count(); AlterarMensagemModal(totalGerado); } }