Search in sources :

Example 1 with PresentableUnloggedException

use of com.crivano.swaggerservlet.PresentableUnloggedException in project balcaovirtual by trf2-jus-br.

the class SoapMNI method consultarProcesso.

public static String consultarProcesso(String idConsultante, String senhaConsultante, String sistema, String numProc, boolean cabecalho, boolean movimentos, boolean documentos) throws Exception {
    ServicoIntercomunicacao222 client = getClient(sistema);
    Holder<Boolean> sucesso = new Holder<>();
    Holder<String> mensagem = new Holder<>();
    Holder<TipoProcessoJudicial> processo = new Holder<>();
    Map<String, Object> requestContext = ((BindingProvider) client).getRequestContext();
    requestContext.put("javax.xml.ws.client.receiveTimeout", "3600000");
    requestContext.put("javax.xml.ws.client.connectionTimeout", "5000");
    client.consultarProcesso(idConsultante, senhaConsultante, numProc, null, movimentos, cabecalho, documentos, null, sucesso, mensagem, processo);
    if (!sucesso.value)
        throw new Exception(mensagem.value);
    if (Utils.isConsultaPublica(idConsultante) && processo.value.getDadosBasicos() != null && processo.value.getDadosBasicos().getNivelSigilo() > 0)
        throw new PresentableUnloggedException("Processo não disponível para consulta pública");
    Type collectionType = new TypeToken<List<TipoParametro>>() {
    }.getType();
    Gson gson = new GsonBuilder().registerTypeAdapter(collectionType, new OutroParametroSerializer()).setExclusionStrategies(new ConsultaProcessualExclStrat()).create();
    return gson.toJson(processo);
}
Also used : GsonBuilder(com.google.gson.GsonBuilder) Holder(javax.xml.ws.Holder) Gson(com.google.gson.Gson) TipoProcessoJudicial(br.jus.cnj.intercomunicacao_2_2.TipoProcessoJudicial) BindingProvider(javax.xml.ws.BindingProvider) ServicoIntercomunicacao222(br.jus.cnj.servico_intercomunicacao_2_2.ServicoIntercomunicacao222) SOAPException(javax.xml.soap.SOAPException) TransformerException(javax.xml.transform.TransformerException) PresentableUnloggedException(com.crivano.swaggerservlet.PresentableUnloggedException) Type(java.lang.reflect.Type) PresentableUnloggedException(com.crivano.swaggerservlet.PresentableUnloggedException) JsonObject(com.google.gson.JsonObject) List(java.util.List) ArrayList(java.util.ArrayList)

Example 2 with PresentableUnloggedException

use of com.crivano.swaggerservlet.PresentableUnloggedException in project balcaovirtual by trf2-jus-br.

the class SoapMNI method obterPecaProcessual.

public static byte[] obterPecaProcessual(String idConsultante, String senhaConsultante, String sistema, String numProc, String documento) throws Exception {
    ServicoIntercomunicacao222 client = getClient(sistema);
    Holder<Boolean> sucesso = new Holder<>();
    Holder<String> mensagem = new Holder<>();
    Holder<TipoProcessoJudicial> processo = new Holder<>();
    List<String> l = new ArrayList<>();
    l.add(documento);
    client.consultarProcesso(idConsultante, senhaConsultante, numProc, null, false, false, false, l, sucesso, mensagem, processo);
    if (!sucesso.value)
        throw new Exception(mensagem.value);
    if (sistema.contains(".apolo") && Utils.isConsultaPublica(idConsultante) && processo.value.getDocumento().get(0).getNivelSigilo() > 0)
        throw new PresentableUnloggedException("Documento sigiloso (nível " + processo.value.getDocumento().get(0).getNivelSigilo() + ") não pode ser visulizado em consulta pública");
    return processo.value.getDocumento().get(0).getConteudo();
}
Also used : Holder(javax.xml.ws.Holder) ArrayList(java.util.ArrayList) PresentableUnloggedException(com.crivano.swaggerservlet.PresentableUnloggedException) TipoProcessoJudicial(br.jus.cnj.intercomunicacao_2_2.TipoProcessoJudicial) ServicoIntercomunicacao222(br.jus.cnj.servico_intercomunicacao_2_2.ServicoIntercomunicacao222) SOAPException(javax.xml.soap.SOAPException) TransformerException(javax.xml.transform.TransformerException) PresentableUnloggedException(com.crivano.swaggerservlet.PresentableUnloggedException)

Example 3 with PresentableUnloggedException

use of com.crivano.swaggerservlet.PresentableUnloggedException in project balcaovirtual by trf2-jus-br.

the class ProcessoNumeroPdfGet method run.

