public List <CoordenadaAtividade> ObterCoordenadaAtividade(int empreendimentoId, eCaracterizacao caracterizacaoTipo, eTipoGeometria tipoGeo) { return(_da.ObterCoordenadas(empreendimentoId, caracterizacaoTipo, tipoGeo)); }
public List <Lista> ObterCoordenadaAtividadeLst(int empreendimentoId, eCaracterizacao caracterizacaoTipo, eTipoGeometria tipoGeo) { List <Lista> coordenadas = new List <Lista>(); foreach (CoordenadaAtividade item in _da.ObterCoordenadas(empreendimentoId, caracterizacaoTipo, tipoGeo)) { Lista itemLista = new Lista(); itemLista.Id = item.Id.ToString() + "|" + item.CoordX + "|" + item.CoordY; itemLista.Texto = item.CoordenadasAtividade; itemLista.IsAtivo = true; coordenadas.Add(itemLista); } return(coordenadas); }
internal List <CoordenadaAtividade> ObterCoordenadas(int empreendimento, eCaracterizacao caracterizacaoTipo, eTipoGeometria tipoGeometria, BancoDeDados banco = null) { List <CoordenadaAtividade> lstCoordenadas = new List <CoordenadaAtividade>(); string pref = "p"; switch (tipoGeometria) { case eTipoGeometria.Ponto: pref = "p"; break; case eTipoGeometria.Linha: pref = "l"; break; case eTipoGeometria.Poligono: pref = "a"; break; default: return(lstCoordenadas); } using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { Comando comando = bancoDeDados.CriarComando(@"select a.id, ord.column_value from {1}geo_" + pref + @"ativ a, table(a.geometry.SDO_ORDINATES) ord, {0}crt_projeto_geo g where a.projeto = g.id and g.empreendimento = :empreendimento and g.caracterizacao = :caracterizacao", EsquemaBanco, EsquemaBancoGeo); comando.AdicionarParametroEntrada("empreendimento", empreendimento, DbType.Int32); comando.AdicionarParametroEntrada("caracterizacao", (int)caracterizacaoTipo, DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { CoordenadaAtividade coordenada = null; int idx = 0; while (reader.Read()) { idx++; if ((idx % 2) != 0) { coordenada = new CoordenadaAtividade(); coordenada.Id = Convert.ToInt32(reader["id"]); coordenada.Tipo = (int)tipoGeometria; coordenada.CoordX = Convert.ToDecimal(reader["column_value"]); } else { coordenada.Tipo = (int)tipoGeometria; coordenada.CoordY = Convert.ToDecimal(reader["column_value"]); lstCoordenadas.Add(coordenada); } } reader.Close(); } } return(lstCoordenadas); }