示例#1
0
        public Reserva(decimal valor, int duracaoReservaEmDias, Pacote pacote, Festa festa, Usuario usuario, Cliente cliente, Opcional opcional)
        {
            DateTime hoje = DateTime.UtcNow;

            Id          = 0;
            Valor       = valor;
            DataLocacao = hoje;
            if (duracaoReservaEmDias > 0)
            {
                DataDevolucao_Prevista = hoje.AddDays(duracaoReservaEmDias);
            }
            else
            {
                DataDevolucao_Prevista = new DateTime(1000, 01, 01);
            }
            Pacote  = pacote;
            Festa   = festa;
            Usuario = usuario;
            Cliente = cliente;

            if (opcional != null)
            {
                bool reservado = opcional.ReservarOpcional();
                if (reservado)
                {
                    Opcional = opcional;
                }
            }

            Mensagens = new List <string>();
        }
示例#2
0
 public bool Devolver()
 {
     if (DataDevolucao_Real == null)
     {
         DataDevolucao_Real = DateTime.UtcNow;
         if (DataDevolucao_Real > DataDevolucao_Prevista)
         {
             decimal multa = CalcularMulta();
             Valor = Valor + multa;
         }
         if (Opcional != null)
         {
             Opcional.DevolverOpcional();
         }
         return(true);
     }
     return(false);
 }