public ListaTasaCambio GetListaTasaCambio(TasaCambio item) { var listado = new ListaTasaCambio(); var parametros = new SqlParameterItem("@pResultado", SqlDbType.Int, 0); InicializarConexion(TipoBaseDatos.MainSoft); var reader = helper.ExecuteReader("[usp_TasaCambio_DameUltimaTasaCambio]", parametros); listado.ListaTasaCambios = new List <TasaCambio>(); //float x; while (reader.Read()) { listado.ListaTasaCambios.Add(new TasaCambio() { IdTasaCambio = reader.GetInt32(reader.GetOrdinal("IdTasaCambio")), IdMoneda = Convert.ToInt32(reader.GetOrdinal("IdMoneda")), TasaDeCambio = reader.GetDouble(reader.GetOrdinal("TasaCambio")), EsFix = reader.GetBoolean(reader.GetOrdinal("EsFix")), FechaCambio = reader.GetDateTime(reader.GetOrdinal("FechaCambio")) }); //var x = reader.GetDateTime(reader.GetOrdinal("FechaCambio")); } reader.Close(); return(listado); }
public ListaTasaCambio GetListTasaCambio(TasaCambio item) { var response = new ListaTasaCambio(); using (TransactionScope transaction = new TransactionScope(TransactionScopeOption.Required)) { response = iTasaCambioRepositorio.GetListaTasaCambio(item); for (var i = 0; i < response.ListaTasaCambios.Count; i++) { switch (response.ListaTasaCambios[i].IdMoneda) { case 35: if (response.ListaTasaCambios[i].EsFix) { response.ListaTasaCambios[i].EnumeradoresTipoCambio = EnumeradoresTipoCambio.DolarFIX; } else { response.ListaTasaCambios[i].EnumeradoresTipoCambio = EnumeradoresTipoCambio.Dolar; } break; } } if (response.ListaTasaCambios == null) { response = GenerarCambioMoneda(); for (var i = 0; i < response.ListaTasaCambios.Count; i++) { response.ListaTasaCambios[i] = iTasaCambioRepositorio.InsertarTasaCambio(response.ListaTasaCambios[i]); } } transaction.Complete(); } return(response); }
private ListaTasaCambio GenerarXml(string response) { XmlDocument documento = new XmlDocument(); documento.LoadXml(response); XmlNodeList ser = documento.GetElementsByTagName("bm:DataSet"); var monedas = new ListaTasaCambio(); monedas.ListaTasaCambios = new List <TasaCambio>(); XmlNodeList lista = ((XmlElement)ser[0]).GetElementsByTagName("bm:Series"); foreach (XmlElement nodobase in lista) { string nserie = nodobase.GetAttribute("IDSERIE"); if (nserie == "SF43718") { var moneda = new TasaCambio(); moneda.Serie = "SF43718"; moneda.EnumeradoresTipoCambio = EnumeradoresTipoCambio.DolarFIX; moneda.EsFix = true; moneda.IdMoneda = GetIdMoneda(EnumeradoresTipoCambio.Dolar); XmlNodeList uno = ((XmlElement)lista[1]).GetElementsByTagName("bm:Obs"); foreach (XmlElement nodo in uno) { moneda.TasaDeCambio = (float)Convert.ToDecimal(nodo.GetAttribute("OBS_VALUE")); moneda.FechaCambio = Convert.ToDateTime(nodo.GetAttribute("TIME_PERIOD")); } monedas.ListaTasaCambios.Add(moneda); } if (nserie == "SF46410") { var moneda = new TasaCambio(); XmlNodeList dos = ((XmlElement)lista[2]).GetElementsByTagName("bm:Obs"); moneda.Serie = "SF46410"; moneda.EnumeradoresTipoCambio = EnumeradoresTipoCambio.Euro; moneda.IdMoneda = GetIdMoneda(EnumeradoresTipoCambio.Euro); foreach (XmlElement nodo in dos) { moneda.TasaDeCambio = (float)Convert.ToDecimal(nodo.GetAttribute("OBS_VALUE")); moneda.FechaCambio = Convert.ToDateTime(nodo.GetAttribute("TIME_PERIOD")); monedas.ListaTasaCambios.Add(moneda); } } if (nserie == "SF60653") { var moneda = new TasaCambio(); XmlNodeList dos = ((XmlElement)lista[0]).GetElementsByTagName("bm:Obs"); moneda.Serie = "SF60653"; moneda.IdMoneda = GetIdMoneda(EnumeradoresTipoCambio.Dolar); moneda.EnumeradoresTipoCambio = EnumeradoresTipoCambio.Dolar; foreach (XmlElement nodo in dos) { moneda.TasaDeCambio = (float)Convert.ToDecimal(nodo.GetAttribute("OBS_VALUE")); moneda.FechaCambio = Convert.ToDateTime(nodo.GetAttribute("TIME_PERIOD")); monedas.ListaTasaCambios.Add(moneda); } } } return(monedas); }