public void guardarPersonaNatural() {
   Usuario us = usuarioDao.obtenerPorLogin(login.getUserName());
   licenciaComercializacion.setNumeroDocumento(personaNatural.getNumeroDocumento());
   licenciaComercializacion.setNombre(personaNatural.getNombre());
   licenciaComercializacion.setApellido(personaNatural.getApellido());
   licenciaComercializacion.setDireccion(personaNatural.getDireccion());
   licenciaComercializacion.setTelefono(personaNatural.getTelefono());
   licenciaComercializacion.setCorreoElectronico(personaNatural.getEmail());
   licenciaComercializacion.setCasilleroJudicial(personaNatural.getCasilleroJudicial());
   PersonaNatural pn =
       personaNaturalServicio.findByNumeroDocumento(personaNatural.getNumeroDocumento());
   try {
     if (pn == null) {
       personaNatural.setFechaCreacion(new Date());
       personaNatural.setUsuarioCreacion(BigInteger.valueOf(us.getCodigoUsuario()));
       personaNaturalServicio.create(personaNatural);
       Auditoria auditoria = new Auditoria();
       auditoria.setAccion("INSERT");
       auditoria.setFecha(getCurrentTimeStamp());
       auditoria.setUsuario(BigInteger.valueOf(us.getCodigoUsuario()));
       auditoria.setDetalleAnterior(personaNatural.toString());
       auditoriaServicio.create(auditoria);
       FacesContext.getCurrentInstance()
           .addMessage(
               null,
               new FacesMessage(FacesMessage.SEVERITY_INFO, "Se ha guardado la persona", null));
       RequestContext.getCurrentInstance().execute("PF('dlgPerNat').hide()");
     } else {
       personaNatural.setFechaModificacion(new Date());
       personaNatural.setUsuarioModificacion(BigInteger.valueOf(us.getCodigoUsuario()));
       personaNaturalServicio.actualizarPersonaNatural(personaNatural);
       Auditoria auditoria = new Auditoria();
       auditoria.setAccion("UPDATE");
       auditoria.setFecha(getCurrentTimeStamp());
       auditoria.setUsuario(BigInteger.valueOf(us.getCodigoUsuario()));
       auditoria.setDetalleAnterior(pn.toString());
       auditoria.setDetalleCambios(personaNatural.toString());
       auditoriaServicio.create(auditoria);
       FacesContext.getCurrentInstance()
           .addMessage(
               null,
               new FacesMessage(FacesMessage.SEVERITY_INFO, "Se ha actualizado la persona", null));
       RequestContext.getCurrentInstance().execute("PF('dlgPerNat').hide()");
     }
   } catch (Exception ex) {
     FacesContext.getCurrentInstance()
         .addMessage(
             null,
             new FacesMessage(
                 FacesMessage.SEVERITY_ERROR, "No se pudo guardar la persona", ex.getMessage()));
   }
 }
  public void validarCedulaPersonaNatural() {
    String numDocumento = personaNatural.getNumeroDocumento();
    if (personaNatural.getNumeroDocumento().length() == 10) {
      if (!CedulaValidator.validate(personaNatural.getNumeroDocumento())) {
        // personaNatural.setNumeroDocumento(null);
        personaNatural = null;
        getPersonaNatural();
        FacesContext.getCurrentInstance()
            .addMessage(
                null,
                new FacesMessage(FacesMessage.SEVERITY_WARN, "Número de cédula inválida", null));
        return;
      }
    } else if (personaNatural.getNumeroDocumento().length() == 13) {
      if (!CedulaValidator.validacionRUC(personaNatural.getNumeroDocumento())) {
        // personaNatural.setNumeroDocumento(null);
        personaNatural = null;
        getPersonaNatural();
        FacesContext.getCurrentInstance()
            .addMessage(
                null, new FacesMessage(FacesMessage.SEVERITY_WARN, "Número de ruc inválido", null));
        return;
      }
    } else {
      // personaNatural.setNumeroDocumento(null);
      personaNatural = null;
      getPersonaNatural();
      FacesContext.getCurrentInstance()
          .addMessage(
              null,
              new FacesMessage(FacesMessage.SEVERITY_WARN, "Número de documento inválido", null));
      return;
    }

    if (personaNatural.getNumeroDocumento() != null) {
      System.out.println("entra else");
      personaNatural =
          personaNaturalServicio.findByNumeroDocumento(personaNatural.getNumeroDocumento());
      System.out.println("personaNatural: " + personaNatural);
      if (personaNatural == null) {
        getPersonaNatural();
        personaNatural.setNumeroDocumento(numDocumento);
        FacesContext.getCurrentInstance()
            .addMessage(
                null,
                new FacesMessage(
                    FacesMessage.SEVERITY_INFO, "Número de documento no existente", null));
        System.out.println(
            "personaNatural.getNumeroDocumento(): " + personaNatural.getNumeroDocumento());
      } else {
        FacesContext.getCurrentInstance()
            .addMessage(
                null,
                new FacesMessage(
                    FacesMessage.SEVERITY_INFO, "Número de documento existente", null));
      }
    }
  }