@Override
public void run(Request req, Response resp, BalcaojusContext ctx) throws Exception {
    String usuario = null;
    String senha = null;
    String origem = null;
    Usuario u = null;
    try {
        u = BalcaojusServlet.getPrincipal();
        UsuarioDetalhe detalhe = u.usuarios.get(req.sistema);
        if (detalhe != null) {
            usuario = u.usuario;
            senha = u.getSenha();
            origem = detalhe.origem;
        }
    } catch (Exception ex) {
    }
    if (usuario == null && (ProcessoValidarGet.isValidToken(req.token, req.numero) || u != null)) {
        usuario = BalcaojusServlet.INSTANCE.getProperty("public.username");
        senha = BalcaojusServlet.INSTANCE.getProperty("public.password");
        origem = "pub";
    }
    if (usuario == null)
        throw new PresentableUnloggedException("Usuário não possui login válido no sistema " + Utils.getName(req.sistema) + " e também não passou pelo captcha");
    resp.uuid = UUID.randomUUID().toString();
    Status.update(resp.uuid, "Aguardando na fila de tarefas", 0, 100, 0L);
    resp.jwt = DownloadJwtFilenameGet.jwt(origem, usuario, null, req.sistema, req.numero, null, null, null, null, null, null, resp.uuid);
    usuario = Utils.preprocessarId(usuario, senha, req.sistema, origem);
    senha = Utils.preprocessarSenha(usuario, senha, req.sistema, origem);
    BalcaojusServlet.submitToExecutor(new ProcessoCompleto(resp.uuid, usuario, senha, req.sistema, req.numero));
}
Also used : Usuario(br.jus.trf2.balcaojus.AutenticarPost.Usuario) PresentableUnloggedException(com.crivano.swaggerservlet.PresentableUnloggedException) PresentableUnloggedException(com.crivano.swaggerservlet.PresentableUnloggedException) UsuarioDetalhe(br.jus.trf2.balcaojus.AutenticarPost.UsuarioDetalhe)

Example 4 with PresentableUnloggedException

use of com.crivano.swaggerservlet.PresentableUnloggedException in project balcaovirtual by trf2-jus-br.

the class ProcessoNumeroPecaIdMarcaPost method run.

@Override
public void run(Request req, Response resp, BalcaojusContext ctx) throws Exception {
    Usuario u = BalcaojusServlet.getPrincipal();
    UsuarioDetalhe ud = u.usuarios.get(req.sistema.toLowerCase());
    if (ud == null)
        throw new PresentableUnloggedException("Usuário '" + u.usuario + "' não pode fazer marcações porque não foi autenticado no órgão '" + req.sistema + "'.");
    try (Dao dao = new Dao()) {
        Processo p = dao.obtemProcesso(req.numero, req.sistema, true);
        Marca m = null;
        if (req.idmarca != null)
            m = dao.find(Marca.class, Long.valueOf(req.idmarca));
        else
            m = new Marca();
        // verifica se o estilo está compatível com o usuário
        // (interno/externo)
        Estilo estilo = dao.find(Estilo.class, Long.valueOf(req.idestilo));
        if (estilo == null || (estilo.isEstiLgInterno() != u.isInterno()))
            throw new PresentableUnloggedException("Estilo inválido.");
        // verifica se o texto representa um tipo_marca_item
        List<TipoMarcaItem> l = dao.obtemTipoMarcaItens(Long.valueOf(req.idclasse));
        TipoMarcaItem tmi = null;
        String texto = req.texto;
        for (TipoMarcaItem i : l) {
            if (i.getTimiNm() != null && texto != null && texto.startsWith(i.getTimiNm())) {
                tmi = i;
                texto = texto.substring(tmi.getTimiNm().length());
                if (texto.startsWith(" - "))
                    texto = texto.substring(3);
                texto = texto.trim();
                if (texto.length() == 0)
                    texto = null;
                break;
            }
        }
        m.setMarcIdPeca(req.id);
        m.setProcesso(p);
        m.setTipoMarcaItem(tmi);
        m.setEstilo(estilo);
        m.setMarcTxConteudo(texto);
        m.setMarcNrPagInicial(req.paginicial != null ? Integer.valueOf(req.paginicial) : null);
        m.setMarcNrPagFinal(req.pagfinal != null ? Integer.valueOf(req.pagfinal) : null);
        m.setMarcLgInterno(u.isInterno());
        m.setMarcCdUsu(u.usuario);
        m.setMarcNmUsu(u.nome);
        m.setMarcIeUsu(ud.id);
        m.setMarcIeUnidade(ud.codunidade);
        m.setMarcDfAlteracao(dao.obtemData());
        dao.persist(m);
        // Produce response
        resp.marca = new br.jus.trf2.balcaojus.IBalcaojus.Marca();
        resp.marca.idmarca = Long.toString(m.getMarcId());
        resp.marca.idpeca = req.id;
        resp.marca.texto = tmi != null ? tmi.getTimiNm() + (texto != null ? " - " + texto : "") : texto;
        resp.marca.idestilo = req.idestilo;
        resp.marca.paginicial = req.paginicial;
        resp.marca.pagfinal = req.pagfinal;
    } catch (Exception e) {
        Dao.rollbackCurrentTransaction();
        throw e;
    }
}
Also used : Usuario(br.jus.trf2.balcaojus.AutenticarPost.Usuario) TipoMarcaItem(br.jus.trf2.balcaojus.model.TipoMarcaItem) PresentableUnloggedException(com.crivano.swaggerservlet.PresentableUnloggedException) Estilo(br.jus.trf2.balcaojus.model.Estilo) Processo(br.jus.trf2.balcaojus.model.Processo) Marca(br.jus.trf2.balcaojus.model.Marca) PresentableUnloggedException(com.crivano.swaggerservlet.PresentableUnloggedException) UsuarioDetalhe(br.jus.trf2.balcaojus.AutenticarPost.UsuarioDetalhe)

