datajud 0.1.2 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/Gemfile.lock +1 -1
- data/lib/datajud/api_client.rb +5 -6
- data/lib/datajud/client.rb +2 -1
- data/lib/datajud/process.rb +54 -1
- data/lib/datajud/version.rb +1 -1
- data/lib/datajud.rb +4 -2
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 5f39081aadf1eae3fd48ec2b4c41290747c9c1d7af57e1c2277a030633ed9e64
|
|
4
|
+
data.tar.gz: aab5ae80ec67d1465641b0af7b4674b1ee2dceddcc20c5ef36fbf9263dd2a23a
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 8c0c96e126baf36e5a1e9fe6960a60f6bf332290931515f8386245c4e808905a89c2bae3a89dd38fb900a6de953739e9175edc2880047520d62ae054bab7c674
|
|
7
|
+
data.tar.gz: f518b69601b88db2d9a7eb452673019449504772ce4d818e2c64d65e663b8b72a1f8ec1910ce37a5839cd135b1d65386f43ba9fe67dd72b731484212cf267d53
|
data/CHANGELOG.md
CHANGED
data/Gemfile.lock
CHANGED
data/lib/datajud/api_client.rb
CHANGED
|
@@ -10,20 +10,19 @@ module Datajud
|
|
|
10
10
|
# Consulta genérica: tribunal e filtros customizados
|
|
11
11
|
def self.buscar(tribunal, filtros = {})
|
|
12
12
|
endpoint = "/api_publica_#{tribunal.downcase}/_search"
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
url = URI("#{Datajud.configuration.base_endpoint}#{endpoint}")
|
|
15
14
|
http = Net::HTTP.new(url.host, url.port)
|
|
16
15
|
http.use_ssl = (url.scheme == "https")
|
|
17
|
-
|
|
18
|
-
|
|
16
|
+
http.open_timeout = Datajud.configuration.open_timeout
|
|
17
|
+
http.read_timeout = Datajud.configuration.read_timeout
|
|
19
18
|
|
|
20
19
|
request = Net::HTTP::Post.new(url)
|
|
21
|
-
|
|
20
|
+
request['Authorization'] = "APIKey #{Datajud.api_key}"
|
|
22
21
|
request['Content-Type'] = 'application/json'
|
|
23
22
|
request.body = { query: filtros }.to_json
|
|
24
23
|
|
|
25
24
|
begin
|
|
26
|
-
|
|
25
|
+
response = Datajud.request_with_retry(http, request)
|
|
27
26
|
if response.is_a?(Net::HTTPSuccess)
|
|
28
27
|
JSON.parse(response.body)
|
|
29
28
|
else
|
data/lib/datajud/client.rb
CHANGED
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
module Datajud
|
|
4
4
|
class Client
|
|
5
5
|
# Retorna uma instância de Datajud::Processo ou nil
|
|
6
|
-
def self.find(numero, tribunal
|
|
6
|
+
def self.find(numero, tribunal = nil, **kwargs)
|
|
7
|
+
tribunal = kwargs[:tribunal] if tribunal.nil? && kwargs.key?(:tribunal)
|
|
7
8
|
raw = Datajud.processo(numero, tribunal: tribunal)
|
|
8
9
|
return nil unless raw && raw[:processo] || raw && raw['processo']
|
|
9
10
|
|
data/lib/datajud/process.rb
CHANGED
|
@@ -22,6 +22,33 @@ module Datajud
|
|
|
22
22
|
@data['classe'] || @data[:classe]
|
|
23
23
|
end
|
|
24
24
|
|
|
25
|
+
def vara
|
|
26
|
+
v = @data['vara'] || @data[:vara]
|
|
27
|
+
return nil unless v
|
|
28
|
+
|
|
29
|
+
OpenStruct.new(
|
|
30
|
+
nome: v['nome'] || v[:nome],
|
|
31
|
+
codigo: v['codigo'] || v[:codigo],
|
|
32
|
+
comarca: v['comarca'] || v[:comarca]
|
|
33
|
+
)
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
def situacao
|
|
37
|
+
@data['situacao'] || @data[:situacao]
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
def origem
|
|
41
|
+
@data['origem'] || @data[:origem]
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
def instancia
|
|
45
|
+
@data['instancia'] || @data[:instancia]
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
def assunto
|
|
49
|
+
@data['assunto'] || @data[:assunto]
|
|
50
|
+
end
|
|
51
|
+
|
|
25
52
|
def partes
|
|
26
53
|
partes = @data['partes'] || @data[:partes] || []
|
|
27
54
|
partes.map do |p|
|
|
@@ -33,7 +60,7 @@ module Datajud
|
|
|
33
60
|
end
|
|
34
61
|
end
|
|
35
62
|
|
|
36
|
-
def
|
|
63
|
+
def andamentos
|
|
37
64
|
mov = @data['andamentos'] || @data[:andamentos] || @data['movimentacoes'] || @data[:movimentacoes]
|
|
38
65
|
(mov || []).map do |m|
|
|
39
66
|
OpenStruct.new(
|
|
@@ -44,6 +71,32 @@ module Datajud
|
|
|
44
71
|
end
|
|
45
72
|
end
|
|
46
73
|
|
|
74
|
+
def documentos
|
|
75
|
+
docs = @data['documentos'] || @data[:documentos] || []
|
|
76
|
+
docs.map do |d|
|
|
77
|
+
OpenStruct.new(
|
|
78
|
+
titulo: d['titulo'] || d['nomeDocumento'] || d[:titulo],
|
|
79
|
+
tipo: d['tipo'] || d['tipoDocumento'] || d[:tipo],
|
|
80
|
+
data: d['data'] || d['dataJuntada'] || d[:data],
|
|
81
|
+
assinatura_digital: d['assinatura_digital'] || d['assinaturaDigital'] || d[:assinatura_digital]
|
|
82
|
+
)
|
|
83
|
+
end
|
|
84
|
+
end
|
|
85
|
+
|
|
86
|
+
def audiencias
|
|
87
|
+
auds = @data['audiencias'] || @data[:audiencias] || []
|
|
88
|
+
auds.map do |a|
|
|
89
|
+
OpenStruct.new(
|
|
90
|
+
data_hora: a['data_hora'] || a['dataHora'] || a[:data_hora],
|
|
91
|
+
tipo: a['tipo'] || a[:tipo],
|
|
92
|
+
status: a['status'] || a['statusAudiencia'] || a[:status],
|
|
93
|
+
observacao: a['observacao'] || a[:observacao]
|
|
94
|
+
)
|
|
95
|
+
end
|
|
96
|
+
end
|
|
97
|
+
|
|
98
|
+
alias movimentacoes andamentos
|
|
99
|
+
|
|
47
100
|
def to_h
|
|
48
101
|
{ tribunal: tribunal, processo: data }
|
|
49
102
|
end
|
data/lib/datajud/version.rb
CHANGED
data/lib/datajud.rb
CHANGED
|
@@ -320,12 +320,14 @@ module Datajud
|
|
|
320
320
|
# A implementação mais rica (retornando objetos) está em Datajud::Client
|
|
321
321
|
|
|
322
322
|
# Retorna um objeto Datajud::Processo ou nil
|
|
323
|
-
def self.find(numero, tribunal
|
|
323
|
+
def self.find(numero, tribunal = nil, **kwargs)
|
|
324
|
+
tribunal = kwargs[:tribunal] if tribunal.nil? && kwargs.key?(:tribunal)
|
|
324
325
|
Datajud::Client.find(numero, tribunal: tribunal)
|
|
325
326
|
end
|
|
326
327
|
|
|
327
328
|
# Mantém método antigo para compatibilidade (retorna hash com dados brutos)
|
|
328
|
-
def self.processo(numero, tribunal
|
|
329
|
+
def self.processo(numero, tribunal = nil, **kwargs)
|
|
330
|
+
tribunal = kwargs[:tribunal] if tribunal.nil? && kwargs.key?(:tribunal)
|
|
329
331
|
# A lógica original permanecida aqui para backward-compat
|
|
330
332
|
siglas_consulta = if tribunal
|
|
331
333
|
Array(tribunal).flatten.map { |t| t.to_s.downcase }
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: datajud
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- PablUoo
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-03-
|
|
11
|
+
date: 2026-03-12 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: nokogiri
|