public async Task <IngressoDTO> ComprarIngresso(IngressoDTO dto)
        {
            var sessao = await _sessaoRepository.BuscarSessao(dto.CodigoSessao);

            if (sessao == null)
            {
                throw new Exception();
            }

            var model = new IngressoModel
            {
                Codigo       = dto.Codigo,
                CPF          = dto.CPF,
                DataCompra   = dto.DataCompra,
                ValorPago    = dto.ValorPago,
                Observacao   = dto.Observacao,
                CodigoSessao = dto.CodigoSessao,
            };

            model = await _ingressoRepository.CriarIngresso(model);

            dto.Codigo = model.Codigo;

            return(dto);
        }
        public async Task <IngressoDTO> BuscarIngresso(int codigo)
        {
            var model = await _ingressoRepository.BuscarIngresso(codigo);

            if (model == null)
            {
                return(null);
            }

            var dto = new IngressoDTO
            {
                Codigo       = model.Codigo,
                CPF          = model.CPF,
                DataCompra   = model.DataCompra,
                ValorPago    = model.ValorPago,
                Observacao   = model.Observacao,
                CodigoSessao = model.CodigoSessao,
            };

            return(dto);
        }
        public async Task <IActionResult> Post([FromBody] IngressoDTO ingresso)
        {
            ingresso = await _ingressoApplication.ComprarIngresso(ingresso);

            return(Ok(ingresso));
        }