public bool ModificarExped(ClienteNutricion clienteModif, HistorialMedico histModif, HabitoAlimentario habModif, List <Recordatorio24H> listRecordModif, Antropometria antropModif, Porciones porcModif, List <DistribucionPorciones> distrModif)
        {
            TOClienteNutricion cliente = new TOClienteNutricion();

            cliente.Cedula    = clienteModif.Cedula; cliente.Nombre = clienteModif.Nombre; cliente.Apellido1 = clienteModif.Apellido1; cliente.Apellido2 = clienteModif.Apellido2; cliente.Fecha_Nacimiento = clienteModif.Fecha_Nacimiento;
            cliente.Sexo      = clienteModif.Sexo; cliente.Estado_Civil = clienteModif.Estado_Civil; cliente.WhatsApp = clienteModif.WhatsApp; cliente.Telefono = clienteModif.Telefono; cliente.Residencia = clienteModif.Residencia;
            cliente.Ocupacion = clienteModif.Ocupacion; cliente.FechaIngreso = clienteModif.FechaIngreso; cliente.Correo = clienteModif.Correo; cliente.Consultorio = clienteModif.Consultorio; cliente.Estado = clienteModif.Estado;

            TOHistorialMedico histmed = new TOHistorialMedico();

            histmed.Cedula       = histModif.Cedula; histmed.Antecedentes = histModif.Antecedentes; histmed.Patologias = histModif.Patologias;
            histmed.ConsumeLicor = histModif.ConsumeLicor; histmed.Fuma = histModif.Fuma; histmed.FrecFuma = histModif.FrecFuma;
            histmed.FrecLicor    = histModif.FrecLicor; histmed.UltimoExamen = histModif.UltimoExamen; histmed.ActividadFisica = histModif.ActividadFisica;

            TOHabitoAlimentario habAlime = new TOHabitoAlimentario();

            habAlime.Cedula            = habModif.Cedula; habAlime.ComidaDiaria = habModif.ComidaDiaria;  habAlime.ComidaHorasDia = habModif.ComidaHorasDia;
            habAlime.AfueraExpress     = habModif.AfueraExpress;  habAlime.ComidaFuera = habModif.ComidaFuera;  habAlime.AzucarBebida = habModif.AzucarBebida;
            habAlime.ComidaElaboradCon = habModif.ComidaElaboradCon;  habAlime.AguaDiaria = habModif.AguaDiaria;
            habAlime.Aderezos          = habModif.Aderezos;  habAlime.Fruta = habModif.Fruta;  habAlime.Verdura = habModif.Verdura;  habAlime.Leche = habModif.Leche;
            habAlime.Huevo             = habModif.Huevo;  habAlime.Yogurt = habModif.Yogurt;  habAlime.Carne = habModif.Carne;
            habAlime.Queso             = habModif.Queso;  habAlime.Aguacate = habModif.Aguacate;  habAlime.Semillas = habAlime.Semillas;

            List <TORecordatorio24H> listRecord = new List <TORecordatorio24H>();

            foreach (Recordatorio24H r in listRecordModif)
            {
                listRecord.Add(new TORecordatorio24H(r.Cedula, r.TiempoComida, r.Hora, r.Descripcion));
            }

            TOAntropometria antrop = new TOAntropometria();

            antrop.Cedula         = antropModif.Cedula; antrop.Talla = antropModif.Talla; antrop.PesoIdeal = antropModif.PesoIdeal; antrop.Edad = antropModif.Edad; antrop.PMB = antropModif.PMB;
            antrop.Peso           = antropModif.Peso;  antrop.PesoMaxTeoria = antropModif.PesoMaxTeoria;  antrop.IMC = antropModif.IMC;  antrop.PorcGrasaAnalizador = antropModif.PorcGrasaAnalizador;  antrop.PorcGr_Bascula = antropModif.PorcGr_Bascula;
            antrop.GB_BI          = antropModif.GB_BI;  antrop.GB_BD = antropModif.GB_BD; antrop.GB_PI = antropModif.GB_PI;  antrop.GB_PD = antropModif.GB_PD;  antrop.GB_Tronco = antropModif.GB_Tronco;
            antrop.AguaCorporal   = antropModif.AguaCorporal; antrop.MasaOsea = antropModif.MasaOsea;  antrop.Complexión = antropModif.Complexión;  antrop.EdadMetabolica = antropModif.EdadMetabolica;  antrop.Cintura = antropModif.Cintura;
            antrop.Abdomen        = antropModif.Abdomen;  antrop.Cadera = antropModif.Cadera;  antrop.MusloDer = antropModif.MusloDer;  antrop.MusloIzq = antropModif.MusloIzq;  antrop.CBM = antropModif.CBM;
            antrop.CircunfMunneca = antropModif.CircunfMunneca;  antrop.PorcentGViceral = antropModif.PorcentGViceral;  antrop.PorcentMusculo = antropModif.PorcentMusculo;  antrop.PM_BI = antropModif.PM_BI;  antrop.PM_PD = antropModif.PM_PD;
            antrop.PM_BD          = antropModif.PM_BD;  antrop.PM_PI = antropModif.PM_PI;  antrop.PM_Tronco = antropModif.PM_Tronco;  antrop.Observaciones = antropModif.Observaciones;
            antrop.GEB            = antropModif.GEB;  antrop.GET = antropModif.GET;  antrop.CHOPorc = antropModif.CHOPorc;  antrop.CHOGram = antropModif.CHOGram; antrop.CHO_kcal = antropModif.CHO_kcal;
            antrop.ProteinaPorc   = antropModif.ProteinaPorc;  antrop.ProteinaGram = antropModif.ProteinaGram;  antrop.Proteinakcal = antropModif.Proteinakcal; antrop.GrasaPorc = antropModif.GrasaPorc; antrop.GrasaGram = antropModif.GrasaGram;  antrop.Grasakcal = antropModif.Grasakcal;

            TOPorciones porc = new TOPorciones();

            porc.Cedula    = porcModif.Cedula; porc.Leche = porcModif.Leche; porc.Carne = porcModif.Carne;
            porc.Vegetales = porcModif.Vegetales;  porc.Grasa = porcModif.Grasa;  porc.Fruta = porcModif.Fruta;
            porc.Azucar    = porcModif.Azucar;  porc.Harina = porcModif.Harina; porc.Suplemento = porcModif.Suplemento;

            List <TODistribucionPorciones> listDist = new List <TODistribucionPorciones>();

            foreach (DistribucionPorciones d in distrModif)
            {
                listDist.Add(new TODistribucionPorciones(d.Descripcion, d.TiempoComida, d.Hora, d.Cedula));
            }

            return(daoClienteNutricion.ModificarExpediente(cliente, histmed, habAlime, listRecord, antrop, porc, listDist));
        }
        /**
         * Método público que permite la conexión con la base de datos para guardar un historial
         * @param historial TOHistorialMedico
         * @param listaMedicamento List<TOMedicamento>
         * @return un parámetro de tipo booleano que devuelve un true si se guardó en la base o flase si no se guardó.
         */
        public bool GuardarHistorial(TOHistorialMedico historial, List <TOMedicamento> listaMedicamento)
        {
            //En laparte grafica falta consLic,fum
            string query1 = "Insert into Historial_Medico values(@antec,@patol,@consLic,@fum,@fechEx,@ced,@frecFum,@frecTom,@actvFis);";

            SqlCommand cmd = new SqlCommand(query1, conexion);

            try
            {
                //Historial Medico.
                //Asignacion de parametros.
                cmd.Parameters.AddWithValue("@antec", historial.Antecedentes);
                cmd.Parameters.AddWithValue("@patol", historial.Patologias);
                cmd.Parameters.AddWithValue("@consLic", historial.ConsumeLicor);
                cmd.Parameters.AddWithValue("@fum", historial.Fuma);
                cmd.Parameters.AddWithValue("@fechEx", historial.UltimoExamen);
                cmd.Parameters.AddWithValue("@ced", historial.Cedula);
                cmd.Parameters.AddWithValue("@frecFum", historial.FrecFuma);
                cmd.Parameters.AddWithValue("@frecTom", historial.FrecLicor);
                cmd.Parameters.AddWithValue("@actvFis", historial.ActividadFisica);
                //Validacion del estado de la conexion.
                if (conexion.State != ConnectionState.Open)
                {
                    conexion.Open();
                }
                //Insercion del historial medico.
                cmd.ExecuteNonQuery();
                conexion.Close();
                //Insercion de los medicamentos o suplementos del cliente.
                if (listaMedicamento != null)
                {
                    foreach (TOMedicamento medicamento in listaMedicamento)
                    {
                        string     query2 = "Insert into Medic_Suplem values(@ced,@nomb,@mot,@frec,@dosis)";
                        SqlCommand cmd2   = new SqlCommand(query2, conexion);
                        cmd2.Parameters.AddWithValue("@ced", medicamento.Cedula);
                        cmd2.Parameters.AddWithValue("@nomb", medicamento.Nombre);
                        cmd2.Parameters.AddWithValue("@mot", medicamento.Motivo);
                        cmd2.Parameters.AddWithValue("@frec", medicamento.Frecuencia);
                        cmd2.Parameters.AddWithValue("@dosis", medicamento.Dosis);
                        conexion.Open();
                        cmd2.ExecuteNonQuery();
                        conexion.Close();
                    }
                }

                return(true);
            }
            catch (SqlException)
            {
                return(false);
            }
        }
        /**
         * Método público que permite la conexión con la base de datos para traer un historial metido de acuerdo al número de cedula de un paciente
         * @param ced object
         * @return un parámetro de tipo TOHistorialMedico
         */
        public TOHistorialMedico TraerHistorialMed(object ced)
        {
            TOHistorialMedico hm     = new TOHistorialMedico();
            string            query  = "Select * from Historial_Medico where Cedula = " + ced;
            SqlCommand        buscar = new SqlCommand(query, conexion);
            SqlDataReader     lector;

            try
            {
                if (conexion.State != ConnectionState.Open)
                {
                    conexion.Open();
                }
                lector = buscar.ExecuteReader();
                if (lector.HasRows)
                {
                    lector.Read();
                    hm.Cedula          = Int32.Parse(lector["Cedula"].ToString());
                    hm.Antecedentes    = lector["Antecedentes_Fam"].ToString();
                    hm.Patologias      = lector["Patologias"].ToString();
                    hm.ConsumeLicor    = Int32.Parse(lector["Cosumo_Licor"].ToString());
                    hm.Fuma            = Int32.Parse(lector["Fumador"].ToString());
                    hm.UltimoExamen    = DateTime.Parse(lector["Fecha_Ult_Exm"].ToString());
                    hm.FrecFuma        = lector["FrecFumar"].ToString();
                    hm.FrecLicor       = lector["FrecTomar"].ToString();
                    hm.ActividadFisica = lector["ActividadFisica"].ToString();
                    conexion.Close();
                }
                else
                {
                    conexion.Close();
                    return(null);
                }
            }
            catch
            { conexion.Close(); }
            return(hm);
        }
        /**
         * Método publico que trae de la Base de datos el historial médico del cliente seleccionado.
         * @param ced, cedula del cliente
         */
        public HistorialMedico TraerHistorial(string ced)
        {
            HistorialMedico   hist = new HistorialMedico();
            TOHistorialMedico hm   = daoClienteNutricion.TraerHistorialMed(ced);

            if (hm != null)
            {
                hist.Cedula          = hm.Cedula;
                hist.Antecedentes    = hm.Antecedentes;
                hist.Patologias      = hm.Patologias;
                hist.ConsumeLicor    = hm.ConsumeLicor;
                hist.Fuma            = hm.Fuma;
                hist.FrecFuma        = hm.FrecFuma;
                hist.FrecLicor       = hm.FrecLicor;
                hist.UltimoExamen    = hm.UltimoExamen;
                hist.ActividadFisica = hm.ActividadFisica;
                return(hist);
            }
            else
            {
                return(null);
            }
        }
        /**
         * Método público que permite la conexión con la base de datos para modificar datos del expediente
         * @param cedula string
         * @return un parámetro de tipo bool, que indica si se realizo correctamente la accion o no
         */
        public bool ModificarExpediente(TOClienteNutricion clienteModif, TOHistorialMedico histModif, TOHabitoAlimentario habModif, List <TORecordatorio24H> listRecordModif, TOAntropometria antropModif, TOPorciones porcModif, List <TODistribucionPorciones> distrModif)
        {
            string query = "UPDATE Cliente_Nutricion  SET Fecha_Nacimiento = '" + clienteModif.Fecha_Nacimiento.ToString("yyyy-MM-dd") + "', " +
                           "Sexo = '" + clienteModif.Sexo + "', Estado_Civil = '" + clienteModif.Estado_Civil + "'," +
                           " Residencia = '" + clienteModif.Residencia + "', Ocupacion = '" + clienteModif.Ocupacion + "'," +
                           " FechaIngreso = '" + clienteModif.FechaIngreso.ToString("yyyy-MM-dd") + "', Consultorio = '" + clienteModif.Consultorio + "' WHERE Cedula = " + clienteModif.Cedula + "; ";

            string query2 = "UPDATE Historial_Medico SET Antecedentes_Fam = '" + histModif.Antecedentes + "', Patologias = '" + histModif.Patologias + "'," +
                            "Cosumo_Licor = " + histModif.ConsumeLicor + ", Fumador = " + histModif.Fuma + ", FrecFumar = '" + histModif.FrecFuma + "'," +
                            "FrecTomar = '" + histModif.FrecLicor + "', ActividadFisica = '" + histModif.ActividadFisica + "'," +
                            "Fecha_Ult_Exm = '" + histModif.UltimoExamen.ToString("yyyy-MM-dd") + "' WHERE Cedula =" + histModif.Cedula + ";";

            string query3 = "UPDATE HabitosAlimentario SET ComidasDiarias = " + habModif.ComidaDiaria + "," +
                            "Com_Hor_Dias = '" + habModif.ComidaHorasDia + "', Afuera_Express = " + habModif.AfueraExpress + "," +
                            "ComidaFuera = '" + habModif.ComidaFuera + "', AzucarBebida = '" + habModif.AzucarBebida + "'," +
                            "ComidaElaborada_Con = '" + habModif.ComidaElaboradCon + "', VasosAguaDiaria = " + habModif.AguaDiaria + ", " +
                            "Aderezos = '" + habModif.Aderezos + "', Fruta = '" + habModif.Fruta + "', Verdura = '" + habModif.Verdura + "', Leche = '" + habModif.Leche + "', " +
                            "Huevo = '" + habModif.Huevo + "', Yogurt = '" + habModif.Yogurt + "', Carne = '" + habModif.Carne + "', Queso = '" + habModif.Queso + "'," +
                            "Aguacate = '" + habModif.Aguacate + "', Semillas = '" + habModif.Semillas + "' WHERE Cedula = " + habModif.Cedula + ";";

            string query8 = "UPDATE Usuario SET Correo = '" + clienteModif.Correo + "', Nombre = '" + clienteModif.Nombre + "', WhatsApp = '" + clienteModif.WhatsApp + "'," +
                            "Telefono = '" + clienteModif.Telefono + "', Apellido1 = '" + clienteModif.Apellido1 + "', Apellido2 = '" + clienteModif.Apellido2 + "'" +
                            "WHERE Cedula = " + clienteModif.Cedula + "; ";

            SqlCommand cmd  = new SqlCommand(query, conexion);
            SqlCommand cmd2 = new SqlCommand(query2, conexion);
            SqlCommand cmd3 = new SqlCommand(query3, conexion);
            SqlCommand cmd8 = new SqlCommand(query8, conexion);

            try
            {
                if (conexion.State != ConnectionState.Open)
                {
                    conexion.Open();
                }

                cmd.ExecuteNonQuery();
                cmd2.ExecuteNonQuery();
                cmd3.ExecuteNonQuery();
                cmd8.ExecuteNonQuery();
                conexion.Close();

                foreach (TORecordatorio24H R in listRecordModif)
                {
                    string     query4 = "UPDATE Recordat24H SET Hora = '" + R.Hora + "', Descripcion = '" + R.Descripcion + "' WHERE Cedula = " + R.Cedula + " and TiempoComida = '" + R.TiempoComida + "'; ";
                    SqlCommand cmd4   = new SqlCommand(query4, conexion);
                    conexion.Open();
                    cmd4.ExecuteNonQuery();
                    conexion.Close();
                }

                string query5 = "UPDATE Antropometria SET Talla = " + antropModif.Talla + ", " +
                                "PesoIdeal = " + antropModif.PesoIdeal + ", Edad = " + antropModif.Edad + ", " +
                                "PMB = " + antropModif.PMB + ", Peso = " + antropModif.Peso + ", PesoMaxTeoria = " + antropModif.PesoMaxTeoria + ", " +
                                "IMC = " + antropModif.IMC + ", PorcGrasaAnalizador = " + antropModif.PorcGrasaAnalizador + ", " +
                                "PorcGr_Bascula = " + antropModif.PorcGr_Bascula + ", GB_BI = " + antropModif.GB_BI + ", GB_BD = " + antropModif.GB_BD + ", " +
                                "GB_PI = " + antropModif.GB_PI + ", GB_PD = " + antropModif.GB_PD + ", GB_Tronco = " + antropModif.GB_Tronco + ", " +
                                "AguaCorporal = " + antropModif.AguaCorporal + ", MasaOsea = " + antropModif.MasaOsea + ", Complexion = " + antropModif.Complexión + "," +
                                "Edad_Metabolica = " + antropModif.EdadMetabolica + ", Cintura = " + antropModif.Cintura + ", Abdomen = " + antropModif.Abdomen + "," +
                                "Cadera = " + antropModif.Cadera + ", Muslo_Der = " + antropModif.MusloDer + ", Muslo_Izq = " + antropModif.MusloIzq + "," +
                                "CBM = " + antropModif.CBM + ", CircunfMunneca = " + antropModif.CircunfMunneca + ", PorcentGViceral = " + antropModif.PorcentGViceral + "," +
                                "PorcentMusculo = " + antropModif.PorcentMusculo + ", PM_BI = " + antropModif.PM_BI + ", PM_PD = " + antropModif.PM_PD + ", " +
                                "PM_BD = " + antropModif.PM_BD + ", PM_PI = " + antropModif.PM_PI + ", PM_Troco = " + antropModif.PM_Tronco + ", Observaciones = '" + antropModif.Observaciones + "'," +
                                "GEB = " + antropModif.GEB + ", GET = " + antropModif.GET + ", CHOPorc = " + antropModif.CHOPorc + ", CHOGram = " + antropModif.CHOGram + "," +
                                "CHOkcal = " + antropModif.CHO_kcal + ", ProteinaPorc = " + antropModif.ProteinaPorc + ", ProteinaGram = " + antropModif.ProteinaGram + "," +
                                "Proteinakcal = " + antropModif.Proteinakcal + ", GrasaPorc = " + antropModif.GrasaPorc + ", GrasaGram = " + antropModif.GrasaGram + ", " +
                                "Grasakcal = " + antropModif.Grasakcal + " WHERE Cedula = " + antropModif.Cedula + "; ";

                string query6 = "UPDATE  Porciones SET Leche = " + porcModif.Leche + ", Carne = " + porcModif.Carne + ", Vegetales = " + porcModif.Vegetales + "," +
                                "Grasa = " + porcModif.Grasa + ", Fruta = " + porcModif.Fruta + ", Azucar = " + porcModif.Azucar + ", Harina = " + porcModif.Harina + "," +
                                "Suplemento = " + porcModif.Suplemento + " WHERE Cedula = " + porcModif.Cedula + "; ";

                SqlCommand cmd5 = new SqlCommand(query5, conexion);
                SqlCommand cmd6 = new SqlCommand(query6, conexion);
                conexion.Open();
                cmd5.ExecuteNonQuery();
                cmd6.ExecuteNonQuery();
                conexion.Close();

                foreach (TODistribucionPorciones D in distrModif)
                {
                    string     query7 = "UPDATE  DistribucionPorcion SET Hora = '" + D.Hora + "', Descripcion = '" + D.Descripcion + "' WHERE Cedula = " + D.Cedula + " and TiempoComida = '" + D.TiempoComida + "'; ";
                    SqlCommand cmd7   = new SqlCommand(query7, conexion);
                    conexion.Open();
                    cmd7.ExecuteNonQuery();
                    conexion.Close();
                }

                return(true);
            }
            catch (Exception e)
            {
                return(false);
            }
        }