public decimal GetGastosFijosPorIrA(Ciudad ciudad) { var gtoskm = (ciudad.Kilometros * gtosPorKm); var depreciacionPorCada100Km = (GetValorBrutoProductosEn(ciudad) * 1 / 100); var depreciacionTotal = depreciacionPorCada100Km * (ciudad.Kilometros / 100); return gtosCargarFurgoneta + gtoskm + depreciacionTotal; }
public void AddPrecio(Ciudad ciudad, Producto producto, int precio) { if (!listaProductos.Exists(x => x.Equals(producto))) { NuevoProducto(producto); } if (!listaCiudades.Exists(x => x.Equals(ciudad))) { NuevaCiudad(ciudad); } SetPrecio(ciudad, producto, precio); }
public int GetPrecio(Ciudad ciudad, Producto producto) { return(listaPreciosKg[ciudad][producto]); }
public decimal GetValorNetoProductosEn(Ciudad ciudad) { return(GetValorBrutoProductosEn(ciudad) - GetGastosFijosPorIrA(ciudad)); }
private void NuevaCiudad(Ciudad ciudad) { listaCiudades.Add(ciudad); }
public Dictionary<Producto, int> GetPreciosCiudad(Ciudad ciudad) { if (listaPreciosKg.ContainsKey(ciudad)) { return listaPreciosKg[ciudad]; } else { return new Dictionary<Producto, int>(); } }
public int GetPrecio(Ciudad ciudad, Producto producto) { return listaPreciosKg[ciudad][producto]; }
private void SetPrecio(Ciudad ciudad, Producto producto, int precio) { if (listaPreciosKg.ContainsKey(ciudad)) { if (listaPreciosKg[ciudad].ContainsKey(producto)) { listaPreciosKg[ciudad][producto] = precio; } else { listaPreciosKg[ciudad].Add(producto, precio); } } else { listaPreciosKg.Add(ciudad, new Dictionary<Producto,int>() { {producto, precio} }); } }
public decimal GetValorNetoProductosEn(Ciudad ciudad) { return GetValorBrutoProductosEn(ciudad) - GetGastosFijosPorIrA(ciudad); }
public int GetValorBrutoProductosEn(Ciudad ciudad) { int result = 0; if (listaPreciosKg.ContainsKey(ciudad)) { result += listaPreciosKg[ciudad].Sum(x => x.Value * x.Key.Kilos); } else { result = 0; } return result; }