public async Task <CustomResponse <FilaClassificacaoEvento> > Incluir([FromBody] FilaClassificacaoEvento filaclassificacaoevento)
 {
     return(await _service.Adicionar(filaclassificacaoevento, Guid.Parse("285CE313-2D96-4425-9A70-B1E71BC17020")));
 }
        public async Task <CustomResponse <FilaClassificacao> > AdicionarPacienteFila(FilaClassificacao filaClassificacao, Guid userId)
        {
            var _response = new CustomResponse <FilaClassificacao>();

            try
            {
                var _pacienteJaRegistado = false;

                //Valida se já existe registro para o paciente
                if (filaClassificacao.RegistroBoletim.PessoaPaciente.PessoaId != Guid.Empty)
                {
                    _pacienteJaRegistado = _contextKlinikos.FilaClassificacao.Any(x => x.RegistroBoletim.PessoaPaciente.PessoaId == filaClassificacao.RegistroBoletim.PessoaPaciente.PessoaId && x.Ativo);
                }

                if (_pacienteJaRegistado)
                {
                    _response.StatusCode = StatusCodes.Status409Conflict;
                    _response.Message    = "Paciente já registado";
                    _response.Result     = filaClassificacao;
                    return(_response);
                }


                var numeroBoletim = _contextKlinikos.RegistrosBoletim.Max(x => x.NumeroBoletim);

                if (numeroBoletim != null)
                {
                    var novoCodigo = int.Parse(numeroBoletim);
                    novoCodigo++;
                    filaClassificacao.RegistroBoletim.NumeroBoletim = novoCodigo.ToString("000000");
                }
                else
                {
                    filaClassificacao.RegistroBoletim.NumeroBoletim = "000001";
                }


                if (filaClassificacao.RegistroBoletim.PessoaPaciente != null)
                {
                    if (filaClassificacao.RegistroBoletim.PessoaPaciente.PessoaId != null)
                    {
                        await _servicePaciente.AtualizarPaciente(filaClassificacao.RegistroBoletim.PessoaPaciente, userId);
                    }
                }


                await this.Adicionar(filaClassificacao, userId);

                if (filaClassificacao.RegistroBoletim.PessoaPaciente == null)
                {
                    await _servicePessoaHistorico.AdicionarHistoricoPaciente(filaClassificacao.RegistroBoletim.PessoaPaciente, filaClassificacao.RegistroBoletim.PessoaProfissional);
                }



                await _serviceRegistroBoletimHistorico.AdicionarHistoricoRegistroBoletim(filaClassificacao.RegistroBoletim, filaClassificacao.RegistroBoletim.PessoaProfissional);

                var _filaClassificacaoEvento = new FilaClassificacaoEvento
                {
                    FilaClassificacao           = filaClassificacao,
                    DataFilaClassificacaoEvento = filaClassificacao.DataEntradaFilaClassificacao,
                    EventoId           = _contextDominio.Eventos.Where(x => x.Sigla == "A").FirstOrDefault().EventoId,
                    PessoaProfissional = filaClassificacao.RegistroBoletim.PessoaProfissional
                };


                await _serviceFilaClassificacaoEvento.Adicionar(_filaClassificacaoEvento, userId);

                _response.StatusCode = StatusCodes.Status201Created;
                _response.Message    = "Incluído com sucesso";
                _response.Result     = filaClassificacao;
            }
            catch (Exception ex)
            {
                _response.Message = ex.InnerException.Message;
                Error.LogError(ex);
            }

            return(_response);
        }