public bool Emprestar(EmprestarJogoRequest request) { if (request == null) { throw new RequestInvalidoExcecao(); } if (request.CodigoUsuarioEmprestimo <= 0) { throw new ParametroInvalidoExcecao("Favor informar um código de usuário para empréstimo válido"); } if (request.CodigosJogos.Length == 0) { throw new ParametroInvalidoExcecao("Favor informar um código de jogo válido"); } foreach (int codigoJogo in request.CodigosJogos) { Jogo jogo = this.jogoRepositorio.Recuperar(codigoJogo); if ((jogo != null) && (jogo.DataEmprestimo == null)) { this.jogoRepositorio.Emprestar(request.CodigoUsuarioEmprestimo, codigoJogo); } } return(true); }
public EmprestarJogoResponse Handle(EmprestarJogoRequest request) { var amigo = _context.Amigos .Where(a => a.Id == request.AmigoId) .FirstOrDefault(); var jogo = _context.Jogos .Where(j => j.Id == request.JogoId) .FirstOrDefault(); var emprestimo = new Emprestimo(amigo, jogo); _context.Emprestimos.Add(emprestimo); _context.SaveChanges(); return(new EmprestarJogoResponse { Id = emprestimo.Id, Amigo = amigo, Jogo = jogo }); }
public EmprestarJogoResponse EmprestarJogo([FromBody] EmprestarJogoRequest command) { return(_handler.Handle(command)); }
public IHttpActionResult Emprestar([FromBody] EmprestarJogoRequest request) { return(Ok(this.jogoAppService.Emprestar(request))); }