private async Task <bool> CadastrarTurnoOcorrencia(Guid turnoId, OcorrenciaResultDto ocorrenciaResultDto)
        {
            TurnoOcorrencia turnoOcorrencia = new TurnoOcorrencia(turnoId,
                                                                  Guid.Parse(ocorrenciaResultDto.Id),
                                                                  Enum.Parse <StatusOcorrenciaEnum>(ocorrenciaResultDto.StatusAtualOcorrencia));

            return(await _turnoOcorrenciaRepository.CadastrarTurnoOcorrencia(turnoOcorrencia));
        }
        private async Task <bool> EditarTurnoOcorrencia(OcorrenciaPutDto ocorrenciaPutDto, Guid ocorrenciaId)
        {
            TurnoOcorrencia turnoOcorrencia = new TurnoOcorrencia(ocorrenciaPutDto.TurnoId,
                                                                  ocorrenciaId,
                                                                  ocorrenciaPutDto.StatusAtualOcorrencia);

            // atualizar TurnoOcorrencia caso altere Status ocorrencia

            return(await _turnoOcorrenciaRepository.EditarStatusTurnoOcorrencia(turnoOcorrencia));
        }
        public async Task <bool> CadastrarTurnoOcorrencia(TurnoOcorrencia turnoOcorrencia)
        {
            try
            {
                _context.TurnoOcorrencias.Add(turnoOcorrencia);
                await _context.SaveChangesAsync();

                return(true);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
 public async Task <bool> AdicionarOcorrenciasEmAbertoAoTurno(Guid turnoId, ICollection <OcorrenciaResultDto> listaOcorrenciasEmAberto)
 {
     try
     {
         foreach (OcorrenciaResultDto item in listaOcorrenciasEmAberto)
         {
             TurnoOcorrencia tur_oco = new TurnoOcorrencia(turnoId,
                                                           Guid.Parse(item.Id),
                                                           Enum.Parse <StatusOcorrenciaEnum>(item.StatusAtualOcorrencia));
             _context.TurnoOcorrencias.Add(tur_oco);
             await _context.SaveChangesAsync();
         }
         return(true);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
        public async Task <bool> ExcluirTurnoOcorrencia(TurnoOcorrencia turnoOcorrencia)
        {
            try
            {
                var result = await _context.TurnoOcorrencias.SingleOrDefaultAsync(to => to.TurnoId.Equals(turnoOcorrencia.TurnoId) && to.OcorrenciaId.Equals(turnoOcorrencia.OcorrenciaId));

                if (result != null)
                {
                    _context.TurnoOcorrencias.Remove(result);
                    await _context.SaveChangesAsync();

                    return(true);
                }
                return(false);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public async Task <bool> EditarStatusTurnoOcorrencia(TurnoOcorrencia turnoOcorrencia)
        {
            try
            {
                var result = await _context.TurnoOcorrencias.SingleOrDefaultAsync(to => to.TurnoId.Equals(turnoOcorrencia.TurnoId) && to.OcorrenciaId.Equals(turnoOcorrencia.OcorrenciaId));

                if (result != null)
                {
                    _context.Entry(result).CurrentValues.SetValues(turnoOcorrencia);
                    await _context.SaveChangesAsync();

                    return(true);
                }
                return(false);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }