public boolean eliminarEncomienda(Encomienda enc) { if (abierto) { encomiendas.remove(enc); this.peso -= enc.getPeso(); this.volumen -= enc.getVol(); this.costoEnvio -= enc.getCostoEnvio(); setPrioridad(); return true; } else return false; }
public boolean agregarEnc(Encomienda encomienda) { if (abierto) { encomiendas.add(encomienda); this.peso += encomienda.getPeso(); this.volumen += encomienda.getVol(); this.costoEnvio += encomienda.getCostoEnvio(); setPrioridad(); return true; } else return false; }
// agregar una encomienda a un pedido con prioridad por orden de llegada // true si se logra agregar (si esta aun abierto el pedido) y false de lo contrario) public boolean agregarEnc(int peso, int volumen, String dirDestino, String desc) { if (abierto) { Empresa.nuevaEncomienda(); double prioridad = 1 / (Empresa.getNroEncomiendas()); Encomienda e = new Encomienda(peso, volumen, prioridad, dirDestino, desc); encomiendas.add(e); this.peso += peso; this.volumen += volumen; this.costoEnvio += e.getCostoEnvio(); setPrioridad(); return true; } else { return false; } }
// asignar encomienda con prioridadAgregada indicada por el cliente // true si se logra agregar (si esta aun abierto el pedido) y false de lo contrario) public boolean agregarEnc( int peso, int volumen, int prioridadAgregada, String dirDestino, String desc) { if (abierto) { double prioridadPorDefecto; if (Empresa.getNroEncomiendas() == 0) prioridadPorDefecto = 1; else prioridadPorDefecto = 1 / (Empresa.getNroEncomiendas()); double prioridadAsignada = prioridadPorDefecto + prioridadAgregada; Encomienda e = new Encomienda(peso, volumen, prioridadAsignada, dirDestino, desc); e.agregarCostoPrioridad(prioridadAgregada); encomiendas.add(e); this.peso += peso; this.volumen += volumen; this.costoEnvio += e.getCostoEnvio(); setPrioridad(); return true; } else { return false; } }