public ActionResult MiDieta(Dieta d) { if (ModelState.IsValid) { System.Diagnostics.Debug.WriteLine(d.objetivo.ToString()); // Variables capturadas string seleccion = d.objetivo.ToString(); // Variables para el registro SQL HarrisBen Calorias = new HarrisBen(); DateTime FechaActual = DateTime.Now; string Usuario; string Fecha; DataTable Tabla; string CaloriasTotales; string CodigoHarrisBen; int Resultado; Usuario = TempData["Usuario"].ToString(); Tabla = Calorias.BuscarUltimoRegistroHarris(Usuario); if (Tabla.Rows.Count > 0) { // Capturar la fecha del ultimo registro. Fecha = Tabla.Rows[0][0].ToString(); Tabla = Calorias.BuscarRegistroHarris(Usuario, Fecha); if (Tabla.Rows.Count > 0) { // Capturar los Datos para relacionar, CaloriasTotales = Tabla.Rows[0][3].ToString(); CodigoHarrisBen = Tabla.Rows[0][0].ToString(); // Datos para insertar el registro. Fecha = FechaActual.ToString(); Resultado = d.AgregarDieta(Usuario, Fecha, CodigoHarrisBen, seleccion); if (Resultado > 0) { // Obtener la dieta mas reciente string CodigoDieta; Tabla = d.ObtenerUltimaDieta(Usuario); if (Tabla.Rows.Count > 0) { Fecha = Tabla.Rows[0][0].ToString(); Tabla = d.ObtenerDieta(Usuario, Fecha); if (Tabla.Rows.Count > 0) { CodigoDieta = Tabla.Rows[0][0].ToString(); TempData["CodigoDieta"] = CodigoDieta; // Ajustar el nivel calorico if (seleccion.Equals("bajar")) { CaloriasTotales = Convert.ToString(Convert.ToDouble(CaloriasTotales) - 500); } if (seleccion.Equals("subir")) { CaloriasTotales = Convert.ToString(Convert.ToDouble(CaloriasTotales) + 500); } // Obtener el catalogo de alimentos. Tabla = d.ObtenerCatalogoAlimentos(); double ContadorCalorias = 0; string CodigoAlimento; // Ciclo para empezar a asociar las comidas a la dieta. Random r = new Random(); int Indice; while (ContadorCalorias < Convert.ToDouble(CaloriasTotales)) { ContadorCalorias = ContadorCalorias + Convert.ToDouble(Tabla.Rows[0][2]); Indice = r.Next(0, Tabla.Rows.Count); CodigoAlimento = Tabla.Rows[Indice][0].ToString(); d.AgregarRelacion(CodigoDieta, CodigoAlimento); } return(RedirectToAction("Dashboard")); } } } } } return(View()); } else { return(View()); } }
public ActionResult Dashboard() { Cliente c = new Cliente(); HarrisBen HB = new HarrisBen(); Dieta d = new Dieta(); string _Usuario; string _Genero; DataTable ultimo_registro; DataTable Registro; String FechaUltimoRegistro; // Informacion Inicial. if (TempData.ContainsKey("Usuario") || TempData.ContainsKey("Genero")) { // Variables de TempData provenientes del login. _Usuario = TempData["Usuario"].ToString(); _Genero = TempData["Genero"].ToString(); TempData.Keep(); ultimo_registro = c.ObtenerUltimoRegistro(_Usuario); if (ultimo_registro.Rows.Count > 0) { FechaUltimoRegistro = ultimo_registro.Rows[0][0].ToString(); System.Diagnostics.Debug.WriteLine("Ultimo Registro del Cliente en: " + FechaUltimoRegistro); Registro = c.ObtenerDatosUsuario(_Usuario, FechaUltimoRegistro); if (Registro.Rows.Count > 0) { TempData["IMC"] = Registro.Rows[0][5].ToString(); TempData["Agua"] = Registro.Rows[0][6].ToString(); System.Diagnostics.Debug.WriteLine("Datos Basicos: " + TempData["IMC"].ToString() + " de IMC|" + TempData["Agua"].ToString() + " vasos de agua"); ViewBag.Agua = TempData["Agua"]; ViewBag.IMC = TempData["IMC"]; // Si tengo TempData de Agua y IMC nuevas. if (TempData.ContainsKey("Agua_nueva") && TempData.ContainsKey("IMC_nueva")) { // Creo ViewBags para allas. ViewBag.Agua_nueva = TempData["Agua_nueva"]; ViewBag.IMC_nueva = TempData["IMC_nueva"]; } if (TempData.ContainsKey("Calorias")) { ViewBag.Calorias_nueva = TempData["Calorias_nueva"]; } ultimo_registro = HB.BuscarUltimoRegistroHarris(_Usuario); if (ultimo_registro.Rows.Count > 0) { FechaUltimoRegistro = ultimo_registro.Rows[0][0].ToString(); System.Diagnostics.Debug.WriteLine("Ultimo Registro del Harris en: " + FechaUltimoRegistro); Registro = HB.BuscarRegistroHarris(_Usuario, FechaUltimoRegistro); if (Registro.Rows.Count > 0) { TempData["Calorias"] = Registro.Rows[0][3].ToString(); ViewBag.Calorias_nueva = TempData["Calorias"]; TempData.Keep(); ViewBag.Usuario = _Usuario; ViewBag.Calorias = TempData["Calorias"]; // ViewData para mostrar la Dieta. string CodigoDieta; List <string> ListaAlimentos = new List <string>(); List <string> ListaCalorias = new List <string>(); Registro = d.ObtenerUltimaDieta(_Usuario); if (Registro.Rows.Count > 0) { FechaUltimoRegistro = Registro.Rows[0][0].ToString(); Registro = d.ObtenerDieta(_Usuario, FechaUltimoRegistro); if (Registro.Rows.Count > 0) { CodigoDieta = Registro.Rows[0][0].ToString(); Registro = d.ObtenerDietaCompleta(_Usuario, CodigoDieta); if (Registro.Rows.Count > 0) { // Ciclo para llenar las listas con las partes de la dieta. for (int i = 0; i < Registro.Rows.Count; i++) { System.Diagnostics.Debug.WriteLine(Registro.Rows[i][0].ToString()); ListaAlimentos.Add(Registro.Rows[i][0].ToString()); ListaCalorias.Add(Registro.Rows[i][1].ToString()); } ViewData["ListaAlimentos"] = ListaAlimentos; ViewData["ListaCalorias"] = ListaCalorias; // ViewData para mostrar la Medidas. Medidas m = new Medidas(); string CodigoMedida; List <string> ListaMedida = new List <string>(); List <string> ListaConcepto = new List <string>(); Registro = m.ObtenerUltimaMedida(_Usuario); if (Registro.Rows.Count > 0) { System.Diagnostics.Debug.WriteLine("Fecha Ultima Medida: " + Registro.Rows[0][0].ToString()); FechaUltimoRegistro = Registro.Rows[0][0].ToString(); Registro = m.ObtenerMedida(_Usuario, FechaUltimoRegistro); if (Registro.Rows.Count > 0) { System.Diagnostics.Debug.WriteLine("Codigo de Medicion: " + Registro.Rows[0][0].ToString()); // Capturar el codigo de medida. CodigoMedida = Registro.Rows[0][0].ToString(); Registro = m.ObtenerMedicionCompleta(CodigoMedida); if (Registro.Rows.Count > 0) { // Ciclo para llenar la lista de medidas. // Detalle for (int i = 0; i < Registro.Columns.Count; i++) { ListaConcepto.Add(Registro.Columns[i].ToString()); ListaMedida.Add(Registro.Rows[0][i].ToString()); } ViewData["ListaMedidas"] = ListaMedida; ViewData["ListaConcepto"] = ListaConcepto; } } } } } } } } } } return(View()); } else { return(RedirectToAction("Login")); } }
public ActionResult Factor_de_Actividad(HarrisBen HB) { // Variables para los registros de SQL DataTable DataCliente; String FechaUltimoRegistro; int i; string Correo = TempData["Usuario"].ToString(); // Variables para la captura de datos double FactorActividad = 0; double tmb; double peso; int altura; int edad; double TotalCalorias; string Genero; DateTime today = DateTime.Now; string Seleccion; if (ModelState.IsValid) { // Creamos una instancia del modelo de Cliente para obtener los Datos necesarios para calcular los datos. Cliente c = new Cliente(); // Pido la fecha del ultimo registro. DataCliente = c.ObtenerUltimoRegistro(Correo); if (DataCliente.Rows.Count > 0) { FechaUltimoRegistro = DataCliente.Rows[0][0].ToString(); // Solicito el registro mas reciente. DataCliente = c.ObtenerDatosUsuario(Correo, FechaUltimoRegistro); if (DataCliente.Rows.Count > 0) { peso = Convert.ToDouble(DataCliente.Rows[0][2].ToString()); altura = Convert.ToInt16(DataCliente.Rows[0][3].ToString()); edad = Convert.ToInt16(DataCliente.Rows[0][4].ToString()); Genero = TempData["Genero"].ToString(); // Capturo el valor seleccionado de los radio buttons. Seleccion = HB.NivelActividad.ToString(); // Comprar el factor de Actividad if (Seleccion == "sedentario") { FactorActividad = 1.2; } else if (Seleccion == "ligero") { FactorActividad = 1.375; } else if (Seleccion == "moderado") { FactorActividad = 1.55; } else if (Seleccion == "intenso") { FactorActividad = 1.725; } else if (Seleccion == "muy_intenso") { FactorActividad = 1.9; } // Formula para cada genero if (Convert.ToBoolean(Genero)) { // True = Masculino tmb = 66 + (13.7 * peso) + (5 * altura) - (6.8 * edad); } else { // False = Femenino tmb = 655 + (9.6 * peso) + (1.8 * altura) - (4.7 * edad); } // Calorias Totales TotalCalorias = FactorActividad * tmb; i = HB.AgregarRegistroHarris(Convert.ToString(FactorActividad), Convert.ToString(tmb), Convert.ToString(TotalCalorias), Convert.ToString(today), Correo); if (i > 0) { // Si se hace la insercion con exito. TempData["Usuario"] = Correo; TempData["Calorias_nueva"] = TotalCalorias.ToString(); TempData.Keep(); return(RedirectToAction("Dashboard")); } } } } return(View()); }