public static int InsertarControl(ControlPagos cat)
        {
            int retorno = 0; // en el caso de que no se inserter el registro retornara cero
            using (SqlConnection con = Conexion.obtenerConexion())
            {
                SqlCommand comando = new SqlCommand(string.Format("Insert into controlPagos(num_factp, cod_proveedor, fecha_entrega, cantidad, total, url_factura) values ('{0}', '{1}', '{2}', '{3}', '{4}', '{5}')", cat.NumFact, cat.CodigoProve, cat.Fecha, cat.Cantidad, cat.Total, cat.UrlFoto), con);
                retorno = comando.ExecuteNonQuery();

                con.Close();
            }
            return retorno;
        }
        public static List<ControlPagos> cargarControlP()
        {
            string numFact;
            string codigoProve;
            string fecha;
            int cantidad;
            decimal total;
            string url;


          
            List<ControlPagos> lista = new List<ControlPagos>();
            using (SqlConnection conexion = Conexion.obtenerConexion())
            {
                SqlCommand comando = new SqlCommand("Select * from controlPagos", conexion);
                SqlDataReader reader = comando.ExecuteReader();
                while (reader.Read())
                {
                    numFact = reader.GetString(0);

                    codigoProve = reader.GetString(1);
                    fecha = reader.GetString(2);
                    cantidad = reader.GetInt32(3);
                    total = reader.GetDecimal(4);
                    url = reader.GetString(5);



                    ControlPagos pro = new ControlPagos(numFact, codigoProve, fecha, cantidad, total, url);
                        lista.Add(pro);
                    

                }
                conexion.Close();
                return lista;

            }
        }
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            string numFact = txtNroFactP.Text;
            string cantidad = txtCantidad.Text;
            string total = txtTotalFact.Text;
            string proveedor = cbProveedor.SelectedValue.ToString();
            DateTime fecha = dateEntrega.Value;
            string fechita = fecha.ToString("d");
            string url = Direccion;
            bool banderaNum = false;
            bool banderaCantidad = false;
            bool banderaTotal = false;
            bool banderaUrl = false;
            pictureProveedor.Image = System.Drawing.Image.FromFile("D:\\ingenieria en sistemas\\Fernando sexto semestre\\Programacion 5\\Programas n c# 6to semestre\\ProyectoProgV\\ProyectoProgV\\Resources\\aprovado.png");
            pictureFecha.Image = System.Drawing.Image.FromFile("D:\\ingenieria en sistemas\\Fernando sexto semestre\\Programacion 5\\Programas n c# 6to semestre\\ProyectoProgV\\ProyectoProgV\\Resources\\aprovado.png");
            if (numFact.Equals(""))
            {
                pictureNumFact.Image = System.Drawing.Image.FromFile("D:\\ingenieria en sistemas\\Fernando sexto semestre\\Programacion 5\\Programas n c# 6to semestre\\ProyectoProgV\\ProyectoProgV\\Resources\\error.png");
            }
            else
            {
                banderaNum = true;
                pictureNumFact.Image = System.Drawing.Image.FromFile("D:\\ingenieria en sistemas\\Fernando sexto semestre\\Programacion 5\\Programas n c# 6to semestre\\ProyectoProgV\\ProyectoProgV\\Resources\\aprovado.png");
            }



            if (cantidad.Equals(""))
            {
                pictureCantidad.Image = System.Drawing.Image.FromFile("D:\\ingenieria en sistemas\\Fernando sexto semestre\\Programacion 5\\Programas n c# 6to semestre\\ProyectoProgV\\ProyectoProgV\\Resources\\error.png");
            }
            else
            {
                banderaCantidad = true;
                pictureCantidad.Image = System.Drawing.Image.FromFile("D:\\ingenieria en sistemas\\Fernando sexto semestre\\Programacion 5\\Programas n c# 6to semestre\\ProyectoProgV\\ProyectoProgV\\Resources\\aprovado.png");
            }


            if (total.Equals(""))
            {
                pictureTotal.Image = System.Drawing.Image.FromFile("D:\\ingenieria en sistemas\\Fernando sexto semestre\\Programacion 5\\Programas n c# 6to semestre\\ProyectoProgV\\ProyectoProgV\\Resources\\error.png");
            }
            else
            {
                banderaTotal = true;
                pictureTotal.Image = System.Drawing.Image.FromFile("D:\\ingenieria en sistemas\\Fernando sexto semestre\\Programacion 5\\Programas n c# 6to semestre\\ProyectoProgV\\ProyectoProgV\\Resources\\aprovado.png");
            }


            if (url.Equals(""))
            {
             //   pictureTotal.Image = System.Drawing.Image.FromFile("D:\\ingenieria en sistemas\\Fernando sexto semestre\\Programacion 5\\Programas n c# 6to semestre\\ProyectoProgV\\ProyectoProgV\\Resources\\error.png");
            }
            else
            {
                banderaUrl = true;
               // pictureTotal.Image = System.Drawing.Image.FromFile("D:\\ingenieria en sistemas\\Fernando sexto semestre\\Programacion 5\\Programas n c# 6to semestre\\ProyectoProgV\\ProyectoProgV\\Resources\\aprovado.png");
            }

            if (banderaNum && banderaCantidad && banderaUrl && banderaTotal)
            {
                int cant = Convert.ToInt32(cantidad);
              //  int num = Convert.ToInt32(numFact);
                decimal t = Convert.ToDecimal(total);
                if (banderaModificar == false)
                {


                    ControlPagos pagos = new ControlPagos(numFact, proveedor, fechita, cant, t, url);
                    int resultado = MetodosBD.InsertarControl(pagos);
                    if (resultado > 0)
                    {

                        MessageBox.Show("Datos guardados correctamente", "Mensaje de confirmación");
                        btnCargarFoto.Enabled = false;
                        pictureBox1.Image = System.Drawing.Image.FromFile("D:\\ingenieria en sistemas\\Fernando sexto semestre\\Programacion 5\\Programas n c# 6to semestre\\ProyectoProgV\\ProyectoProgV\\Resources\\cameraFinal.jpg");
                        pictureNumFact.Image = null;
                        pictureProveedor.Image = null;
                        pictureFecha.Image = null;
                        pictureCantidad.Image = null;
                        pictureTotal.Image = null;

                        txtNroFactP.Text = "";
                        txtCantidad.Text = "";
                        txtTotalFact.Text = "";
                        Direccion = "";
                        txtNroFactP.Enabled = false;
                        cbProveedor.Enabled = false;
                        dateEntrega.Enabled = false;
                        txtCantidad.Enabled = false;
                        txtTotalFact.Enabled = false;
                        btnGuardar.Enabled = false;
                        btnNuevo.Enabled = true;

                    }

                    dataGridView.DataSource = MetodosBD.cargarControlPagos();

                }
                else
                {
                    banderaModificar = false;
                    int resultado = MetodosBD.ActualizarControlP(numFact, proveedor, fechita, cant, t, url);
                         if (resultado > 0)
                         {
                             btnCargarFoto.Enabled = false;
                             pictureBox1.Image = System.Drawing.Image.FromFile("D:\\ingenieria en sistemas\\Fernando sexto semestre\\Programacion 5\\Programas n c# 6to semestre\\ProyectoProgV\\ProyectoProgV\\Resources\\cameraFinal.jpg");
                             pictureNumFact.Image = null;
                             pictureProveedor.Image = null;
                             pictureFecha.Image = null;
                             pictureCantidad.Image = null;
                             pictureTotal.Image = null;

                             txtNroFactP.Text = "";
                             txtCantidad.Text = "";
                             txtTotalFact.Text = "";
                             Direccion = "";
                             txtNroFactP.Enabled = false;
                             cbProveedor.Enabled = false;
                             dateEntrega.Enabled = false;
                             txtCantidad.Enabled = false;
                             txtTotalFact.Enabled = false;
                             btnGuardar.Enabled = false;
                             btnNuevo.Enabled = true;
                             MessageBox.Show("Dato Actualizado Correctamente", "Mensaje de Confirmación");
                             dataGridView.DataSource = MetodosBD.cargarControlPagos();
                         }
                         else
                         {
                             MessageBox.Show("Dato no actualizado", "Mensaje de advertencia");
                         }
                }



            }
            else
            {
                MessageBox.Show("Algún campo esta erróneo o vacío", "Mensaje de Advertencia");
            }



        
        }