public void AtualizarComboSolucaoEducacional(object sender, EventArgs e)
        {
            var categoria = ucCategoriasConteudo.IdsCategoriasMarcadas.ToList();
            var manterSe  = new ManterSolucaoEducacional();
            var solucoes  = categoria.Any() ? manterSe.ObterTodosSolucaoEducacional().Where(s => s.CategoriaConteudo != null && categoria.Contains(s.CategoriaConteudo.ID)) :
                            manterSe.ObterTodosSolucaoEducacional();

            ViewState["_SE"] = Helpers.Util.ObterListaAutocomplete(solucoes);

            // Limpar SE, oferta e turma selecionadas.
            //txtSolucaoEducacional.Text = "";
        }
        public void AtualizarComboSolucaoEducacional(object sender, EventArgs e)
        {
            if (ViewState["buscouCategorias"] != null && (bool)ViewState["buscouCategorias"])
            {
                var categoria = ucCategorias1.IdsCategoriasMarcadas.ToList();

                var manterSe = new ManterSolucaoEducacional();

                var solucoes = ucNacionalizarRelatorio.IsNacionalizado
                    ? manterSe.ObterTodosPorGestor()
                    : manterSe.ObterTodosSolucaoEducacional();

                if (categoria.Any())
                {
                    solucoes =
                        solucoes.Where(s => s.CategoriaConteudo != null && categoria.Contains(s.CategoriaConteudo.ID));
                }

                ViewState["_SE"] = Helpers.Util.ObterListaAutocomplete(solucoes);


                // Limpar SE, oferta e turma selecionadas.
                txtSolucaoEducacional.Text = "";

                txtOferta.Text       = "";
                ViewState["_Oferta"] = null;

                txtTurma.Text       = "";
                ViewState["_Turma"] = null;

                ViewState["buscouCategorias"] = null;
            }
        }
        protected void btnSincronizarSE_Click(object sender, EventArgs e)
        {
            var manterSe = new ManterSolucaoEducacional();
            var listaSe  =
                manterSe.ObterTodosSolucaoEducacional()
                .Where(
                    r =>
                    r.ListaAreasTematicas.Any() &&
                    r.ListaOferta.Any(
                        p =>
                        p.DataInicioInscricoes.HasValue &&
                        p.DataInicioInscricoes.Value.Year == DateTime.Now.Year))
                .ToList();

            foreach (var item in listaSe)
            {
                try
                {
                    manterSe.AlterarSolucaoEducacional(item, ConfigurationManager.AppSettings["portal_url_node_id"]);
                }
                catch (Exception)
                {
                }
            }
            WebFormHelper.ExibirMensagem(enumTipoMensagem.Sucesso,
                                         "Sincronia Realizada: " + listaSe.Count + " registros");
        }
        private void ObterSolucaoEducacional()
        {
            var manterSolucaoEducacional = new ManterSolucaoEducacional();
            var listaSolucaoEducacional  = manterSolucaoEducacional.ObterTodosSolucaoEducacional().ToList();

            listaSolucaoEducacional.Insert(0, new classes.SolucaoEducacional {
                Nome = "::Selecione::"
            });

            ddlSolucaoEducacional.DataSource     = listaSolucaoEducacional;
            ddlSolucaoEducacional.DataValueField = "ID";
            ddlSolucaoEducacional.DataTextField  = "Nome";
            ddlSolucaoEducacional.DataBind();
        }
        private void EnviarSolucoes(ManterSolucaoEducacional manterSe, BMConfiguracaoSistema bmConfiguracaoSistema,
                                    BMLogSincronia bmLogSincronia, Usuario usuarioLogado, bool somenteNaoSincronizados)
        {
            try
            {
                var solucoes =
                    manterSe.ObterTodosSolucaoEducacional()
                    .Where(
                        x =>
                        x.ListaAreasTematicas.Any() &&
                        x.FormaAquisicao != null &&
                        x.FormaAquisicao.EnviarPortal &&
                        (somenteNaoSincronizados == false || !x.IdNodePortal.HasValue)).ToList();

                foreach (var solucao in solucoes)
                {
                    try
                    {
                        if (somenteNaoSincronizados && solucao.IdNodePortal.HasValue)
                        {
                            continue;
                        }

                        solucao.IdNodePortal = null;

                        manterSe.AtualizarNodeIdDrupal(solucao, bmConfiguracaoSistema, bmLogSincronia, usuarioLogado);
                    }
                    catch (Exception)
                    {
                        // ignored;
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }
        }