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 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()); } }