public List <RoomType> getAllRoomType(string conn) { SqlConnection connection = new SqlConnection(conn); string sqlStoredProcedure = "SP_Retrieve_Room_By_Type"; SqlCommand cmdRoomType = new SqlCommand(sqlStoredProcedure, connection); cmdRoomType.CommandType = CommandType.StoredProcedure; cmdRoomType.Connection.Open(); cmdRoomType.ExecuteNonQuery(); SqlDataReader reader = cmdRoomType.ExecuteReader(); List <RoomType> allRoomType = new List <RoomType>(); cr.fi.bccr.indicadoreseconomicos.wsIndicadoresEconomicos client = new cr.fi.bccr.indicadoreseconomicos.wsIndicadoresEconomicos(); DataSet typeChange = client.ObtenerIndicadoresEconomicos("317", DateTime.Today.ToString("d"), DateTime.Today.ToString("d"), "Cuatrivago", "n"); if (reader.HasRows) { while (reader.Read()) { RoomType roomType = new RoomType(); roomType.idRoomType = reader.GetString(0); roomType.name = reader.GetString(1); roomType.description_ = reader.GetString(2); roomType.quantity = reader.GetString(3); roomType.priceColon = "$" + reader.GetString(4); //double colon = int.Parse(reader.GetString(4)) * double.Parse(typeChange.Tables[0].Rows[0].ItemArray[2].ToString()); double colon = 0.4; roomType.priceDolar = "₡" + colon; roomType.path = reader.GetString(5); allRoomType.Add(roomType); } } cmdRoomType.Connection.Close(); return(allRoomType); }
public List <Room> getAllRommByType(string conn, int idTypeRoom) { SqlConnection connection = new SqlConnection(conn); string sqlStoredProcedure = "SP_Retrieve_All_Room_By_Room_Type_With_Price"; SqlCommand sqlCommand = new SqlCommand(sqlStoredProcedure, connection); sqlCommand.CommandType = CommandType.StoredProcedure; sqlCommand.Parameters.Add(new SqlParameter("@RoomType", idTypeRoom)); sqlCommand.Connection.Open(); sqlCommand.ExecuteNonQuery(); SqlDataReader reader = sqlCommand.ExecuteReader(); cr.fi.bccr.indicadoreseconomicos.wsIndicadoresEconomicos client = new cr.fi.bccr.indicadoreseconomicos.wsIndicadoresEconomicos(); DataSet typeChange = client.ObtenerIndicadoresEconomicos("317", DateTime.Today.ToString("d"), DateTime.Today.ToString("d"), "Cuatrivago", "n"); double colon = double.Parse(typeChange.Tables[0].Rows[0].ItemArray[2].ToString()); List <Room> roomList = new List <Room>(); if (reader.HasRows) { while (reader.Read()) { Room room = new Room(); room.idRoom = reader.GetInt32(0); room.capacity = reader.GetInt32(1); room.description_ = reader.GetString(2); room.priceDolar = "$" + reader.GetDouble(3).ToString(); room.priceColon = "₡" + (reader.GetDouble(3) * colon); room.roomType = idTypeRoom; roomList.Add(room); } } sqlCommand.Connection.Close(); return(roomList); }
// GET api/insertar public void Get() { try { //Se crea el cliente cr.fi.bccr.indicadoreseconomicos.wsIndicadoresEconomicos cliente = new cr.fi.bccr.indicadoreseconomicos.wsIndicadoresEconomicos(); // Se crea la fecha Actual DateTime Fecha_Actual = DateTime.UtcNow.Date; //Se le da formato y se convierte en string para usarla como parametro string Hoy = Fecha_Actual.ToString("dd/MM/yyyy"); //Se crea la fecha de hace 6 años var Fecha_Hace_6años = Fecha_Actual.AddYears(-6); //Se le da formato y se convierte en string para usarla como parametro string Antes = Fecha_Hace_6años.ToString("dd/MM/yyyy"); //Se llama el api con las fechas como parametro DataSet Datos = cliente.ObtenerIndicadoresEconomicos("317", Antes, Hoy, "Esteban Ferarios", "N"); /*Se crea el string de conexion*/ var cb = new SqlConnectionStringBuilder(); cb.DataSource = "avanzadas.database.windows.net"; cb.UserID = "bases"; cb.Password = "******"; cb.InitialCatalog = "Bases_DW"; //Se inicia el while de los datos obtenidos int i = 0; /*Se crea la conexcion*/ using (SqlConnection connection = new SqlConnection(cb.ConnectionString)) { //Se abre la conexion connection.Open(); //Se borran los datos anteriores para la prueba String queryBorrar = "DELETE FROM dimTipoCambio DELETE FROM dimFecha DBCC CHECKIDENT('dimFecha', RESEED, 0); DBCC CHECKIDENT ('dimTipoCambio', RESEED, 0);"; using (SqlCommand command = new SqlCommand(queryBorrar, connection)) { int result = command.ExecuteNonQuery(); // Check Error if (result < 0) { Console.WriteLine("Error inserting data into Database!"); } } //Se leen los datos while (i != Datos.Tables[0].Rows.Count) { try { //Se Obtiene la fecha segun la posicion i en formato String string Fechas = Datos.Tables[0].Rows[i].ItemArray[1].ToString(); //Se convierten a tipo Datetime para darles formato y manejarlas DateTime myDate = DateTime.Parse(Fechas); //Se dividen los formatos necesarios para el Store Procedure string Fecha = myDate.ToString("MM/dd/yyyy"); string Dia = myDate.ToString("dd"); string Mes = myDate.ToString("MM"); string Año = myDate.ToString("yyyy"); string YYYY_MM = myDate.ToString("yyyy/MM"); string Mes_String = "Unknown"; //Se convierten el Dia,Mes y Año para crear un datetime y obtener el nombre del dia int Dia_int = 0; Int32.TryParse(Dia, out Dia_int); int Mes_int = 0; Int32.TryParse(Mes, out Mes_int); int Año_int = 0; Int32.TryParse(Año, out Año_int); //Se crea el objeto Datetime para saber el nombre del dia DateTime Date = new DateTime(Año_int, Mes_int, Dia_int, 0, 00, 00); //Se obtiene el nombre del dia de la fecha string Nombre_dia = Date.DayOfWeek.ToString(); //Se inician los switch cases para formar las fechas con el nombre switch (Mes) { case "01": Mes_String = "January"; break; case "02": Mes_String = "February"; break; case "03": Mes_String = "March"; break; case "04": Mes_String = "April"; break; case "05": Mes_String = "May"; break; case "06": Mes_String = "June"; break; case "07": Mes_String = "July"; break; case "08": Mes_String = "August"; break; case "09": Mes_String = "Setember"; break; case "10": Mes_String = "October"; break; case "11": Mes_String = "November"; break; case "12": Mes_String = "December"; break; } // Se crea la fecha completa en formato string string Fecha_String = Nombre_dia + ", " + Mes_String + " " + Dia + "," + Año; //Se Obtiene el tipo de cambio segun el i String Cambio = Datos.Tables[0].Rows[i].ItemArray[2].ToString(); Cambio = Cambio.Replace(",", "."); //Se crea el query para el store procedure //Se crea el query del store y se inserta en la base String query = "EXEC dbo.insertar @Fecha = '" + Fecha + "', @Dia = '" + Dia + "', @Mes = '" + Mes + "', @Año = '" + Año + "', @Mes_String = '" + Mes_String + "', @YYYY_MM = '" + YYYY_MM + "', @Fecha_String = '" + Fecha_String + "', @Tipo_Cambio = '" + Cambio + "'"; Console.WriteLine(query); using (SqlCommand command = new SqlCommand(query, connection)) { int result = command.ExecuteNonQuery(); // Check Error if (result < 0) { Console.WriteLine("Error inserting data into Database!"); } } i++; //System.Threading.Thread.Sleep(50000); } catch (Exception e) { Console.WriteLine(e); System.Threading.Thread.Sleep(50000); } } connection.Close(); } } catch (Exception e) { Console.WriteLine(e); } }
public void Get() { try { //Se crea el cliente cr.fi.bccr.indicadoreseconomicos.wsIndicadoresEconomicos cliente = new cr.fi.bccr.indicadoreseconomicos.wsIndicadoresEconomicos(); /*Se crea el string de conexion*/ var cb = new SqlConnectionStringBuilder(); cb.DataSource = "avanzadas.database.windows.net"; cb.UserID = "bases"; cb.Password = "******"; cb.InitialCatalog = "Bases_DW"; // Se crea la fecha Actual DateTime Fecha_Actual = DateTime.UtcNow.Date; //Se le da formato y se convierte en string para usarla como parametro string Hoy = Fecha_Actual.ToString("dd/MM/yyyy"); //Se crea un query para obtener la ultima fecha guardada en la DB string queryUltimaFecha = "SELECT TOP 1 Fecha FROM dimFecha ORDER BY dimFecha.Id_Fecha DESC"; //Se crea una variable DateTime para guardar la ultima fecha que se obtendra de la DB //por defecto se utilizara el dia anterior para que al agregar un dia sea el dia actual DateTime UltimaFecha = DateTime.UtcNow.Date.AddDays(-1); //se obtiene la ultima fecha guardada conectandose a la db using (SqlConnection connection = new SqlConnection(cb.ConnectionString)) { //se abre la conexion connection.Open(); //se crea el comando con el query using (SqlCommand command = new SqlCommand(queryUltimaFecha, connection)) { //se inicia el try try { //se hace un result del comando SqlDataReader result = command.ExecuteReader(); //se lee el result while (result.Read()) { /*como solo es una fecha se lee la posicion 0 y * se le asigna a la variable DateTime*/ UltimaFecha = result.GetDateTime(0); } } catch (Exception e) { Console.WriteLine(e); } } //se cierra la conexion connection.Close(); } /*Como se sabe que no necitamos la ultima fecha si el dia siguiente de esta * le agregamos un dia*/ UltimaFecha = UltimaFecha.AddDays(1); //Se le da al resultado y se convierte en string para usarla como parametro string Antes = UltimaFecha.ToString("dd/MM/yyyy"); //Se llama el api con las fechas como parametro DataSet Datos = cliente.ObtenerIndicadoresEconomicos("317", Antes, Hoy, "Esteban Ferarios", "N"); //Se obtienen las fechas y tipo de cambio desde la ultima fecha int i = 0; /*Se crea la conexcion*/ using (SqlConnection connection = new SqlConnection(cb.ConnectionString)) { //Se abre la conexion connection.Open(); //Se leen los datos while (i != Datos.Tables[0].Rows.Count) { try { //Se Obtiene la fecha segun la posicion i en formato String string Fechas = Datos.Tables[0].Rows[i].ItemArray[1].ToString(); //Se convierten a tipo Datetime para darles formato y manejarlas DateTime myDate = DateTime.Parse(Fechas); //Se dividen los formatos necesarios para el Store Procedure string Fecha = myDate.ToString("MM/dd/yyyy"); string Dia = myDate.ToString("dd"); string Mes = myDate.ToString("MM"); string Año = myDate.ToString("yyyy"); string YYYY_MM = myDate.ToString("yyyy/MM"); string Mes_String = "Unknown"; //Se convierten el Dia,Mes y Año para crear un datetime y obtener el nombre del dia int Dia_int = 0; Int32.TryParse(Dia, out Dia_int); int Mes_int = 0; Int32.TryParse(Mes, out Mes_int); int Año_int = 0; Int32.TryParse(Año, out Año_int); //Se crea el objeto Datetime para saber el nombre del dia DateTime Date = new DateTime(Año_int, Mes_int, Dia_int, 0, 00, 00); //Se obtiene el nombre del dia de la fecha string Nombre_dia = Date.DayOfWeek.ToString(); //Se inician los switch cases para formar las fechas con el nombre del mes switch (Mes) { case "01": Mes_String = "January"; break; case "02": Mes_String = "February"; break; case "03": Mes_String = "March"; break; case "04": Mes_String = "April"; break; case "05": Mes_String = "May"; break; case "06": Mes_String = "June"; break; case "07": Mes_String = "July"; break; case "08": Mes_String = "August"; break; case "09": Mes_String = "Setember"; break; case "10": Mes_String = "October"; break; case "11": Mes_String = "November"; break; case "12": Mes_String = "December"; break; } // Se crea la fecha completa en formato string string Fecha_String = Nombre_dia + ", " + Mes_String + " " + Dia + "," + Año; //Se Obtiene el tipo de cambio segun el i String Cambio = Datos.Tables[0].Rows[i].ItemArray[2].ToString(); // Se reemplaza , por . para complir el formato del Float Cambio = Cambio.Replace(",", "."); //Se crea el query del store y se inserta en la base String query = "EXEC dbo.insertar @Fecha = '" + Fecha + "', @Dia = '" + Dia + "', @Mes = '" + Mes + "', @Año = '" + Año + "', @Mes_String = '" + Mes_String + "', @YYYY_MM = '" + YYYY_MM + "', @Fecha_String = '" + Fecha_String + "', @Tipo_Cambio = '" + Cambio + "'"; using (SqlCommand command = new SqlCommand(query, connection)) { int resultado = command.ExecuteNonQuery(); // Check Error if (resultado < 0) { Console.WriteLine("Error inserting data into Database!"); } } i++; //System.Threading.Thread.Sleep(5000); } catch (Exception e) { Console.WriteLine(e); // System.Threading.Thread.Sleep(50000); } } //se cierra la conexion connection.Close(); } } catch (Exception e) { Console.WriteLine(e); } }
public List <RangeDateRoom> getInformationRangeDateRoom(string conn, DateTime dateIn, DateTime dateOut, int type) { SqlConnection connection = new SqlConnection(conn); string sqlStoredProcedure = "SP_VERIFY_ROOMS_USER"; SqlCommand cmdRangeRoom = new SqlCommand(sqlStoredProcedure, connection); cmdRangeRoom.CommandType = CommandType.StoredProcedure; SqlParameter currentDateIn = new SqlParameter(); currentDateIn.ParameterName = "@dateIn"; currentDateIn.SqlDbType = SqlDbType.Date; currentDateIn.Direction = ParameterDirection.Input; currentDateIn.Value = dateIn; SqlParameter currentDateOut = new SqlParameter(); currentDateOut.ParameterName = "@dateOut"; currentDateOut.SqlDbType = SqlDbType.Date; currentDateOut.Direction = ParameterDirection.Input; currentDateOut.Value = dateOut; SqlParameter currentType = new SqlParameter(); currentType.ParameterName = "@roomType"; currentType.SqlDbType = SqlDbType.Int; currentType.Direction = ParameterDirection.Input; currentType.Value = type; cmdRangeRoom.Parameters.Add(currentDateIn); cmdRangeRoom.Parameters.Add(currentDateOut); cmdRangeRoom.Parameters.Add(currentType); cmdRangeRoom.Connection.Open(); cmdRangeRoom.ExecuteNonQuery(); SqlDataReader reader = cmdRangeRoom.ExecuteReader(); List <RangeDateRoom> rooms = new List <RangeDateRoom>(); cr.fi.bccr.indicadoreseconomicos.wsIndicadoresEconomicos client = new cr.fi.bccr.indicadoreseconomicos.wsIndicadoresEconomicos(); DataSet typeChange = client.ObtenerIndicadoresEconomicos("317", DateTime.Today.ToString("d"), DateTime.Today.ToString("d"), "Cuatrivago", "n"); double colon = double.Parse(typeChange.Tables[0].Rows[0].ItemArray[2].ToString()); if (reader.HasRows) { while (reader.Read()) { RangeDateRoom room = new RangeDateRoom(); room.id = reader.GetInt32(0).ToString(); room.description = reader.GetString(1); room.capacity = reader.GetInt32(2).ToString(); room.available = reader.GetString(3); room.type = reader.GetString(4); room.price = "$" + reader.GetDouble(5).ToString(); room.priceColon = "₡" + (reader.GetDouble(5) * colon); rooms.Add(room); } } cmdRangeRoom.Connection.Close(); return(rooms); }