public decimal ObtenerTiempoEntrega(decimal _dDistancia, EnumMedioTransporte _enumMedioTransporte) { decimal dTiempoTraslado = tiempoTraslado.ObtenerTiempoTraslado(_dDistancia); decimal dTiempoReparto = tiempoReparto.ObtenerTiempoReparto(_enumMedioTransporte); return(dTiempoTraslado + dTiempoReparto); }
public ICostoEnvio CrearInstancia(EnumMedioTransporte _enumMedioTransporte, string _cIdentificadorEmpresa) { ICostoEnvio costoEnvio = null; switch (_enumMedioTransporte) { case EnumMedioTransporte.Maritimo: break; case EnumMedioTransporte.Terrestre: break; case EnumMedioTransporte.Aereo: costoEnvio = ObtenerInstanciaCostoEnvioAereo(_cIdentificadorEmpresa); break; } return(costoEnvio); }
//private readonly IContainer container; //public TiempoTrasladoFactory(IContainer _container) //{ // container = _container ?? throw new ArgumentNullException(nameof(_container)); //} public ITiempoTraslado CrearInstancia(EnumMedioTransporte _enumMedioTransporte) { ITiempoTraslado tiempoTraslado = null; switch (_enumMedioTransporte) { case EnumMedioTransporte.Maritimo: break; case EnumMedioTransporte.Terrestre: break; case EnumMedioTransporte.Aereo: IEscalaPorKM escalaPorKM = new EscalaPorKMAereo(); ITiempoExtraTraslado tiempoExtraTraslado = new TiempoExtraTrasladoAereo(escalaPorKM); IVelocidadEntregaTransporte velocidadEntregaTransporte = new VelocidadEntregaTransporte(); tiempoTraslado = new TiempoTrasladoAereo(tiempoExtraTraslado, velocidadEntregaTransporte); break; } return(tiempoTraslado); }
public decimal ObtenerVelocidadEntregaTransporte(EnumMedioTransporte _enumMedioTransporte) { decimal dVelocidadEntrega; switch (_enumMedioTransporte) { case EnumMedioTransporte.Maritimo: dVelocidadEntrega = dTiempoMaritimo; break; case EnumMedioTransporte.Terrestre: dVelocidadEntrega = dTiempoTerrestre; break; case EnumMedioTransporte.Aereo: dVelocidadEntrega = dTiempoAereo; break; default: dVelocidadEntrega = decimal.Zero; break; } return(dVelocidadEntrega); }
private decimal dTiempoAereo = 180M; //3 horas public decimal ObtenerTiempoReparto(EnumMedioTransporte _enumMedioTransporte) { decimal dTiempoReparto; switch (_enumMedioTransporte) { case EnumMedioTransporte.Maritimo: dTiempoReparto = dTiempoMaritimo; break; case EnumMedioTransporte.Terrestre: dTiempoReparto = dTiempoTerrestre; break; case EnumMedioTransporte.Aereo: dTiempoReparto = dTiempoAereo; break; default: dTiempoReparto = decimal.Zero; break; } return(dTiempoReparto); }