public Tbusuariocartao IncluirCartaoUsuario(DTOs.CartaoUsuario cartao) { try { using (HSContext hs = new HSContext()) { var idusuario = this.Decrypt(cartao.idusuariocripto); Tbusuariocartao cartaoInserir = new Tbusuariocartao() { Cvv = cartao.cvv, Datavencimento = cartao.datavencimento, Numerocartao = cartao.numerocartao, Idusuario = Int32.Parse(idusuario), Nomecartao = cartao.nomecartao }; hs.Tbusuariocartao.Add(cartaoInserir); hs.SaveChanges(); return(cartaoInserir); } } catch (Exception ex) { erros.Add("O quarto não foi adicionado."); erros.Add(ex.Message); return(null); } }
public bool CancelarReserva(DTOs.Reserva reserva) { List <DTOs.produtosReserva> produtos = reserva.produtos; try { using (HSContext hs = new HSContext()) { var cancelar = hs.Tbreserva.First(x => x.Idreserva == reserva.idreserva); cancelar.Datacancelamento = DateTime.Now; cancelar.Motivocancelamento = reserva.motivocancelamento; hs.SaveChanges(); return(true); } } catch (Exception ex) { erros.Add("Reserva não foi cancelada."); erros.Add(ex.Message); if (ex.InnerException != null) { erros.Add(ex.InnerException.Message); } return(false); } }
public bool IncluirUsuario(DTOs.Usuario usuario) { try { byte[] theBytes = Encoding.ASCII.GetBytes(usuario.senha); using (HSContext hs = new HSContext()) { Tbusuario UsuarioAdd = new Tbusuario(); UsuarioAdd.Cpf = usuario.cpf; UsuarioAdd.Datanascimento = DateTime.Parse(usuario.datanascimento); UsuarioAdd.Email = usuario.email; UsuarioAdd.Loginusuario = usuario.loginusuario; UsuarioAdd.Nomeusuario = usuario.nomeusuario; UsuarioAdd.Senha = theBytes; hs.Tbusuario.Add(UsuarioAdd); hs.SaveChanges(); } } catch (Exception ex) { erros.Add("O quarto não foi adicionado."); erros.Add(ex.Message); return(false); } return(true); }
public bool FinalizarReserva(DTOs.Reserva reserva) { List <DTOs.produtosReserva> produtos = reserva.produtos; try { using (HSContext hs = new HSContext()) { var finalizar = hs.Tbreserva.First(x => x.Idreserva == reserva.idreserva); var valorcheckout = hs.Tbprodutoreserva.Where(x => x.Idreserva == reserva.idreserva).Sum(x => x.Valor * x.Quantidade); var valorpagamento = hs.Tbpagamento.Where(x => x.Idreserva == reserva.idreserva).Sum(x => x.Valor); var totalPagamentoComCheckout = valorcheckout + valorpagamento; if (finalizar.Checkout == false) { erros.Add("Não foi possível finalizar a reserva."); erros.Add("O checkout dessa reserva ainda não foi realizado."); } else { if (valorpagamento == 0) { erros.Add("Não foi possível finalizar a reserva."); erros.Add("Não foi identificado nenhum pagamento para a reserva."); } else { if ((finalizar.Valor + valorcheckout) > valorpagamento) { erros.Add("Não foi possível finalizar a reserva."); erros.Add("O pagamento da reserva não bateu com o total da reserva, verifique novamente o pagamento dessa reserva."); } else { finalizar.Datafinalizacao = DateTime.Now; hs.SaveChanges(); } } } return(true); } } catch (Exception ex) { erros.Add("Reserva não finalizada."); erros.Add(ex.Message); if (ex.InnerException != null) { erros.Add(ex.InnerException.Message); } return(false); } }
public bool RemoverPagamento(int idpagamento) { try { using (HSContext hs = new HSContext()) { var pagamento = hs.Tbpagamento.First(x => x.Idpagamento == idpagamento); hs.Tbpagamento.Remove(pagamento); hs.SaveChanges(); return(true); } } catch (Exception ex) { erros.Add("A exclusão do pagamento não foi realiada."); erros.Add(ex.Message); return(false); } }
public bool CheckOut(int idreserva) { try { using (HSContext hs = new HSContext()) { var reserva = hs.Tbreserva.First(x => x.Idreserva == idreserva); reserva.Checkout = true; hs.SaveChanges(); return(true); } } catch (Exception ex) { erros.Add("O checkout não foi realizado."); erros.Add(ex.Message); return(false); } }
public bool IncluirCliente(DTOs.Cliente cliente) { try { using (HSContext hs = new HSContext()) { var existe = hs.Tbcliente.FirstOrDefault(x => x.Cpf == cliente.cpf.Replace(".", "").Replace("-", "")); if (existe == null) { var data = DateTime.Parse(cliente.datanascimento); Tbcliente clienteAdd = new Tbcliente(); clienteAdd.Nomecliente = cliente.nomeCliente.ToUpper(); clienteAdd.Cpf = cliente.cpf.Replace(".", "").Replace("-", ""); clienteAdd.Cep = cliente.cep.Replace("-", ""); clienteAdd.Complemento = cliente.complemento.ToUpper(); clienteAdd.Datanascimento = DateTime.Parse(cliente.datanascimento); clienteAdd.Email = cliente.email.ToUpper(); clienteAdd.Numero = cliente.numero.ToUpper(); clienteAdd.Rgcliente = cliente.rgcliente.ToUpper(); clienteAdd.Telefonecelular = cliente.telefonecelular.Replace("-", "").Replace("(", "").Replace(")", ""); clienteAdd.Telefonefixo = cliente.telefonefixo.Replace("-", "").Replace("(", "").Replace(")", ""); hs.Tbcliente.Add(clienteAdd); hs.SaveChanges(); } else { erros.Add("O cliente não foi adicionado."); erros.Add("Já existe um cliente cadastrado para o CPF digitado."); } } } catch (Exception ex) { erros.Add("O cliente não foi adicionado."); erros.Add(ex.Message); if (ex.InnerException != null) { inner.Add(ex.InnerException.Message); } return(false); } return(true); }
public bool AlterarQuarto(DTOs.Quarto quarto) { try { using (HSContext hs = new HSContext()) { var quartoAlterar = hs.Tbquarto.First(x => x.Idquarto == quarto.idquarto); quartoAlterar.Quarto = quarto.quarto.ToUpper(); quartoAlterar.Idtipoquarto = quarto.idtipoquarto; hs.SaveChanges(); } } catch (Exception ex) { erros.Add("O quarto não foi alterado."); erros.Add(ex.Message); return(false); } return(true); }
public bool AlterarProduto(DTOs.Produto produto) { try { using (HSContext hs = new HSContext()) { var produtoAlterar = hs.Tbproduto.First(x => x.Idproduto == produto.idProduto); produtoAlterar.Descricao = produto.descricao.ToUpper(); produtoAlterar.Valor = Decimal.Parse(produto.valor); hs.SaveChanges(); } } catch (Exception ex) { erros.Add("O produto não foi alterado."); erros.Add(ex.Message); return(false); } return(true); }
public bool IncluirProduto(DTOs.Produto produto) { try { using (HSContext hs = new HSContext()) { Tbproduto produtoAdd = new Tbproduto(); produtoAdd.Descricao = produto.descricao.ToUpper(); produtoAdd.Valor = decimal.Parse(produto.valor); hs.Tbproduto.Add(produtoAdd); hs.SaveChanges(); } } catch (Exception ex) { erros.Add("O produto não foi adicionado."); erros.Add(ex.Message); return(false); } return(true); }
public bool RealizarPagamento(DTOs.Pagamento pagamento) { try { using (HSContext hs = new HSContext()) { var reserva = hs.Tbreserva.First(x => x.Idreserva == pagamento.idreserva); var totalPagamentos = hs.Tbpagamento.Where(x => x.Idreserva == pagamento.idreserva).Sum(x => x.Valor); var totalDividaCheckout = hs.Tbprodutoreserva.Where(x => x.Idreserva == pagamento.idreserva).Sum(x => x.Valor * x.Quantidade); var totalPagamentoComCheckout = reserva.Valor + totalDividaCheckout; if (totalPagamentos + decimal.Parse(pagamento.valor) > totalPagamentoComCheckout) { erros.Add("Não pode ser adicionado esse pagamento, porque o valor fica superior ao devido pelo cliente."); return(false); } else { Tbpagamento pagamentoAdd = new Tbpagamento(); pagamentoAdd.Idreserva = pagamento.idreserva; pagamentoAdd.Datapagamento = DateTime.Now; pagamentoAdd.Valor = Decimal.Parse(pagamento.valor); pagamentoAdd.Chavepagamento = pagamento.chavepagamento; pagamentoAdd.Idtipopagamento = pagamento.idtipopagamento; hs.Tbpagamento.Add(pagamentoAdd); hs.SaveChanges(); return(true); } } } catch (Exception ex) { erros.Add("O pagamento não foi inserido."); erros.Add(ex.Message); return(false); } }
public bool IncluirQuarto(DTOs.Quarto quarto) { try { using (HSContext hs = new HSContext()) { Tbquarto quartoAdd = new Tbquarto(); quartoAdd.Quarto = quarto.quarto.ToUpper(); quartoAdd.Status = 1; quartoAdd.Idtipoquarto = quarto.idtipoquarto; hs.Tbquarto.Add(quartoAdd); hs.SaveChanges(); } } catch (Exception ex) { erros.Add("O quarto não foi adicionado."); erros.Add(ex.Message); return(false); } return(true); }
public bool AdicionarProdutosReservaCheckout(DTOs.Reserva reserva) { List <DTOs.produtosReserva> produtos = reserva.produtos; try { using (HSContext hs = new HSContext()) { var produtosdaReserva = hs.Tbprodutoreserva.Where(x => x.Idreserva == reserva.idreserva).ToList(); var idprodutoscheckout = produtosdaReserva.Select(x => x.Idprodutocheckout).ToList(); var idprodutoscheckoutReserva = produtos.Select(x => x.idprodutocheckout).ToList(); var idsParaDeletar = idprodutoscheckout.Except(idprodutoscheckoutReserva.Where(x => x != 0)).ToList(); var produtosDeletados = hs.Tbprodutoreserva.Where(x => idsParaDeletar.Contains(x.Idprodutocheckout)).ToList(); var reservaAtual = hs.Tbreserva.First(x => x.Idreserva == reserva.idreserva); reservaAtual.Checkout = true; if (produtos.Count > 0) { foreach (var item in produtos) { if (item.idprodutocheckout == 0) { hs.Tbprodutoreserva .Add(new Tbprodutoreserva() { Idproduto = item.idproduto, Idreserva = item.idreserva, Quantidade = item.quantidade, Valor = decimal.Parse(item.valor.Replace(".", ",")) }); } else { var produtoreserva = hs.Tbprodutoreserva.First(x => x.Idprodutocheckout == item.idprodutocheckout); produtoreserva.Quantidade = item.quantidade; produtoreserva.Valor = decimal.Parse(item.valor.Replace(".", ",")); } } foreach (var item in produtosDeletados) { hs.Tbprodutoreserva.Remove(item); } hs.SaveChanges(); return(true); } else { return(true); } } } catch (Exception ex) { erros.Add("Produtos do checkout não inseridos."); erros.Add(ex.Message); if (ex.InnerException != null) { erros.Add(ex.InnerException.Message); } return(false); } }
public bool IncluirReserva(DTOs.Reserva reserva) { try { var idcliente = this.Decrypt(reserva.idusuariocripto); using (HSContext hs = new HSContext()) { //var podeCadastrar = hs.Tbreserva // .Where // ( // x => // ( // (x.Dataentrada >= DateTime.Parse(reserva.dataentrada) && x.Datasaida <= DateTime.Parse(reserva.dataentrada)) // || // (x.Datasaida <= DateTime.Parse(reserva.datasaida)) // ) // && // (x.Idquarto == reserva.idquarto) // ).ToList(); //if (podeCadastrar.Count() > 0) //{ // this.erros.Add("Infelizmente esse quarto já foi reservado."); // this.erros.Add("Escolha outro quarto."); // return false; //} //var podeCadastrar = hs.Tbreserva // .Where // ( // x => // ( // (x.Dataentrada >= DateTime.Parse(reserva.dataentrada) && x.Datasaida <= DateTime.Parse(reserva.dataentrada)) // || // (x.Datasaida <= DateTime.Parse(reserva.datasaida)) // ) // && // (x.Idquarto == reserva.idquarto) // ).ToList(); //if (podeCadastrar.Count() > 0) //{ // this.erros.Add("Infelizmente esse quarto já foi reservado."); // this.erros.Add("Escolha outro quarto."); // return false; //} Tbreserva reservaAdd = new Tbreserva(); reservaAdd.Idquarto = reserva.idquarto; reservaAdd.Idusuario = Int32.Parse(idcliente); reservaAdd.Valor = Decimal.Parse(reserva.valor.Replace(".", ",")); reservaAdd.Checkout = false; reservaAdd.Dataentrada = DateTime.Parse(reserva.dataentrada); reservaAdd.Datasaida = DateTime.Parse(reserva.datasaida); reservaAdd.Datacadastro = DateTime.Now; hs.Tbreserva.Add(reservaAdd); hs.SaveChanges(); } } catch (Exception ex) { erros.Add("A reserva não foi adicionada."); erros.Add(ex.Message); return(false); } return(true); }