1
- import firebase_admin
2
- import pyrebase
3
- from firebase_admin import credentials
4
1
from cerberus import Validator
5
- from fastapi import FastAPI , Request , Form
6
- from fastapi .responses import HTMLResponse
7
- from fastapi .staticfiles import StaticFiles
8
- from fastapi .templating import Jinja2Templates
9
-
2
+ from fastapi import APIRouter
10
3
from source .services .collect import search_process_data
11
4
from source .models .NumeroProcessoInfo import NumeroProcessoInfo
12
5
from source .models .ProcessoRequestBody import ProcessRequestBody
13
6
from source .services .validate import process_request_informations_schema , id_processo_schema , \
14
7
ProcessNumberRegexErrorHandler
15
8
16
- app = FastAPI ()
17
- validator = Validator (error_handler = ProcessNumberRegexErrorHandler )
18
-
19
- if not firebase_admin ._apps :
20
- cred = credentials .Certificate ("/Users/lucyvelasco/PycharmProjects/jus_crawler/serviceAccount.json" )
21
- firebase_admin .initialize_app (cred )
22
9
23
- firebaseConfig = {
24
- "apiKey" : "AIzaSyDp_XqMeP6rQ061y6M9mtlPp-JFatYBa-4" ,
25
- "authDomain" : "crawler-jus.firebaseapp.com" ,
26
- "databaseURL" : "https://crawler-jus-default-rtdb.firebaseio.com" ,
27
- "projectId" : "crawler-jus" ,
28
- "storageBucket" : "crawler-jus.appspot.com" ,
29
- "messagingSenderId" : "654136178133" ,
30
- "appId" : "1:654136178133:web:42658f521054817806395c" ,
31
- "measurementId" : "G-QN0D2Q1SF7"
32
- }
10
+ router = APIRouter (
11
+ prefix = "/processos" ,
12
+ tags = ["processos" ]
13
+ )
33
14
34
- firebase = pyrebase . initialize_app ( firebaseConfig )
15
+ validator = Validator ( error_handler = ProcessNumberRegexErrorHandler )
35
16
36
17
37
18
def valid_request (processo_info : NumeroProcessoInfo ):
@@ -42,22 +23,7 @@ def valid_process_id(numero_processo: str):
42
23
return validator .validate ({"numero_processo" : numero_processo }, id_processo_schema )
43
24
44
25
45
- @app .post ("/cadastro" )
46
- async def create_an_account ():
47
- pass
48
-
49
-
50
- @app .post ("/login" )
51
- async def create_access_token ():
52
- pass
53
-
54
-
55
- @app .post ("/ping" )
56
- async def validate_token ():
57
- pass
58
-
59
-
60
- @app .post ("/processo" )
26
+ @router .post ("/busca" )
61
27
def buscar_processo (process_request : ProcessRequestBody ):
62
28
"""
63
29
API que busca dados de um processo em todos os graus dos Tribunais de Justiça de Alagoas (TJAL) e do Ceará (TJCE).
@@ -92,7 +58,7 @@ def buscar_processo(process_request: ProcessRequestBody):
92
58
return response
93
59
94
60
95
- @app .get ("/processo /{id_processo}" )
61
+ @router .get ("/{id_processo}" )
96
62
def get_processo_info_by_id (id_processo : str ):
97
63
"""
98
64
API que busca dados de um processo em todos os graus dos Tribunais de Justiça de Alagoas (TJAL) e do Ceará (TJCE).
@@ -123,19 +89,3 @@ def get_processo_info_by_id(id_processo: str):
123
89
if not valid_request (processo_info ):
124
90
return validator .errors
125
91
return search_process_data (processo_info )
126
-
127
-
128
- def get_jinja_templates ():
129
- app .mount ("/static" , StaticFiles (directory = "front-end/static" ), name = "static" )
130
- return Jinja2Templates (directory = "front-end/templates" )
131
-
132
-
133
- @app .post ('/buscaprocesso' , include_in_schema = False )
134
- def buscar_processo_pelo_form (request : Request , id_processo : str = Form ()):
135
- result = get_processo_info_by_id (id_processo )
136
- return get_jinja_templates ().TemplateResponse ('processo.html' , {'request' : request , 'result' : result })
137
-
138
-
139
- @app .get ('/' , response_class = HTMLResponse , include_in_schema = False )
140
- def main (request : Request ):
141
- return get_jinja_templates ().TemplateResponse ('home.html' , {'request' : request })
0 commit comments