Example #1
0
        public async Task <PartidaModel> MarcarPartidaAsync(MarcarPartidaRequest request)
        {
            var partidaModel = _mapper
                               .Map <PartidaModel>(request);

            var marcarPartidaCommand = new MarcarPartidaCommand
            {
                Partida = partidaModel
            };

            var result = await _mediator
                         .Send(marcarPartidaCommand);

            await _mediator.Publish(new TimePartidaMarcadaEvent { Partida = partidaModel });

            await _mediator.Publish(new QuadraPartidaMarcadaEvent { Partida = partidaModel });

            return(result);
        }
        public async Task <IActionResult> MarcarPartida([FromBody] MarcarPartidaRequest request)
        {
            var novaPartida = await _partidaService
                              .MarcarPartidaAsync(request);

            if (novaPartida is null)
            {
                return(BadRequest(new Response <object>
                {
                    Mensagem = "Ocorreu um erro ao marcar partida",
                    Sucesso = false
                }));
            }

            return(Ok(new Response <object>
            {
                Mensagem = "Solicitação para marcar partida feita com sucesso",
                Sucesso = true,
                Dados = novaPartida
            }));
        }