示例#1
0
 public IQueryable <CategoriaConteudo> ObterCategorias()
 {
     using (var categoriaBm = new BMCategoriaConteudo())
     {
         return(categoriaBm.ObterTodos());
     }
 }
示例#2
0
        private void AdicionarCategoriaConteudo(classes.Usuario usuario)
        {
            var categoriasMarcadas   = this.ucCategorias.IdsCategoriasMarcadas;
            var categoriasExistentes = new BMCategoriaConteudo().ObterTodos();

            foreach (var item in categoriasExistentes)
            {
                if (categoriasMarcadas.Contains(item.ID))
                {
                    //categoriaConteudo.Auditoria = new Auditoria(new BMUsuario().ObterUsuarioLogado().CPF);
                    var categoriaConteudo = categoriasExistentes.FirstOrDefault(x => x.ID == item.ID);
                    //categoriaConteudo.Usuario = usuario;
                    usuario.AdicionarCategoriaConteudo(categoriaConteudo);
                }
                else
                {
                    if (usuario.ListaCategoriaConteudo.Any(x => x.ID == item.ID))
                    {
                        usuario.RemoverListaCategoriaConteudo(item.ID);
                    }
                }
            }
        }
        public IList <DTOCategoriaConteudo> ListarCategoriaConteudo()
        {
            IList <DTOCategoriaConteudo> lstResut = null;

            try
            {
                categoriaBM = new BMCategoriaConteudo();

                lstResut = new List <DTOCategoriaConteudo>();

                foreach (CategoriaConteudo cat in categoriaBM.ObterTodos())
                {
                    DTOCategoriaConteudo dto = new DTOCategoriaConteudo();
                    CommonHelper.SincronizarDominioParaDTO(cat, dto);
                    lstResut.Add(dto);
                }
            }
            catch (Exception ex)
            {
                ErroUtil.Instancia.TratarErro(ex);
            }

            return(lstResut);
        }
示例#4
0
        public void AtualizaNodeDrupal(CategoriaConteudo registro, string url)
        {
            try
            {
                if (!(registro.IdNode > 0))
                {
                    return;
                }

                string sbTodasTaxonomias = this.PrepararEntradaDeDadosParaOServicoDrupal(registro);

                int idNodePai = 0;

                if (registro.CategoriaConteudoPai != null && registro.CategoriaConteudoPai.ID > 0 && !registro.CategoriaConteudoPai.IdNode.HasValue)
                {
                    throw new AlertException("Dados salvaos no banco de dados. Não foi possível enviar os dados para o Portal. Favor publicar a categoria pai primeiro");
                }

                if (registro.CategoriaConteudoPai != null && registro.CategoriaConteudoPai.IdNode.HasValue)
                {
                    idNodePai = registro.CategoriaConteudoPai.IdNode.Value;
                }

                bool ativo = true;

                string linkParaImagem = string.Empty;

                //if (registro.Imagem != null && registro..ID > 0)
                //{
                //    ConfiguracaoSistema caminhoParaDiretorioDeUpload = ConfiguracaoSistemaUtil.ObterInformacoes(enumConfiguracaoSistema.EnderecoSGUS);
                //    linkParaImagem = CommonHelper.ObterLinkParaArquivoDeImagem(caminhoParaDiretorioDeUpload.Registro, registro.Imagem.ID);
                //}
                var postParameters = new Dictionary <string, string> {
                    { "login", ConfiguracaoSistemaUtil.ObterInformacoes(enumConfiguracaoSistema.UsuarioSOAPPortal).Registro },
                    { "senha", ConfiguracaoSistemaUtil.ObterInformacoes(enumConfiguracaoSistema.SenhaSOAPPortal).Registro },
                    { "id_solucao_educacional", string.Empty },
                    { "titulo", registro.Nome },
                    { "corpo", registro.Apresentacao },
                    { "lista_taxs", sbTodasTaxonomias },
                    { "status", ativo.ToString() },
                    { "node_id", registro.IdNode.ToString() },
                    { "parent_id", idNodePai.ToString() },
                    { "imagem", linkParaImagem }
                };
                var result = JsonUtil.GetJson <DTOJsonResultNodeId>(url, "POST", postParameters);

                /*cursos_soap_updateRequest c = new cursos_soap_updateRequest(
                 *      ConfiguracaoSistemaUtil.ObterInformacoes(enumConfiguracaoSistema.UsuarioSOAPPortal).Registro ,
                 *      ConfiguracaoSistemaUtil.ObterInformacoes(enumConfiguracaoSistema.SenhaSOAPPortal).Registro,
                 *      string.Empty,
                 *      registro.Nome,
                 *      registro.Apresentacao,
                 *      sbTodasTaxonomias,
                 *      ativo.ToString(),
                 *      registro.IdNode.ToString(),
                 *      idNodePai.ToString(),
                 *      linkParaImagem,
                 *      registro.CargaHoraria);
                 *
                 * soap_server_port_type s = new soap_server_port_typeClient();
                 * cursos_soap_updateResponse cursosSoapCreateResponse = s.cursos_soap_update(c);*/

                int nodeRetorno = int.Parse(result.status);

                if (nodeRetorno != registro.IdNode)
                {
                    CategoriaConteudo categoriaConteudo = new BMCategoriaConteudo().ObterPorID(registro.ID);
                    categoriaConteudo.IdNode = int.Parse(result.status);
                    new BMCategoriaConteudo().Alterar(categoriaConteudo);
                }
            }
            catch (AlertException ex)
            {
                throw ex;
            }
            catch (Exception)
            {
                throw new AlertException("Dados salvos no banco de dados. Erro ao sincronizar com o Portal");
            }
        }
