Esempio n. 1
0
        void ListaResultado(ref List <Dominio.Classes.CategoriaConteudo> listagem, Dominio.Classes.CategoriaConteudo pai, IQueryable <Dominio.Classes.CategoriaConteudo> listaGeral)
        {
            listagem.Add(pai);

            foreach (var filho in listaGeral.Where(x => x.CategoriaConteudoPai != null && x.CategoriaConteudoPai.ID == pai.ID))
            {
                if (filho.Nome.ToLower().Contains(txtNome.Text.ToLower()) || VerificarNomeEmCategoriasFilhas(filho.ListaCategoriaConteudoFilhos))
                {
                    filho.Nome = "&nbsp;&nbsp;&nbsp;|_ " + filho.Nome;

                    listagem.Add(filho);

                    foreach (var neto in listaGeral.Where(x => x.CategoriaConteudoPai != null && x.CategoriaConteudoPai.ID == filho.ID))
                    {
                        if (neto.Nome.ToLower().Contains(txtNome.Text.ToLower()) || VerificarNomeEmCategoriasFilhas(neto.ListaCategoriaConteudoFilhos))
                        {
                            neto.Nome = "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|_ " + neto.Nome;

                            listagem.Add(neto);

                            foreach (var bisneto in listaGeral.Where(x => x.CategoriaConteudoPai != null && x.CategoriaConteudoPai.ID == neto.ID))
                            {
                                if (bisneto.Nome.ToLower().Contains(txtNome.Text.ToLower()) || VerificarNomeEmCategoriasFilhas(bisneto.ListaCategoriaConteudoFilhos))
                                {
                                    bisneto.Nome = "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|_ " + bisneto.Nome;

                                    listagem.Add(bisneto);
                                }
                            }
                        }
                    }
                }
            }
        }
Esempio n. 2
0
        private void AdicionarOuRemoverUf(Dominio.Classes.CategoriaConteudo categoria)
        {
            try
            {
                var rptUFs = (Repeater)ucPermissoes1.FindControl("rptUFs");
                for (var i = 0; i < rptUFs.Items.Count; i++)
                {
                    var ckUf  = (CheckBox)rptUFs.Items[i].FindControl("ckUF");
                    var lblUf = (Literal)rptUFs.Items[i].FindControl("lblUF");

                    var idUf          = int.Parse(ckUf.Attributes["ID_UF"]);
                    var ufSelecionado = new Uf
                    {
                        ID   = idUf,
                        Nome = lblUf.Text,
                    };

                    if (ckUf.Checked)
                    {
                        categoria.AdicionarUfs(ufSelecionado);
                    }
                    else
                    {
                        categoria.RemoverUfs(ufSelecionado);
                    }
                }
            }
            catch
            {
                throw new AcademicoException("Você deve informar a quantidade de vagas do estado");
            }
        }
Esempio n. 3
0
        private void AdicionarOuRemoverPerfil(Dominio.Classes.CategoriaConteudo categoria)
        {
            var todosPerfis = this.ucPermissoes1.ObterTodosPerfis;

            if (todosPerfis != null && todosPerfis.Count > 0)
            {
                for (int i = 0; i < todosPerfis.Count; i++)
                {
                    var perfilSelecionado = new Perfil
                    {
                        ID   = int.Parse(todosPerfis[i].Value),
                        Nome = todosPerfis[i].Text
                    };

                    if (todosPerfis[i].Selected)
                    {
                        categoria.AdicionarPerfil(perfilSelecionado);
                    }
                    else
                    {
                        categoria.RemoverPerfil(perfilSelecionado);
                    }
                }
            }
        }
Esempio n. 4
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Page.IsPostBack)
            {
                return;
            }

            var usuarioLogado = new ManterUsuario().ObterUsuarioLogado();

            var isAdmin = usuarioLogado.IsAdministrador();

            AtualizarStatus();

            PreencherCombos();

            if (Request["Id"] != null)
            {
                var idCategoriaConteudo = int.Parse(Request["Id"]);

                _categoriaConteudoAtual = _manterCategoriaConteudo.ObterCategoriaConteudoPorID(idCategoriaConteudo);

                RemoverOFilhoDaListaDePais();

                PreencherCampos(_categoriaConteudoAtual);
            }
            else
            {
                ckbPossuiGerenciamentoAreas.Checked         =
                    divPossuiGerenciamentoStatus.Visible    =
                        divPossuiGerenciamentoAreas.Visible = isAdmin || usuarioLogado.IsGestor();
            }
        }
