public static decimal Ganancias(List <int> ventasIds) { decimal ganancia = 0; try { if (ventasIds is null || ventasIds.Count == 0) { ventasIds = idsVentas; } if (ventasIds.Count > 0 && listVentas.Count > 0) { clsManejador M = new clsManejador(); foreach (var id in ventasIds) { string cadSql = $"select Sum(GananciaVenta) as ganancia from DetalleVenta where DetalleVenta.IdVenta ={id} group by DetalleVenta.IdVenta"; SqlCommand comando = new SqlCommand(cadSql, M.conexion); M.Conectar(); SqlDataReader leer = comando.ExecuteReader(); if (leer.Read() == true) { var monto = Convert.ToDecimal(leer["ganancia"]) > 0 ? Convert.ToDecimal(leer["ganancia"]) : 0; ganancia += monto; } M.Desconectar(); } } return(ganancia); } catch (Exception ex) { ex.Message.ToString(); } return(ganancia); }
public static List <VentasPorCategoria> ListaPorCatergoria(DateTime fecha1, DateTime fecha2, int borrador) { var listVentCateg = new List <VentasPorCategoria>(); clsManejador M = new clsManejador(); try { string sql = "SELECT Categoria.Descripcion AS CategoryOfProducts,sum(DetalleVenta.Cantidad) AS CantidadOfProducts,sum(DetalleVenta.SubTotal) AS PrecioOfProducts" + " FROM DetalleVenta INNER JOIN Producto ON DetalleVenta.IdProducto = Producto.IdProducto INNER JOIN Categoria ON Producto.IdCategoria = Categoria.IdCategoria " + "INNER JOIN Venta ON DetalleVenta.IdVenta = Venta.IdVenta where venta.FechaVenta BETWEEN convert(datetime, CONVERT(varchar(10),@fecha1, 103), 103) AND " + "convert(datetime, CONVERT(varchar(10),@fecha2, 103), 103) and dbo.Venta.borrado=" + borrador + "group by Categoria.Descripcion ORDER BY sum(DetalleVenta.Cantidad) DESC"; SqlCommand cmd1 = new SqlCommand(sql, M.conexion); cmd1.Parameters.AddWithValue("@fecha1", fecha1); cmd1.Parameters.AddWithValue("@fecha2", fecha2); DataTable dtPC = new DataTable(); SqlDataAdapter da = new SqlDataAdapter(cmd1); da.Fill(dtPC); foreach (DataRow reader in dtPC.Rows) { VentasPorCategoria ventaPC = new VentasPorCategoria(); ventaPC.PrecioOfProducts = reader["PrecioOfProducts"] == DBNull.Value ? 0 : Convert.ToDecimal(reader["PrecioOfProducts"]); ventaPC.CantidadOfProducts = reader["CantidadOfProducts"] == DBNull.Value ? 0 : Convert.ToDecimal(reader["CantidadOfProducts"]); ventaPC.CategoryOfProducts = reader["CategoryOfProducts"] == DBNull.Value ? string.Empty : reader["CategoryOfProducts"].ToString(); listVentCateg.Add(ventaPC); } } catch (Exception ex) { ex.Message.ToString(); } return(listVentCateg); }