public bool EfetuarReserva(long codveiculo, long codcliente, DateTime dataretirada, DateTime dataentrega, string tiporetirada, string formapagamento, string valorpedido, string nomeuser)
        {
            bool resultado = false;

            try {
                Usuario usuario = new UsuarioService().BuscaNome(nomeuser);
                if (codveiculo != 0 && codcliente != 0 && dataretirada != null && dataentrega != null && tiporetirada != "" && formapagamento != "" && valorpedido != "" && usuario.CodigoUsuario != 0)
                {
                    Reserva reserva = new Reserva();

                    reserva.CodigoCliente = codcliente;
                    reserva.CodigoVeiculo = codveiculo;
                    reserva.CodigoUsuario = usuario.CodigoUsuario;
                    string dataentr    = dataentrega.Date.ToString("yyyy-MM-dd HH-mm-ss");
                    string dataret     = dataretirada.Date.ToString("yyyy-MM-dd HH-mm-ss");
                    string datareserva = DateTime.Now.Date.ToString("yyyy-MM-dd HH-mm-ss");
                    reserva.DataEntrega    = dataentr;
                    reserva.DataRetirada   = dataret;
                    reserva.TipoRetirada   = tiporetirada;
                    reserva.Status         = 1;
                    reserva.FormaPagamento = formapagamento;
                    reserva.ValorLocacao   = Decimal.Parse(valorpedido);
                    reserva.DataReserva    = datareserva;
                    reserva.Situacao       = "Reserva";

                    reservaDAO.Inserir(reserva);
                    resultado = true;
                }
            }
            catch (Exception ex)
            {
                return(resultado);
            }
            return(resultado);
        }
Exemplo n.º 2
0
        public bool EfetuarReserva(long codveiculo, long codcliente, DateTime dataretirada, DateTime dataentrega, string tiporetirada, string formapagamento, string valorpedido, Usuario usuario)
        {
            bool resultado = false;

            using (TransactionScope transaction = new TransactionScope())
            {
                try
                {
                    if (codveiculo != 0 && codcliente != 0 && dataretirada != null && dataentrega != null && tiporetirada != "" && formapagamento != "" && Decimal.Parse(valorpedido) != 0 && usuario.CodigoUsuario != 0)
                    {
                        Reserva reserva = new Reserva();
                        Veiculo veiculo = new VeiculoDAO().Buscar(codveiculo);
                        veiculo.CodigoVeiculo = codveiculo;
                        veiculo.Status        = 2;
                        new VeiculoDAO().Atualizar(veiculo);

                        reserva.CodigoCliente  = codcliente;
                        reserva.CodigoVeiculo  = codveiculo;
                        reserva.CodigoUsuario  = usuario.CodigoUsuario;
                        reserva.DataEntrega    = dataentrega.ToString();;
                        reserva.DataRetirada   = dataretirada.ToString();;
                        reserva.TipoRetirada   = tiporetirada;
                        reserva.Status         = 2;
                        reserva.FormaPagamento = formapagamento;
                        reserva.ValorLocacao   = Decimal.Parse(valorpedido);
                        reserva.DataReserva    = DateTime.Now.ToString();
                        reserva.Situacao       = "Reserva";

                        reservaDAO.Inserir(reserva);
                        resultado = true;
                        transaction.Complete();
                    }
                }
                catch (Exception ex)
                {
                }
                return(resultado);
            }
        }
        public string Cadastro(Reserva r)
        {
            List <string> erros = new List <string>();

            #region ID Cliente
            if (r.IdCliente <= 0)
            {
                erros.Add("ID do Cliente inválido.");
            }
            else
            {
                if (!new ClienteDAO().LerPorID(r.IdCliente).Sucesso)
                {
                    erros.Add("Cliente inexistente");
                }
            }
            #endregion

            #region Data Entrada
            if (r.dataEntrada < DateTime.Today)
            {
                erros.Add("Data de entrada inválida.");
            }
            else if (r.dataEntrada > r.dataSaidaPrevista)
            {
                erros.Add("Data de entrada não pode ser maior que a data prevista de saida.");
            }
            #endregion

            #region Saida Prevista
            if (r.dataSaidaPrevista <= r.dataEntrada)
            {
                erros.Add("Data prevista de saida não pode ser menor do que a data de entrada.");
            }
            #endregion

            #region ID Funcionario
            if (r.IdFuncionario <= 0)
            {
                erros.Add("ID do Funcionário inválido.");
            }
            else
            {
                if (!new FuncionarioDAO().LerPorID(r.IdFuncionario).Sucesso)
                {
                    erros.Add("Funcionário inexistente.");
                }
            }
            #endregion

            #region ID Quarto
            if (r.IdQuarto <= 0)
            {
                erros.Add("ID Quarto inválido");
            }
            else
            {
                if (!new QuartoDAO().LerPorID(r.IdQuarto).Sucesso)
                {
                    erros.Add("ID Quarto Inválido.");
                }
            }
            #endregion

            StringBuilder sb = new StringBuilder();
            if (erros.Count != 0)
            {
                for (int i = 0; i < erros.Count; i++)
                {
                    sb.AppendLine(erros[i]);
                }
                return(sb.ToString());
            }

            return(dao.Inserir(r).Mensagem);
        }