Ejemplo n.º 1
0
 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);
 }
Ejemplo n.º 2
0
 public int GetPrecio(Ciudad ciudad, Producto producto)
 {
     return listaPreciosKg[ciudad][producto];
 }
Ejemplo n.º 3
0
 private void NuevoProducto(Producto producto)
 {
     if (CargaActual() + producto.Kilos <= capacidadFurgoneta) {
         listaProductos.Add(producto);
     } else {
         throw new Exception("La carga actual: " + Convert.ToString(CargaActual()) +
                             " + la carga del nuevo producto: " + Convert.ToString(producto.Kilos) +
                             " sobrepasaria la carga permitida de " + capacidadFurgoneta.ToString());
     }
 }
Ejemplo n.º 4
0
 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} });
     }
 }
Ejemplo n.º 5
0
        public Dictionary<Ciudad, int> GetPreciosProducto(Producto producto)
        {
            var temp = new Dictionary<Ciudad, int>();

            foreach (Ciudad c in listaPreciosKg.Keys) {
                foreach (Producto p in listaPreciosKg[c].Keys) {
                    if (p.Equals(producto)) {
                        temp.Add(c, listaPreciosKg[c][p]);
                    }
                }
            }
            return temp;
        }