Esempio n. 5
0
        private void AdicionarOuRemoverNivelOcupacional(Dominio.Classes.CategoriaConteudo categoria)
        {
            var todosNiveisOcupacionais = ucPermissoes1.ObterTodosNiveisOcupacionais;

            if (todosNiveisOcupacionais != null && todosNiveisOcupacionais.Count > 0)
            {
                for (var i = 0; i < todosNiveisOcupacionais.Count; i++)
                {
                    var nivelOcupacionalSelecionado = new NivelOcupacional
                    {
                        ID   = int.Parse(todosNiveisOcupacionais[i].Value),
                        Nome = todosNiveisOcupacionais[i].Text
                    };

                    if (todosNiveisOcupacionais[i].Selected)
                    {
                        categoria.AdicionarNivelOcupacional(nivelOcupacionalSelecionado);
                    }
                    else
                    {
                        categoria.RemoverNivelOcupacional(nivelOcupacionalSelecionado);
                    }
                }
            }
        }
Esempio n. 6
0
 private void PreencherListas(Dominio.Classes.CategoriaConteudo categoria)
 {
     PreencherListaUfs(categoria);
     PreencherListaNivelOcupacional(categoria);
     PreencherListaPerfil(categoria);
     PreencherListaTag(categoria);
     ucUF1.PreencherUfsCategoria(categoria);
 }
Esempio n. 7
0
        private void PreencherListaTag(Dominio.Classes.CategoriaConteudo categoria)
        {
            IList <Dominio.Classes.Tag> listaTags = categoria.ListaTags.Where(x => x.Tag != null)
                                                    .Select(x => new Dominio.Classes.Tag {
                ID = x.Tag.ID, Nome = x.Tag.Nome
            }).ToList <Dominio.Classes.Tag>();

            this.ucTags1.PreencherListViewComTagsGravadosNoBanco(listaTags);
        }
Esempio n. 8
0
        private void PreencherListaUfs(Dominio.Classes.CategoriaConteudo categoria)
        {
            var listaUFs = categoria.ListaPermissao.Where(x => x.Uf != null)
                           .Select(x => new Uf {
                ID = x.Uf.ID, Nome = x.Uf.Nome
            }).ToList();

            ucPermissoes1.PreencherListBoxComUfsGravadasNoBanco(listaUFs);
        }
Esempio n. 9
0
        private void PreencherListaNivelOcupacional(Dominio.Classes.CategoriaConteudo categoria)
        {
            var listaNivelOcupacional =
                categoria.ListaPermissao.Where(x => x.NivelOcupacional != null)
                .Select(x => new NivelOcupacional {
                ID = x.NivelOcupacional.ID, Nome = x.NivelOcupacional.Nome
            })
                .ToList();

            ucPermissoes1.PreencherListBoxComNiveisOcupacionaisGravadosNoBanco(listaNivelOcupacional);
        }
Esempio n. 10
0
        private void PreencherListaPerfil(Dominio.Classes.CategoriaConteudo categoria)
        {
            var listaPerfil = categoria.ListaPermissao.Where(x => x.Perfil != null)
                              .Select(x => new Perfil {
                ID = x.Perfil.ID, Nome = x.Perfil.Nome
            }).ToList();

            var temPerfilPublico = false;

            if (listaPerfil.Count == 0)
            {
                temPerfilPublico = categoria.ListaPermissao.Any(x => x.Perfil == null &&
                                                                x.NivelOcupacional == null && x.Uf == null);
            }

            this.ucPermissoes1.PreencherListBoxComPerfisGravadosNoBanco(listaPerfil, temPerfilPublico);
        }
Esempio n. 11
0
        private void IncluirUFs(ref Dominio.Classes.CategoriaConteudo categoria)
        {
            var manter = new ManterUf();
            var lsIds  = ucUF1.IdsUfsMarcados;
            var lsRmv  =
                categoria.ListaCategoriaConteudoUF.Where(p => !lsIds.Contains(p.UF.ID)).Select(p => p.UF.ID).ToList();

            foreach (var id in lsIds)
            {
                if (categoria.ListaCategoriaConteudoUF.Any(p => p.UF.ID == id))
                {
                    continue;
                }
                categoria.ListaCategoriaConteudoUF.Add(new CategoriaConteudoUF
                {
                    Categoria = categoria,
                    UF        = manter.ObterUfPorID(id)
                });
            }
            foreach (var id in lsRmv)
            {
                categoria.ListaCategoriaConteudoUF.Remove(categoria.ListaCategoriaConteudoUF.First(p => p.UF.ID == id));
            }
        }
