Ejemplo n.º 1
0
        public DateTime?RecuperarDataExpiracao(LicencaTipo licencaTipo)
        {
            DateTime?result;

            switch (licencaTipo)
            {
            case LicencaTipo.DoisDias:
                result = DateTime.UtcNow.AddDays(2);
                break;

            case LicencaTipo.Vitalicio:
                result = null;
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }

            return(result);
        }
Ejemplo n.º 2
0
        private decimal CalcularPreco(ClienteStatus status, DateTime?dataExpiracaoStatus, LicencaTipo licencaTipo)
        {
            decimal valor;

            switch (licencaTipo)
            {
            case LicencaTipo.DoisDias:
                valor = 4;
                break;

            case LicencaTipo.Vitalicio:
                valor = 8;
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }

            if (status == ClienteStatus.Avancado && (dataExpiracaoStatus == null || dataExpiracaoStatus.Value >= DateTime.UtcNow))
            {
                valor = valor * 0.75m;
            }

            return(valor);
        }