/// <summary>
        /// Construtor de agendamento
        /// </summary>
        /// <param name="placa"></param>
        /// <param name="valorHora"></param>
        /// <param name="totalHoras"></param>
        /// <param name="valorTotal"></param>
        /// <param name="categoria"></param>
        /// <param name="codigoReserva"></param>
        public Agendamento(string placa, double valorHora, double totalHoras, double valorTotal, ECategoriaVeiculo categoria, string codigoReserva)
        {
            Placa             = placa;
            ValorHoraVeiculo  = valorHora;
            TotalHoras        = totalHoras;
            ValorTotalAluguel = valorTotal;
            CategoriaVeiculo  = categoria;
            CodigoReserva     = codigoReserva;
            DataCriacao       = DateTime.UtcNow;

            AddNotifications(new Contract()
                             .Requires()
                             .IsNotNull(placa, nameof(placa), "Placa não pode ser nula ou vazia"));
        }
Example #2
0
        /// <summary>
        /// Construtor de veiculo
        /// </summary>
        /// <param name="placa"></param>
        /// <param name="marca"></param>
        /// <param name="modelo"></param>
        /// <param name="ano"></param>
        /// <param name="valorHora"></param>
        /// <param name="combustivel"></param>
        /// <param name="limitePortaMalas"></param>
        /// <param name="categoria"></param>
        public Veiculo(string placa, string marca, string modelo, int ano, double valorHora, ETipoCombustivel combustivel, double limitePortaMalas, ECategoriaVeiculo categoria)
        {
            Placa            = placa;
            CodigoMarca      = marca;
            CodigoModelo     = modelo;
            Ano              = ano;
            ValorHora        = valorHora;
            Combustivel      = combustivel;
            LimitePortaMalas = limitePortaMalas;
            Categoria        = categoria;
            DataCriacao      = DateTime.UtcNow;

            AddNotifications(new Contract()
                             .Requires()
                             .IsNotNullOrEmpty(Placa, nameof(Placa), "Placa não pode ser nula ou vazia")
                             .IsNotNull(ValorHora, nameof(ValorHora), "ValorHora não pode ser nulo")
                             .IsGreaterThan(ValorHora, 0, nameof(ValorHora), "ValorHora deve ser maior do que zero")
                             .IsNotNullOrEmpty(CodigoMarca, nameof(CodigoMarca), "Marca não pode ser nula ou vazia")
                             .IsNotNullOrEmpty(CodigoModelo, nameof(CodigoModelo), "Modelo não pode ser nulo ou vazio")
                             .IsNotNull(Categoria, nameof(Categoria), "Categoria não pode ser nula"));
        }