Esempio n. 12
0
        private void PreencherCampos(Dominio.Classes.CategoriaConteudo categoriaConteudo)
        {
            if (categoriaConteudo == null)
            {
                return;
            }

            txtNome.Text = categoriaConteudo.Nome;

            txtDescricao.Text = categoriaConteudo.Descricao;

            if (categoriaConteudo.CategoriaConteudoPai != null)
            {
                WebFormHelper.SetarValorNaCombo(categoriaConteudo.CategoriaConteudoPai.ID.ToString(),
                                                ddlCategoriaConteudoPai);
            }

            txtIdNode.Text = categoriaConteudo.IdNode != null?categoriaConteudo.IdNode.ToString() : string.Empty;

            txtTextoApresentacao.Text = !string.IsNullOrEmpty(categoriaConteudo.Apresentacao)
                ? categoriaConteudo.Apresentacao
                : string.Empty;

            txtSigla.Text = categoriaConteudo.ObterSigla();

            // Desabilita edição de sigla para categorias filhas
            txtSigla.Enabled = categoriaConteudo.CategoriaConteudoPai == null;


            if (categoriaConteudo.PossuiFiltroCategorias)
            {
                AtualizarStatus();
            }

            var usuarioLogado = new ManterUsuario().ObterUsuarioLogado();

            if (usuarioLogado.IsAdministrador() || usuarioLogado.IsGestor())
            {
                divPossuiGerenciamentoStatus.Visible = true;

                ckbPossuiGerenciamentoStatus.Checked = categoriaConteudo.PossuiStatus.HasValue &&
                                                       categoriaConteudo.PossuiStatus.Value;

                if (!categoriaConteudo.PossuiStatus.HasValue &&
                    categoriaConteudo.PossuiGerenciamentoStatus())
                {
                    ckbPossuiGerenciamentoStatus.InputAttributes.Add("disabled", "disabled");
                    ckbPossuiGerenciamentoStatus.Checked = true;
                }
                else
                {
                    ckbPossuiGerenciamentoStatus.InputAttributes.Remove("disabled");
                    ckbPossuiGerenciamentoStatus.Checked = categoriaConteudo.PossuiStatus == true;
                }

                ckbPossuiGerenciamentoAreas.Checked = categoriaConteudo.PossuiAreas.HasValue &&
                                                      categoriaConteudo.PossuiAreas.Value;

                if (!categoriaConteudo.PossuiAreas.HasValue &&
                    categoriaConteudo.PossuiGerenciamentoAreas())
                {
                    ckbPossuiGerenciamentoAreas.InputAttributes.Add("disabled", "disabled");
                    ckbPossuiGerenciamentoAreas.Checked = true;
                }
                else
                {
                    ckbPossuiGerenciamentoAreas.InputAttributes.Remove("disabled");
                    ckbPossuiGerenciamentoAreas.Checked = categoriaConteudo.PossuiAreas == true;
                }
            }

            chkLiberarValidacao.Checked = categoriaConteudo.LiberarInscricao;

            PreencherListas(categoriaConteudo);

            PreencherTermosAceite(categoriaConteudo.ID);
        }
Esempio n. 13
0
 private void AdicionarPermissao(Dominio.Classes.CategoriaConteudo categoria)
 {
     AdicionarOuRemoverPerfil(categoria);
     AdicionarOuRemoverUf(categoria);
     AdicionarOuRemoverNivelOcupacional(categoria);
 }
Esempio n. 14
0
 private void AdicionarOuRemoverTags(Dominio.Classes.CategoriaConteudo categoria)
 {
     ucTags1.ObterInformacoesSobreAsTags();
     ucTags1.TagsSelecionadas.ForEach(x => categoria.AdicionarTag(x));
     ucTags1.TagsNaoSelecionadas.ForEach(x => categoria.RemoverTag(x));
 }
