コード例 #1
0
        public ActionResult Detalhes(string nomeJogo)
        {
            locacaoRepositorio = FabricaDeModulos.CriarLocacaoRepositorio();
            clienteRepositorio = FabricaDeModulos.CriarClienteRepositorio();
            jogoRepositorio = FabricaDeModulos.CriarJogoRepositorio();

            servicoLocacao = new ServicoLocacao(jogoRepositorio, clienteRepositorio, locacaoRepositorio);

            var locacao = locacaoRepositorio.BuscarPendentesPorNomeDoJogo(nomeJogo).FirstOrDefault();
            bool jogoEstaLocado = locacao != null && !locacao.Jogo.Disponivel;

            if (jogoEstaLocado)
            {
                DevolucaoModel model = new DevolucaoModel()
                {
                    IdLocacao = locacao.Id,
                    DataLocacao = locacao.DataLocacao,
                    ImagemJogo = locacao.Jogo.Imagem,
                    NomeJogo = locacao.Jogo.Nome,
                    ValorFinal = servicoLocacao.CalcularValorFinal(locacao)
                };
                return View(model);
            }

            TempData["Mensagem"] = "Jogo informado não encontrado";
            TempData["TipoMensagem"] = "Falha";
            return View("Devolucao");
        }
コード例 #2
0
        public ActionResult Devolucao(DevolucaoModel devolucaoModel)
        {
            if(devolucaoModel == null)
            {
                devolucaoModel = new DevolucaoModel();
            }

            IJogoRepositorio jogoRepositorio = FabricaDeModulos.CriarJogoRepositorio();

            var jogos = jogoRepositorio.BuscarTodos();

            devolucaoModel.Jogos = new List<LocarJogoModel>();

            foreach (var jogo in jogos)
            {
                devolucaoModel.Jogos.Add(this.JogoToLocarJogoModel(jogo));
            }

            if (devolucaoModel.idJogo.HasValue)
            {
                var jogo = jogoRepositorio.BuscarPorId((int)devolucaoModel.idJogo);

                devolucaoModel.LoacarJogoModel = this.JogoToLocarJogoModel(jogo);
            }

            return View(devolucaoModel);
        }