Example 5 with PresentableUnloggedException

use of com.crivano.swaggerservlet.PresentableUnloggedException in project balcaovirtual by trf2-jus-br.

the class ProcessoValidarGet method run.

@Override
public void run(Request req, Response resp, BalcaojusContext ctx) throws Exception {
    boolean fPorCaptcha = false;
    if (req.captcha != null) {
        if (!Utils.verifyCaptcha(req.captcha))
            throw new PresentableUnloggedException("Token de reCaptcha inválido");
        fPorCaptcha = true;
    } else if (isValidToken(req.token, req.numero)) {
        resp.token = req.token;
    } else
        AutenticarPost.assertAuthorization();
    String usuario = null;
    try {
        Usuario u = AutenticarPost.assertUsuario();
        usuario = u.usuario;
    } catch (Exception e) {
        usuario = BalcaojusServlet.INSTANCE.getProperty("public.username");
    }
    String[] numeros = (req.numero != null && req.numero.trim() != "") ? req.numero.split(",") : null;
    if (numeros != null && numeros.length > 100)
        throw new PresentableException("Não é permitido validar mais de 100 números de processos em uma única operação");
    validar(usuario, numeros, req.nome, req.tipodedocumento, req.documento, req.oab, resp);
    if (fPorCaptcha && resp.list != null && resp.list.size() > 0) {
        StringBuilder sb = new StringBuilder();
        for (ProcessoValido p : resp.list) {
            if (sb.length() > 0)
                sb.append(",");
            sb.append(p.numero);
        }
        resp.token = jwt(sb.toString());
    }
}
Also used : Usuario(br.jus.trf2.balcaojus.AutenticarPost.Usuario) PresentableUnloggedException(com.crivano.swaggerservlet.PresentableUnloggedException) PresentableException(com.crivano.swaggerservlet.PresentableException) JWTVerifyException(com.auth0.jwt.JWTVerifyException) PresentableException(com.crivano.swaggerservlet.PresentableException) SignatureException(java.security.SignatureException) IOException(java.io.IOException) PresentableUnloggedException(com.crivano.swaggerservlet.PresentableUnloggedException) NoSuchAlgorithmException(java.security.NoSuchAlgorithmException) InvalidKeyException(java.security.InvalidKeyException) ProcessoValido(br.jus.trf2.balcaojus.IBalcaojus.ProcessoValido)

Aggregations

PresentableUnloggedException (com.crivano.swaggerservlet.PresentableUnloggedException)28 Usuario (br.jus.trf2.balcaojus.AutenticarPost.Usuario)19 UsuarioDetalhe (br.jus.trf2.balcaojus.AutenticarPost.UsuarioDetalhe)8 PresentableException (com.crivano.swaggerservlet.PresentableException)8 SwaggerAsyncResponse (com.crivano.swaggerservlet.SwaggerAsyncResponse)8 Processo (br.jus.trf2.balcaojus.model.Processo)6 Nota (br.jus.trf2.balcaojus.model.Nota)4 FetchResponse (br.jus.trf2.balcaojus.CertidaoEmitirRequisitanteCpfcnpjPost.FetchResponse)3 TipoProcessoJudicial (br.jus.cnj.intercomunicacao_2_2.TipoProcessoJudicial)2 ServicoIntercomunicacao222 (br.jus.cnj.servico_intercomunicacao_2_2.ServicoIntercomunicacao222)2 IUsuarioUsernameMesaIdDocumentoId2SalvarPost (br.jus.trf2.sistemaprocessual.ISistemaProcessual.IUsuarioUsernameMesaIdDocumentoId2SalvarPost)2 JWTVerifyException (com.auth0.jwt.JWTVerifyException)2 IOException (java.io.IOException)2 InvalidKeyException (java.security.InvalidKeyException)2 NoSuchAlgorithmException (java.security.NoSuchAlgorithmException)2 SignatureException (java.security.SignatureException)2 ArrayList (java.util.ArrayList)2 SOAPException (javax.xml.soap.SOAPException)2 TransformerException (javax.xml.transform.TransformerException)2 Holder (javax.xml.ws.Holder)2