private async Task <Persona> GetPersonModel(GetPersonaDto getPersonaDto)
        {
            Persona persona = new Persona();

            try
            {
                persona = await _context.Personas.FirstAsync(p => p.Documento == getPersonaDto.Documento && p.Pais.Equals(getPersonaDto.Pais) && p.Sexo.Equals(getPersonaDto.Sexo) && p.TipoDocumento.Equals(getPersonaDto.TipoDocumento));
            }
            catch (Exception e)
            {
                throw e;
            }

            return(persona);
        }
        public async Task <ServiceResponse <PersonaDto> > GetPerson(GetPersonaDto getPersonaDto)
        {
            ServiceResponse <PersonaDto> serviceResponse = new ServiceResponse <PersonaDto>();

            try
            {
                Persona persona = await _context.Personas.FirstAsync(p => p.Documento == getPersonaDto.Documento && p.Pais.Equals(getPersonaDto.Pais) && p.Sexo.Equals(getPersonaDto.Sexo) && p.TipoDocumento.Equals(getPersonaDto.TipoDocumento));

                serviceResponse.Data = _mapper.Map <PersonaDto>(persona);
            }
            catch (Exception e)
            {
                _personaError.AddError(serviceResponse, e, "Persona no encontrada");
            }

            return(serviceResponse);
        }
        public async Task <ServiceResponse <List <PersonaDto> > > DeletePerson(GetPersonaDto getPersonaDto)
        {
            ServiceResponse <List <PersonaDto> > serviceResponse = new ServiceResponse <List <PersonaDto> >();

            try
            {
                var persona = await GetPersonModel(getPersonaDto);

                _context.Personas.Remove(persona);
                await _context.SaveChangesAsync();

                serviceResponse.Data = _context.Personas.Select(p => _mapper.Map <PersonaDto>(p)).ToList();
            }
            catch (Exception e)
            {
                _personaError.AddError(serviceResponse, e, "Persona no encontrada");
            }

            return(serviceResponse);
        }