Exemple #1
0
        public int?SalvaNodeDrupalRest(Trilha trilha, BMConfiguracaoSistema bmConfiguracaoSistema, BMLogSincronia bmLogSincronia, Usuario usuarioLogado, bool statusNivelTrilha = false)
        {
            var postParameters = DrupalUtil.InitPostParameters(trilha.ID, trilha.Nome, trilha.Descricao, "solucao", statusNivelTrilha);

            postParameters.Add("data[field_tipo_de_solucao]", "4");

            DrupalUtil.PermissoesAreaTematica(
                trilha.ListaAreasTematicas.Where(p => p.AreaTematica != null).Select(x => x.AreaTematica.ID).ToList(),
                ref postParameters);

            var permissoesUfs                = trilha.ObterUfsDasPermissoes();
            var permissoesPerfis             = trilha.ObterPerfisDasPermissoes();
            var permissoesNiveisOcupacionais = trilha.ObterNiveisOcupacionaisDasPermissoes();

            DrupalUtil.PermissoesUf(permissoesUfs.Select(x => x.ID).ToList(), ref postParameters);
            DrupalUtil.PermissoesPerfil(permissoesPerfis.Select(x => x.ID).ToList(),
                                        ref postParameters);
            DrupalUtil.PermissoesNivelOcupacional(permissoesNiveisOcupacionais.Select(x => x.ID).ToList(),
                                                  ref postParameters);

            try
            {
                return(DrupalUtil.SalvaNodeDrupalRest(postParameters, true, bmConfiguracaoSistema, bmLogSincronia, usuarioLogado));
            }
            catch (Exception)
            {
                return(null);
            }
        }
Exemple #2
0
        public int?SalvaNodeDrupalRest(Programa registro, BMConfiguracaoSistema bmConfiguracaoSistema = null, BMLogSincronia bmLogSincronia = null, Usuario usuarioLogado = null)
        {
            var postParameters = DrupalUtil.InitPostParameters(registro.ID, registro.Nome, registro.Apresentacao,
                                                               "solucao", registro.Ativo);

            postParameters.Add("data[field_tipo_de_solucao]", "5");

            DrupalUtil.PermissoesAreaTematica(
                registro.ListaAreasTematicas.Where(p => p.AreaTematica != null).Select(x => x.AreaTematica.ID).ToList(),
                ref postParameters);
            DrupalUtil.PermissoesUf(registro.ListaPermissao.Where(p => p.Uf != null).Select(x => x.Uf.ID).ToList(),
                                    ref postParameters);
            DrupalUtil.PermissoesPerfil(
                registro.ListaPermissao.Where(p => p.Perfil != null).Select(x => x.Perfil.ID).ToList(),
                ref postParameters);
            DrupalUtil.PermissoesNivelOcupacional(
                registro.ListaPermissao.Where(p => p.NivelOcupacional != null)
                .Select(x => x.NivelOcupacional.ID)
                .ToList(), ref postParameters);
            try
            {
                return(DrupalUtil.SalvaNodeDrupalRest(postParameters, true, bmConfiguracaoSistema, bmLogSincronia, usuarioLogado));
            }
            catch (Exception)
            {
                return(null);
            }
        }
        public int?SalvaNodeDrupalRest(SolucaoEducacional registro, BMConfiguracaoSistema bmConfiguracaoSistema = null, BMLogSincronia bmLogSincronia = null, Usuario usuarioLogado = null)
        {
            var postParameters = DrupalUtil.InitPostParameters(registro.ID, registro.Nome, registro.Apresentacao,
                                                               "solucao", registro.Ativo);

            /*1 - Cursos Online; 2 - Cursos Presenciais; 3 - Cursos Mistos; 4 - Trilhas; 5 - Programas*/
            int tipoDeSolucao;

            switch (registro.FormaAquisicao.ID)
            {
            // Curso presencial.
            case 22:
                tipoDeSolucao = 2;
                break;

            // Curso misto.
            case 40:
                tipoDeSolucao = 3;
                break;

            // Jogo online, Jogo presencial e Jogo misto.
            case 43:
            case 44:
            case 45:
            case 113:
                tipoDeSolucao = 6;
                break;

            default:
                tipoDeSolucao = 1;
                break;
            }

            postParameters.Add("data[field_tipo_de_solucao]", tipoDeSolucao.ToString());

            DrupalUtil.PermissoesAreaTematica(registro.ListaAreasTematicas.Select(x => x.AreaTematica.ID).ToList(),
                                              ref postParameters);

            DrupalUtil.PermissoesUf(registro.ListaPermissao.Where(p => p.Uf != null).Select(x => x.Uf.ID).ToList(),
                                    ref postParameters);

            DrupalUtil.PermissoesPerfil(
                registro.ListaPermissao.Where(p => p.Perfil != null).Select(x => x.Perfil.ID).ToList(),
                ref postParameters);

            DrupalUtil.PermissoesNivelOcupacional(
                registro.ListaPermissao.Where(p => p.NivelOcupacional != null)
                .Select(x => x.NivelOcupacional.ID)
                .ToList(), ref postParameters);

            try
            {
                return(DrupalUtil.SalvaNodeDrupalRest(postParameters, true, bmConfiguracaoSistema, bmLogSincronia, usuarioLogado));
            }
            catch (Exception)
            {
                throw new AlertException("Erro na sincronização. Tente salvar novamente.");
            }
        }