public ActionResult EfetuarAluguel() { try { Aluguel aluguel = null; if (Session["Aluguel"] != null) { aluguel = (Aluguel)Session["Aluguel"]; } else { Carrinho carrinho = CarrinhoRepository.GetInstance().Get(UsuarioLogado.Usuario); PrecoPrazoEntrega precoPrazo = CalculoPrecoPrazoRepository.GetInstance().CalcularPrecoPrazo(UsuarioLogado.Usuario.Cep.ToString("00000000")); AluguelDTO aluguelDTO = FactoryAluguel.Criar(carrinho, precoPrazo); aluguel = aluguelDTO.Aluguel; } AluguelRepository.Instancia.ConfirmarAluguel(aluguel); return(View(aluguel)); } catch (Exception ex) { return(Json(new { Mensagem = ex.Message })); } }
public ActionResult Index() { Carrinho carrinho = CarrinhoRepository.GetInstance().Get(UsuarioLogado.Usuario); PrecoPrazoEntrega precoPrazo = CalculoPrecoPrazoRepository.GetInstance().CalcularPrecoPrazo(UsuarioLogado.Usuario.Cep.ToString("00000000")); AluguelDTO aluguel = FactoryAluguel.Criar(carrinho, precoPrazo); Session["Aluguel"] = aluguel.Aluguel; return(View(aluguel)); }
public static AluguelDTO Criar(Carrinho carrinho, PrecoPrazoEntrega precoPrazo) { return(new AluguelDTO() { Aluguel = new Aluguel() { Livros = carrinho.Livros, ValorAluguel = carrinho.Livros.Sum(m => m.ValorDia * 7), Usuario = carrinho.Usuario, DataSolicitacao = DateTime.Now, ValorFrete = precoPrazo.Valor, DataPrevistaEntrega = DateTime.Now.AddDays(precoPrazo.DiasParaEntrega), DataVencimentoDevolucao = DateTime.Now.AddDays(precoPrazo.DiasParaEntrega + 7) }, Carrinho = carrinho }); }