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); } }
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."); } }