Esempio n. 15
0
        private Dominio.Classes.CategoriaConteudo ObterObjetoCategoriaConteudo()
        {
            _categoriaConteudoAtual = null;

            if (Request["Id"] != null)
            {
                _categoriaConteudoAtual =
                    new ManterCategoriaConteudo().ObterCategoriaConteudoPorID(int.Parse(Request["Id"]));
            }
            else
            {
                _categoriaConteudoAtual = new Dominio.Classes.CategoriaConteudo();
            }

            //Nome
            _categoriaConteudoAtual.Nome = txtNome.Text;

            _categoriaConteudoAtual.Apresentacao = txtTextoApresentacao.Text;

            _categoriaConteudoAtual.Descricao = txtDescricao.Text;

            //Tag Pai
            if (!string.IsNullOrWhiteSpace(ddlCategoriaConteudoPai.SelectedItem.Value))
            {
                _categoriaConteudoAtual.CategoriaConteudoPai =
                    new BMCategoriaConteudo().ObterPorID(int.Parse(ddlCategoriaConteudoPai.SelectedItem.Value));
            }
            else
            {
                _categoriaConteudoAtual.CategoriaConteudoPai = null;
            }

            // Status relacionados.
            if (_categoriaConteudoAtual.PossuiFiltroCategorias)
            {
                var statusSelecionados = new List <StatusMatricula>();

                foreach (ListItem checkBoxStatus in cbStatusSelecionados.Items)
                {
                    if (checkBoxStatus.Selected)
                    {
                        statusSelecionados.Add(
                            new ManterStatusMatricula().ObterStatusMatriculaPorID(int.Parse(checkBoxStatus.Value)));
                    }
                }

                _categoriaConteudoAtual.ListaStatusMatricula = statusSelecionados;
            }
            else
            {
                // Limpa os Status caso a opção não esteja marcado.
                _categoriaConteudoAtual.ListaStatusMatricula = new List <StatusMatricula>();
            }

            _categoriaConteudoAtual.AdicionarSigla(txtSigla.Text);
            _categoriaConteudoAtual.LiberarInscricao = chkLiberarValidacao.Checked;

            // Possui Status.
            var usuarioLogado = new ManterUsuario().ObterUsuarioLogado();

            if (usuarioLogado.IsGestor() || usuarioLogado.IsAdministrador())
            {
                _categoriaConteudoAtual.PossuiStatus =
                    _categoriaConteudoAtual.CategoriaConteudoPai == null
                        ? (bool?)ckbPossuiGerenciamentoStatus.Checked
                        : null;

                _categoriaConteudoAtual.PossuiAreas =
                    _categoriaConteudoAtual.CategoriaConteudoPai == null
                        ? (bool?)ckbPossuiGerenciamentoAreas.Checked
                        : null;
            }

            IncluirUFs(ref _categoriaConteudoAtual);
            AdicionarPermissao(_categoriaConteudoAtual);
            AdicionarOuRemoverTags(_categoriaConteudoAtual);
            return(_categoriaConteudoAtual);
        }
Esempio n. 16
0
        protected void btnSalvar_Click(object sender, EventArgs e)
        {
            try
            {
                _categoriaConteudoAtual = ObterObjetoCategoriaConteudo();

                if (Request["Id"] == null)
                {
                    _manterCategoriaConteudo = new ManterCategoriaConteudo();
                    _manterCategoriaConteudo.IncluirCategoriaConteudo(_categoriaConteudoAtual);
                }
                else
                {
                    _categoriaConteudoAtual.TermoAceiteCategoriaCounteudo = null;
                    _manterCategoriaConteudo.AlterarCategoriaConteudo(_categoriaConteudoAtual);
                }

                if (_categoriaConteudoAtual.CategoriaConteudoPai == null)
                {
                    var filhas =
                        _manterCategoriaConteudo.ObterTodasCategoriasFilhas(_categoriaConteudoAtual.ID)
                        .Where(x => x.ID != _categoriaConteudoAtual.ID);

                    foreach (var filha in filhas)
                    {
                        filha.Sigla = _categoriaConteudoAtual.Sigla;
                        _manterCategoriaConteudo.AlterarCategoriaConteudo(filha);
                    }
                }

                var bmAceite = new BMTermoAceite();

                var termoSelecionado = bmAceite.ObterPorCategoriaConteudo(_categoriaConteudoAtual.ID);

                if (termoSelecionado != null)
                {
                    bmAceite.ExcluirTermoAceiteCategoriaConteudo(termoSelecionado.ID);
                }

                if (ddlTermoAceite.SelectedItem != null &&
                    !string.IsNullOrWhiteSpace(ddlTermoAceite.SelectedItem.Value))
                {
                    var termoCategoria = new TermoAceiteCategoriaConteudo
                    {
                        CategoriaConteudo = _categoriaConteudoAtual,
                        TermoAceite       = bmAceite.ObterPorID(int.Parse(ddlTermoAceite.SelectedItem.Value))
                    };

                    bmAceite.SalvarTermoAceiteCategoriaConteudo(termoCategoria);
                }

                WebFormHelper.ExibirMensagem(enumTipoMensagem.Sucesso, "Dados gravados com sucesso",
                                             "ListarCategoriaConteudo.aspx");
            }
            catch (AlertException ex)
            {
                WebFormHelper.ExibirMensagem(enumTipoMensagem.Alerta, ex.Message);
            }
            catch (AcademicoException ex)
            {
                WebFormHelper.ExibirMensagem(enumTipoMensagem.Erro, ex.Message);
            }
            catch (Exception)
            {
                WebFormHelper.ExibirMensagem(enumTipoMensagem.Erro, "Erro ao processar a solicitação");
            }
        }