Example #1
0
        public async Task <JogoEditViewModel> GetJogoEditAsync(int id)
        {
            var jogo = await GetJogoAsync(id);

            return(new JogoEditViewModel
            {
                Id = jogo.Id,
                Nome = jogo.Nome,
                Tipo = jogo.Tipo.Descricao,
                Emprestado = GamesConstants.GetStatusDevolucao(jogo.Emprestado),
                Amigo = jogo.Historico.SingleOrDefault(y => y.Devolvido == false)?.Amigo.Nome,
                DtEmprestimo = jogo.Historico.SingleOrDefault(y => y.Devolvido == false)?.DtEmprestimo.ToShortDateString()
            });
        }
Example #2
0
        public async Task <IList <JogoIndexViewModel> > ListJogoAsync([FromQuery] JogoFilterViewModel filter)
        {
            var listAmigo = new List <JogoIndexViewModel>();

            RestClient  client  = new RestClient(_myGamesAPIConfig.URL);
            RestRequest request = new RestRequest("api/jogo", Method.GET);

            System.Net.ServicePointManager.ServerCertificateValidationCallback = delegate { return(true); };
            //System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Ssl3;

            IRestResponse <List <JogoResult> > response = await client.ExecuteAsync <List <JogoResult> >(request);

            if (response.StatusCode == System.Net.HttpStatusCode.OK)
            {
                var result = response.Data;

                if (!string.IsNullOrEmpty(filter.Nome))
                {
                    result = result.Where(x => x.Nome.ToUpper().Contains(filter.Nome.ToUpper())).ToList();
                }

                if (filter.TipoJogoId.HasValue)
                {
                    result = result.Where(x => x.TipoJogoId == filter.TipoJogoId).ToList();
                }

                if (filter.Emprestado.HasValue)
                {
                    result = result.Where(x => x.Emprestado == filter.Emprestado).ToList();
                }

                listAmigo = result.Select(x =>
                                          new JogoIndexViewModel
                {
                    Id           = x.Id,
                    Nome         = x.Nome,
                    TipoJogo     = x.Tipo.Descricao,
                    Emprestado   = GamesConstants.GetStatusDevolucao(x.Emprestado),
                    Amigo        = x.Historico.SingleOrDefault(y => y.Devolvido == false)?.Amigo.Nome,
                    DtEmprestimo = x.Historico.SingleOrDefault(y => y.Devolvido == false)?.DtEmprestimo.ToShortDateString(),
                }).ToList();
            }

            return(listAmigo);
        }
Example #3
0
        public async Task <JogoDeleteViewModel> GetJogoDeleteAsync(int id)
        {
            var jogo = await GetJogoAsync(id);

            return(new JogoDeleteViewModel
            {
                Id = jogo.Id,
                Nome = jogo.Nome,
                Tipo = jogo.Tipo.Descricao,
                Emprestado = GamesConstants.GetStatusDevolucao(jogo.Emprestado),
                Amigo = jogo.Historico.SingleOrDefault(y => y.Devolvido == false)?.Amigo.Nome,
                DtEmprestimo = jogo.Historico.SingleOrDefault(y => y.Devolvido == false)?.DtEmprestimo.ToShortDateString(),
                Historico = jogo.Historico.Where(x => x.Devolvido == true).Select(x =>
                                                                                  new HistoricoEmprestimoViewModel
                {
                    Amigo = x.Amigo.Nome,
                    DtEmprestimo = x.DtEmprestimo.ToShortDateString(),
                    DtDevolucao = x.DtDevolucao.Value.ToShortDateString()
                }).ToList()
            });
        }