示例#5
0
 public ManterCategoriaConteudo()
     : base()
 {
     bmCategoriaConteudo = new BMCategoriaConteudo();
 }
        public DTOCursosPorCategoria ConsultarCursosPorCategoria(int idNoCategoriaConteudo, string cpf, string nome,
                                                                 bool somenteComInscricoesAbertas)
        {
            var retorno = new DTOCursosPorCategoria
            {
                Categoria   = new DTOCategoriaConteudo(),
                ListaCursos = new List <DTOSolucaoEducacional>()
            };

            var categoria = new BMCategoriaConteudo().ObterPorIdNode(idNoCategoriaConteudo);

            retorno.Categoria.ID   = categoria.ID;
            retorno.Categoria.Nome = categoria.Nome;

            var usuario = new BMUsuario().ObterPorCPF(cpf);

            var permissoesSe =
                new BMSolucaoEducacional().ObterListaDePermissoes(usuario.ID, 0)
                .Select(x => x.SolucaoEducacional.ID)
                .ToList();
            var permissoesOf = new BMOferta().ObterListaDePermissoes(usuario.ID).Select(x => x.IdOferta).ToList();

            var solucoesEducacionais = new BMSolucaoEducacional().ObterTodos().AsEnumerable()
                                       .Where(x => x.Nome.ToLower().Contains(nome.ToLower()) &&
                                              x.CategoriaConteudo != null &&
                                              x.Ativo &&
                                              x.CategoriaConteudo.IdNode == idNoCategoriaConteudo &&
                                              //(x.IdNode.HasValue || !string.IsNullOrEmpty(x.Link)) &&
                                              permissoesSe.Contains(x.ID) &&
                                              x.ListaOferta != null &&
                                              x.ListaOferta.Any(o => permissoesOf.Contains(o.ID)) &&
                                              x.ListaOferta.Any(o => o.TipoOferta != enumTipoOferta.Exclusiva)
                                              ).ToList();

            foreach (var item in solucoesEducacionais)
            {
                var obj = new DTOSolucaoEducacional
                {
                    ID                = item.ID,
                    IDChaveExterna    = item.IDChaveExterna,
                    IdNode            = item.IdNode,
                    Nome              = item.Nome,
                    InscricoesAbertas = false
                };

                if (
                    item.ListaOferta.Any(
                        x =>
                        x.DataInicioInscricoes.HasValue && x.DataFimInscricoes.HasValue &&
                        x.DataInicioInscricoes.Value <= DateTime.Today &&
                        x.DataFimInscricoes.Value >= DateTime.Today))
                {
                    foreach (var oferta in item.ListaOferta)
                    {
                        if (string.IsNullOrEmpty(obj.Link))
                        {
                            obj.Link = (item.Fornecedor.ID == (int)enumFornecedor.FGVOCW ||
                                        item.Fornecedor.ID == (int)enumFornecedor.FGVSiga) &&
                                       !string.IsNullOrEmpty(oferta.Link)
                                ? oferta.Link
                                : "";
                        }

                        obj.InscricoesAbertas = oferta.ListaTurma.Any(x => x.DataInicio <= DateTime.Today &&
                                                                      x.DataFinal.HasValue &&
                                                                      x.DataFinal.Value >= DateTime.Today);
                    }
                }
                else
                {
                    obj.InscricoesAbertas = false;
                }

                bool adicionar = true;

                if (somenteComInscricoesAbertas)
                {
                    adicionar = obj.InscricoesAbertas;
                }

                if (adicionar)
                {
                    retorno.ListaCursos.Add(obj);
                }
            }

            return(retorno);
        }