Exemplo n.º 1
0
        public ICalcularTiempos CrearInstancia(int iTipoInstancia)
        {
            ICalcularTiempos calcularTiempos = null;

            switch (iTipoInstancia)
            {
            case 1:
                calcularTiempos = new CalculadorMes();
                break;

            case 2:
                calcularTiempos = new CalculadorDias();
                break;

            case 3:
                calcularTiempos = new CalculadorHoras();
                break;

            case 4:
                calcularTiempos = new CalculadorMinutos();
                break;
            }

            return(calcularTiempos);
        }
        private ICalcularTiempos ObtenerTipoDeTiempoDeEvento(TimeSpan dtCompararTiempo)
        {
            int TipoCalculadorTiempo = DeterminarTipoInstancia(dtCompararTiempo);

            ICalcularTiempos CalculadorTiempo = _creadorInstancia.CrearInstancia(TipoCalculadorTiempo);

            return(CalculadorTiempo);
        }
        private string CrearMensajeEvento(EventosEntidad oEvento)
        {
            TimeSpan dtCompararTiempo = oEvento.dtTiempoEvento.Subtract(Obtenerfecha());
            int      tiempo           = dtCompararTiempo.Days;

            string cTipoMensaje = tiempo >= 0 && dtCompararTiempo.Hours > 0 ? "ocurrirá dentro de" : "ocurrió hace";

            ICalcularTiempos CalculadorTiempo = ObtenerTipoDeTiempoDeEvento(dtCompararTiempo);

            string cMensaje = $"{oEvento.cNombreEvento} {cTipoMensaje} {CalculadorTiempo.CalcularTiempo(dtCompararTiempo)}";

            return(cMensaje);
        }