Exemplo n.º 1
0
        public static bool Consultar(ref Venta venta)
        {
            try
            {
                MySqlConnection conn = ConexionBaseDeDatos.ConseguirConexion();

                ConsultaBuilder consultaBuilder = new ConsultaBuilder("ventas v");
                consultaBuilder.AgregarCampo("v.*, d.*, p.ID, p.NOMBRE");
                consultaBuilder.AgregarJoin("INNER JOIN ventasdetalles d ON d.IDVENTA = v.ID");
                consultaBuilder.AgregarJoin("INNER JOIN productos p ON p.ID = d.IDPRODUCTO");
                consultaBuilder.AgregarCriterio("v.ID=@ID");

                Venta ventaConsulta = null;

                venta = conn.Query <Venta, VentaDetalle, Producto, Venta>(consultaBuilder.ToString(),
                                                                          (ventasel, detalle, Producto) => {
                    if (ventaConsulta == null)
                    {
                        ventaConsulta          = ventasel;
                        ventaConsulta.Detalles = new List <VentaDetalle>();
                    }
                    detalle.Producto = Producto;
                    ventaConsulta.Detalles.Add(detalle);
                    return(ventaConsulta);
                }, new { ID = venta.Id }).FirstOrDefault();
            }
            catch (Exception ex)
            {
                ConexionBaseDeDatos.Error = ex.Message;
                return(false);
            }
            return(true);
        }
Exemplo n.º 2
0
        public static bool Consultar(ref Compra compra)
        {
            try
            {
                MySqlConnection conn = ConexionBaseDeDatos.ConseguirConexion();

                ConsultaBuilder consultaBuilder = new ConsultaBuilder("compras c");
                consultaBuilder.AgregarCampo("c.*, d.*");
                consultaBuilder.AgregarJoin("INNER JOIN comprasdetalles d ON d.IDCOMPRA = c.ID");
                consultaBuilder.AgregarCriterio("c.ID=@ID");

                Compra compraConsulta = null;

                compra = conn.Query <Compra, CompraDetalle, Compra>(consultaBuilder.ToString(),
                                                                    (comprasel, detalle) => {
                    if (compraConsulta == null)
                    {
                        compraConsulta          = comprasel;
                        compraConsulta.Detalles = new List <CompraDetalle>();
                    }
                    compraConsulta.Detalles.Add(detalle);
                    return(compraConsulta);
                }, new { ID = compra.Id }).FirstOrDefault();
            }
            catch (Exception ex)
            {
                ConexionBaseDeDatos.Error = ex.Message;
                return(false);
            }
            return(true);
        }
Exemplo n.º 3
0
 public static bool ValidarExistencia(long id, int cantidad)
 {
     try
     {
         MySqlConnection conn            = ConexionBaseDeDatos.ConseguirConexion();
         ConsultaBuilder consultaBuilder = new ConsultaBuilder("productos");
         consultaBuilder.AgregarCampo("(CANTIDAD - @CANTIDAD) AS CANTIDAD");
         consultaBuilder.AgregarCriterio("ID=@ID");
         int cant = Convert.ToInt32(conn.ExecuteScalar(consultaBuilder.ToString(), new { ID = id, CANTIDAD = cantidad }));
         if (cant < 0)
         {
             return(false);
         }
     }
     catch (Exception ex)
     {
         ConexionBaseDeDatos.Error = ex.Message;
         return(false);
     }
     return(true);
 }
Exemplo n.º 4
0
        public static bool RestarInventario(long id, int cantidad)
        {
            try
            {
                MySqlConnection conn            = ConexionBaseDeDatos.ConseguirConexion();
                ConsultaBuilder consultaBuilder = new ConsultaBuilder("productos");
                consultaBuilder.AgregarCampo("CANTIDAD");
                consultaBuilder.AgregarCriterio("ID=@ID");

                string sql = "UPDATE productos SET CANTIDAD=@CANTIDAD WHERE ID=@ID";

                int cantidadActual = (int)conn.ExecuteScalar(consultaBuilder.ToString(), new { ID = id });

                conn.Execute(sql, new { ID = id, CANTIDAD = cantidadActual - cantidad });
            }
            catch (Exception ex)
            {
                ConexionBaseDeDatos.Error = ex.Message;
                return(false);
            }
            return(true);
        }