pr0nstar

X

1 +from functools import wraps
2 +
3 +from fastapi import HTTPException
4 +from sqlalchemy.exc import NoResultFound
5 +
6 +
7 +def not_found(fn):
8 + @wraps(fn)
9 + def wrapper(*args, **kwargs):
10 + try:
11 + value = fn(*args, **kwargs)
12 + except NoResultFound as exc:
13 + raise HTTPException(status_code=404, detail='Not found') from exc
14 +
15 + if value is None:
16 + raise HTTPException(status_code=404, detail='Not found')
17 +
18 + if isinstance(value, (list, dict)) and not value:
19 + raise HTTPException(status_code=404, detail='Not found')
20 +
21 + return value
22 +
23 + return wrapper
...@@ -7,6 +7,7 @@ from sqlalchemy.orm import Session ...@@ -7,6 +7,7 @@ from sqlalchemy.orm import Session
7 from sqlalchemy import and_, or_, select 7 from sqlalchemy import and_, or_, select
8 8
9 from presupuestov1 import model, schema, constant, schemas, models, search 9 from presupuestov1 import model, schema, constant, schemas, models, search
10 +from presupuestov1.routers._decorators import not_found
10 11
11 12
12 router_objeto = APIRouter( 13 router_objeto = APIRouter(
...@@ -31,21 +32,25 @@ router_finfun = APIRouter( ...@@ -31,21 +32,25 @@ router_finfun = APIRouter(
31 ############################################################################### 32 ###############################################################################
32 33
33 @router_objeto.get('/clasificador', response_model=List[schemas.classifier.ClasObjetos]) 34 @router_objeto.get('/clasificador', response_model=List[schemas.classifier.ClasObjetos])
35 +@not_found
34 def fetch_object_classifier(db: Session = Depends(model.get_db)): 36 def fetch_object_classifier(db: Session = Depends(model.get_db)):
35 return _fetch_classifier('objeto', db) 37 return _fetch_classifier('objeto', db)
36 38
37 39
38 @router_acteco.get('/clasificador', response_model=List[schemas.classifier.ClasActeco]) 40 @router_acteco.get('/clasificador', response_model=List[schemas.classifier.ClasActeco])
41 +@not_found
39 def fetch_object_classifier(db: Session = Depends(model.get_db)): 42 def fetch_object_classifier(db: Session = Depends(model.get_db)):
40 return _fetch_classifier('acteco', db) 43 return _fetch_classifier('acteco', db)
41 44
42 45
43 @router_finfun.get('/clasificador', response_model=List[schemas.classifier.ClasFinfun]) 46 @router_finfun.get('/clasificador', response_model=List[schemas.classifier.ClasFinfun])
47 +@not_found
44 def fetch_object_classifier(db: Session = Depends(model.get_db)): 48 def fetch_object_classifier(db: Session = Depends(model.get_db)):
45 return _fetch_classifier('finfun', db) 49 return _fetch_classifier('finfun', db)
46 50
47 51
48 @router_objeto.get('/{object_id}', response_model=schemas.objeto.ClasObjetosEstados) 52 @router_objeto.get('/{object_id}', response_model=schemas.objeto.ClasObjetosEstados)
53 +@not_found
49 def fetch_objeto_estado( 54 def fetch_objeto_estado(
50 object_id: str, 55 object_id: str,
51 db: Session = Depends(model.get_db), 56 db: Session = Depends(model.get_db),
...@@ -65,6 +70,7 @@ def fetch_objeto_estado( ...@@ -65,6 +70,7 @@ def fetch_objeto_estado(
65 70
66 71
67 @router_objeto.get('/{object_id}/entidades', response_model=List[schemas.objeto.ObjetoEntidad]) 72 @router_objeto.get('/{object_id}/entidades', response_model=List[schemas.objeto.ObjetoEntidad])
73 +@not_found
68 def fetch_objeto_entidad( 74 def fetch_objeto_entidad(
69 object_id: str, 75 object_id: str,
70 db: Session = Depends(model.get_db), 76 db: Session = Depends(model.get_db),
...@@ -82,6 +88,7 @@ def fetch_objeto_entidad( ...@@ -82,6 +88,7 @@ def fetch_objeto_entidad(
82 88
83 89
84 @router_objeto.get('/{object_id}/ubigeos', response_model=List[schemas.objeto.ObjetoUbigeo]) 90 @router_objeto.get('/{object_id}/ubigeos', response_model=List[schemas.objeto.ObjetoUbigeo])
91 +@not_found
85 def fetch_objeto_ubigeo( 92 def fetch_objeto_ubigeo(
86 object_id: str, 93 object_id: str,
87 db: Session = Depends(model.get_db), 94 db: Session = Depends(model.get_db),
...@@ -97,6 +104,7 @@ def fetch_objeto_ubigeo( ...@@ -97,6 +104,7 @@ def fetch_objeto_ubigeo(
97 104
98 105
99 @router_objeto.get('/{object_id}/entidades/map', response_model=List[schemas.treemap.TreemapObjetoSingle]) 106 @router_objeto.get('/{object_id}/entidades/map', response_model=List[schemas.treemap.TreemapObjetoSingle])
107 +@not_found
100 def fetch_objeto_treemap( 108 def fetch_objeto_treemap(
101 object_id: str, 109 object_id: str,
102 db: Session = Depends(model.get_db), 110 db: Session = Depends(model.get_db),
...@@ -110,6 +118,7 @@ def fetch_objeto_treemap( ...@@ -110,6 +118,7 @@ def fetch_objeto_treemap(
110 ) 118 )
111 119
112 @router_objeto.get('/{object_id}/entidades/{entidad_id}', response_model=List[schemas.objeto.ObjetoEntidad]) 120 @router_objeto.get('/{object_id}/entidades/{entidad_id}', response_model=List[schemas.objeto.ObjetoEntidad])
121 +@not_found
113 def fetch_objeto_entidad_single( 122 def fetch_objeto_entidad_single(
114 object_id: str, 123 object_id: str,
115 entidad_id: int, 124 entidad_id: int,
...@@ -125,6 +134,7 @@ def fetch_objeto_entidad_single( ...@@ -125,6 +134,7 @@ def fetch_objeto_entidad_single(
125 134
126 135
127 @router_objeto.get('/{object_id}/ubigeos/{ubigeo_id}', response_model=List[schemas.objeto.ObjetoUbigeo]) 136 @router_objeto.get('/{object_id}/ubigeos/{ubigeo_id}', response_model=List[schemas.objeto.ObjetoUbigeo])
137 +@not_found
128 def fetch_objeto_ubigeo_single( 138 def fetch_objeto_ubigeo_single(
129 object_id: str, 139 object_id: str,
130 ubigeo_id: str, 140 ubigeo_id: str,
...@@ -140,6 +150,7 @@ def fetch_objeto_ubigeo_single( ...@@ -140,6 +150,7 @@ def fetch_objeto_ubigeo_single(
140 150
141 151
142 @router_acteco.get('/{acteco_id}', response_model=schemas.acteco.ClasActecoEstados) 152 @router_acteco.get('/{acteco_id}', response_model=schemas.acteco.ClasActecoEstados)
153 +@not_found
143 def fetch_acteco_estado( 154 def fetch_acteco_estado(
144 acteco_id: str, 155 acteco_id: str,
145 db: Session = Depends(model.get_db), 156 db: Session = Depends(model.get_db),
...@@ -159,6 +170,7 @@ def fetch_acteco_estado( ...@@ -159,6 +170,7 @@ def fetch_acteco_estado(
159 170
160 171
161 @router_acteco.get('/{acteco_id}/entidades', response_model=List[schemas.acteco.ActecoEntidad]) 172 @router_acteco.get('/{acteco_id}/entidades', response_model=List[schemas.acteco.ActecoEntidad])
173 +@not_found
162 def fetch_acteco_entidad( 174 def fetch_acteco_entidad(
163 acteco_id: str, 175 acteco_id: str,
164 db: Session = Depends(model.get_db), 176 db: Session = Depends(model.get_db),
...@@ -176,6 +188,7 @@ def fetch_acteco_entidad( ...@@ -176,6 +188,7 @@ def fetch_acteco_entidad(
176 188
177 189
178 @router_acteco.get('/{acteco_id}/ubigeos', response_model=List[schemas.acteco.ActecoUbigeo]) 190 @router_acteco.get('/{acteco_id}/ubigeos', response_model=List[schemas.acteco.ActecoUbigeo])
191 +@not_found
179 def fetch_acteco_ubigeo( 192 def fetch_acteco_ubigeo(
180 acteco_id: str, 193 acteco_id: str,
181 db: Session = Depends(model.get_db), 194 db: Session = Depends(model.get_db),
...@@ -191,6 +204,7 @@ def fetch_acteco_ubigeo( ...@@ -191,6 +204,7 @@ def fetch_acteco_ubigeo(
191 204
192 205
193 @router_acteco.get('/{acteco_id}/entidades/map', response_model=List[schemas.treemap.TreemapActecoSingle]) 206 @router_acteco.get('/{acteco_id}/entidades/map', response_model=List[schemas.treemap.TreemapActecoSingle])
207 +@not_found
194 def fetch_acteco_treemap( 208 def fetch_acteco_treemap(
195 acteco_id: str, 209 acteco_id: str,
196 db: Session = Depends(model.get_db), 210 db: Session = Depends(model.get_db),
...@@ -205,6 +219,7 @@ def fetch_acteco_treemap( ...@@ -205,6 +219,7 @@ def fetch_acteco_treemap(
205 219
206 220
207 @router_acteco.get('/{acteco_id}/entidades/{entidad_id}', response_model=List[schemas.acteco.ActecoEntidad]) 221 @router_acteco.get('/{acteco_id}/entidades/{entidad_id}', response_model=List[schemas.acteco.ActecoEntidad])
222 +@not_found
208 def fetch_acteco_entidad_single( 223 def fetch_acteco_entidad_single(
209 acteco_id: str, 224 acteco_id: str,
210 entidad_id: int, 225 entidad_id: int,
...@@ -220,6 +235,7 @@ def fetch_acteco_entidad_single( ...@@ -220,6 +235,7 @@ def fetch_acteco_entidad_single(
220 235
221 236
222 @router_acteco.get('/{acteco_id}/ubigeos/{ubigeo_id}', response_model=List[schemas.acteco.ActecoUbigeo]) 237 @router_acteco.get('/{acteco_id}/ubigeos/{ubigeo_id}', response_model=List[schemas.acteco.ActecoUbigeo])
238 +@not_found
223 def fetch_acteco_ubigeo_single( 239 def fetch_acteco_ubigeo_single(
224 acteco_id: str, 240 acteco_id: str,
225 ubigeo_id: str, 241 ubigeo_id: str,
...@@ -235,6 +251,7 @@ def fetch_acteco_ubigeo_single( ...@@ -235,6 +251,7 @@ def fetch_acteco_ubigeo_single(
235 251
236 252
237 @router_finfun.get('/{finfun_id}', response_model=schemas.finfun.ClasFinfunEstados) 253 @router_finfun.get('/{finfun_id}', response_model=schemas.finfun.ClasFinfunEstados)
254 +@not_found
238 def fetch_finfun_estado( 255 def fetch_finfun_estado(
239 finfun_id: str, 256 finfun_id: str,
240 db: Session = Depends(model.get_db), 257 db: Session = Depends(model.get_db),
...@@ -254,6 +271,7 @@ def fetch_finfun_estado( ...@@ -254,6 +271,7 @@ def fetch_finfun_estado(
254 271
255 272
256 @router_finfun.get('/{finfun_id}/entidades', response_model=List[schemas.finfun.FinfunEntidad]) 273 @router_finfun.get('/{finfun_id}/entidades', response_model=List[schemas.finfun.FinfunEntidad])
274 +@not_found
257 def fetch_finfun_entidad( 275 def fetch_finfun_entidad(
258 finfun_id: str, 276 finfun_id: str,
259 db: Session = Depends(model.get_db), 277 db: Session = Depends(model.get_db),
...@@ -271,6 +289,7 @@ def fetch_finfun_entidad( ...@@ -271,6 +289,7 @@ def fetch_finfun_entidad(
271 289
272 290
273 @router_finfun.get('/{finfun_id}/ubigeos', response_model=List[schemas.finfun.FinfunUbigeo]) 291 @router_finfun.get('/{finfun_id}/ubigeos', response_model=List[schemas.finfun.FinfunUbigeo])
292 +@not_found
274 def fetch_finfun_ubigeo( 293 def fetch_finfun_ubigeo(
275 finfun_id: str, 294 finfun_id: str,
276 db: Session = Depends(model.get_db), 295 db: Session = Depends(model.get_db),
...@@ -286,6 +305,7 @@ def fetch_finfun_ubigeo( ...@@ -286,6 +305,7 @@ def fetch_finfun_ubigeo(
286 305
287 306
288 @router_finfun.get('/{finfun_id}/entidades/map', response_model=List[schemas.treemap.TreemapFinFunSingle]) 307 @router_finfun.get('/{finfun_id}/entidades/map', response_model=List[schemas.treemap.TreemapFinFunSingle])
308 +@not_found
289 def fetch_finfun_treemap( 309 def fetch_finfun_treemap(
290 finfun_id: str, 310 finfun_id: str,
291 db: Session = Depends(model.get_db), 311 db: Session = Depends(model.get_db),
...@@ -300,6 +320,7 @@ def fetch_finfun_treemap( ...@@ -300,6 +320,7 @@ def fetch_finfun_treemap(
300 320
301 321
302 @router_finfun.get('/{finfun_id}/entidades/{entidad_id}', response_model=List[schemas.finfun.FinfunEntidad]) 322 @router_finfun.get('/{finfun_id}/entidades/{entidad_id}', response_model=List[schemas.finfun.FinfunEntidad])
323 +@not_found
303 def fetch_finfun_entidad_single( 324 def fetch_finfun_entidad_single(
304 finfun_id: str, 325 finfun_id: str,
305 entidad_id: int, 326 entidad_id: int,
...@@ -315,6 +336,7 @@ def fetch_finfun_entidad_single( ...@@ -315,6 +336,7 @@ def fetch_finfun_entidad_single(
315 336
316 337
317 @router_finfun.get('/{finfun_id}/ubigeos/{ubigeo_id}', response_model=List[schemas.finfun.FinfunUbigeo]) 338 @router_finfun.get('/{finfun_id}/ubigeos/{ubigeo_id}', response_model=List[schemas.finfun.FinfunUbigeo])
339 +@not_found
318 def fetch_finfun_ubigeo_single( 340 def fetch_finfun_ubigeo_single(
319 finfun_id: str, 341 finfun_id: str,
320 ubigeo_id: str, 342 ubigeo_id: str,
......
...@@ -5,6 +5,7 @@ from sqlalchemy.orm import Session ...@@ -5,6 +5,7 @@ from sqlalchemy.orm import Session
5 from sqlalchemy import select 5 from sqlalchemy import select
6 6
7 from presupuestov1 import model, schema, schemas, models 7 from presupuestov1 import model, schema, schemas, models
8 +from presupuestov1.routers._decorators import not_found
8 9
9 10
10 router_rubro = APIRouter( 11 router_rubro = APIRouter(
...@@ -23,16 +24,19 @@ router_organismo = APIRouter( ...@@ -23,16 +24,19 @@ router_organismo = APIRouter(
23 ############################################################################### 24 ###############################################################################
24 25
25 @router_rubro.get('/clasificador', response_model=List[schemas.classifier.ClasRubros]) 26 @router_rubro.get('/clasificador', response_model=List[schemas.classifier.ClasRubros])
27 +@not_found
26 def fetch_rubro_classifier(db: Session = Depends(model.get_db)): 28 def fetch_rubro_classifier(db: Session = Depends(model.get_db)):
27 return _fetch_classifier('rubro', db) 29 return _fetch_classifier('rubro', db)
28 30
29 31
30 @router_organismo.get('/clasificador', response_model=List[schemas.classifier.ClasOrganismos]) 32 @router_organismo.get('/clasificador', response_model=List[schemas.classifier.ClasOrganismos])
33 +@not_found
31 def fetch_organismo_classifier(db: Session = Depends(model.get_db)): 34 def fetch_organismo_classifier(db: Session = Depends(model.get_db)):
32 return _fetch_classifier('organismo', db) 35 return _fetch_classifier('organismo', db)
33 36
34 37
35 @router_rubro.get('/{rubro_id}', response_model=schemas.rubro.ClasRubrosEstados) 38 @router_rubro.get('/{rubro_id}', response_model=schemas.rubro.ClasRubrosEstados)
39 +@not_found
36 def fetch_rubro_estado( 40 def fetch_rubro_estado(
37 rubro_id: str, 41 rubro_id: str,
38 db: Session = Depends(model.get_db), 42 db: Session = Depends(model.get_db),
...@@ -52,6 +56,7 @@ def fetch_rubro_estado( ...@@ -52,6 +56,7 @@ def fetch_rubro_estado(
52 56
53 57
54 @router_rubro.get('/{rubro_id}/entidades', response_model=List[schemas.rubro.RubroEntidad]) 58 @router_rubro.get('/{rubro_id}/entidades', response_model=List[schemas.rubro.RubroEntidad])
59 +@not_found
55 def fetch_rubro_entidad( 60 def fetch_rubro_entidad(
56 rubro_id: str, 61 rubro_id: str,
57 db: Session = Depends(model.get_db), 62 db: Session = Depends(model.get_db),
...@@ -69,6 +74,7 @@ def fetch_rubro_entidad( ...@@ -69,6 +74,7 @@ def fetch_rubro_entidad(
69 74
70 75
71 @router_rubro.get('/{rubro_id}/entidades/map', response_model=List[schemas.treemap.TreemapRubroSingle]) 76 @router_rubro.get('/{rubro_id}/entidades/map', response_model=List[schemas.treemap.TreemapRubroSingle])
77 +@not_found
72 def fetch_rubro_treemap( 78 def fetch_rubro_treemap(
73 rubro_id: str, 79 rubro_id: str,
74 db: Session = Depends(model.get_db), 80 db: Session = Depends(model.get_db),
...@@ -84,6 +90,7 @@ def fetch_rubro_treemap( ...@@ -84,6 +90,7 @@ def fetch_rubro_treemap(
84 90
85 91
86 @router_rubro.get('/{rubro_id}/entidades/{entidad_id}', response_model=List[schemas.rubro.RubroEntidad]) 92 @router_rubro.get('/{rubro_id}/entidades/{entidad_id}', response_model=List[schemas.rubro.RubroEntidad])
93 +@not_found
87 def fetch_rubro_entidad_single( 94 def fetch_rubro_entidad_single(
88 rubro_id: str, 95 rubro_id: str,
89 entidad_id: int, 96 entidad_id: int,
...@@ -99,6 +106,7 @@ def fetch_rubro_entidad_single( ...@@ -99,6 +106,7 @@ def fetch_rubro_entidad_single(
99 106
100 107
101 @router_organismo.get('/{organismo_id}', response_model=schemas.organismo.ClasOrganismosEstados) 108 @router_organismo.get('/{organismo_id}', response_model=schemas.organismo.ClasOrganismosEstados)
109 +@not_found
102 def fetch_organismo_estado( 110 def fetch_organismo_estado(
103 organismo_id: str, 111 organismo_id: str,
104 db: Session = Depends(model.get_db), 112 db: Session = Depends(model.get_db),
...@@ -118,6 +126,7 @@ def fetch_organismo_estado( ...@@ -118,6 +126,7 @@ def fetch_organismo_estado(
118 126
119 127
120 @router_organismo.get('/{organismo_id}/entidades', response_model=List[schemas.organismo.OrganismoEntidad]) 128 @router_organismo.get('/{organismo_id}/entidades', response_model=List[schemas.organismo.OrganismoEntidad])
129 +@not_found
121 def fetch_organismo_entidad( 130 def fetch_organismo_entidad(
122 organismo_id: str, 131 organismo_id: str,
123 db: Session = Depends(model.get_db), 132 db: Session = Depends(model.get_db),
...@@ -135,6 +144,7 @@ def fetch_organismo_entidad( ...@@ -135,6 +144,7 @@ def fetch_organismo_entidad(
135 144
136 145
137 @router_organismo.get('/{organismo_id}/entidades/{entidad_id}', response_model=List[schemas.organismo.OrganismoEntidad]) 146 @router_organismo.get('/{organismo_id}/entidades/{entidad_id}', response_model=List[schemas.organismo.OrganismoEntidad])
147 +@not_found
138 def fetch_organismo_entidad_single( 148 def fetch_organismo_entidad_single(
139 organismo_id: str, 149 organismo_id: str,
140 entidad_id: int, 150 entidad_id: int,
......
...@@ -5,6 +5,7 @@ from sqlalchemy.orm import Session, aliased ...@@ -5,6 +5,7 @@ from sqlalchemy.orm import Session, aliased
5 from sqlalchemy import func 5 from sqlalchemy import func
6 6
7 from presupuestov1 import model, schema, schemas, models 7 from presupuestov1 import model, schema, schemas, models
8 +from presupuestov1.routers._decorators import not_found
8 9
9 10
10 router = APIRouter( 11 router = APIRouter(
...@@ -18,6 +19,7 @@ router = APIRouter( ...@@ -18,6 +19,7 @@ router = APIRouter(
18 ############################################################################### 19 ###############################################################################
19 20
20 @router.get('/status', response_model=schemas.daily.UpdateStatus) 21 @router.get('/status', response_model=schemas.daily.UpdateStatus)
22 +@not_found
21 def fetch_status( 23 def fetch_status(
22 db: Session = Depends(model.get_db), 24 db: Session = Depends(model.get_db),
23 ): 25 ):
...@@ -28,6 +30,7 @@ def fetch_status( ...@@ -28,6 +30,7 @@ def fetch_status(
28 30
29 31
30 @router.get('/clasificadores', response_model=List[schemas.daily.EjecucionClasificadores]) 32 @router.get('/clasificadores', response_model=List[schemas.daily.EjecucionClasificadores])
33 +@not_found
31 def fetch_clasificadores( 34 def fetch_clasificadores(
32 db: Session = Depends(model.get_db), 35 db: Session = Depends(model.get_db),
33 query: schema.DailyParams = Depends(), 36 query: schema.DailyParams = Depends(),
...@@ -44,6 +47,7 @@ def fetch_clasificadores( ...@@ -44,6 +47,7 @@ def fetch_clasificadores(
44 47
45 48
46 @router.get('/entidades', response_model=List[schemas.daily.EjecucionEntidades]) 49 @router.get('/entidades', response_model=List[schemas.daily.EjecucionEntidades])
50 +@not_found
47 def fetch_entidades( 51 def fetch_entidades(
48 db: Session = Depends(model.get_db), 52 db: Session = Depends(model.get_db),
49 query: schema.DailyParams = Depends(), 53 query: schema.DailyParams = Depends(),
...@@ -67,6 +71,7 @@ def fetch_entidades( ...@@ -67,6 +71,7 @@ def fetch_entidades(
67 71
68 72
69 @router.get('/timeline', response_model=List[schemas.daily.Timeline]) 73 @router.get('/timeline', response_model=List[schemas.daily.Timeline])
74 +@not_found
70 def fetch_timeline( 75 def fetch_timeline(
71 db: Session = Depends(model.get_db), 76 db: Session = Depends(model.get_db),
72 query: schema.DailyParams = Depends(), 77 query: schema.DailyParams = Depends(),
...@@ -115,6 +120,7 @@ def fetch_timeline( ...@@ -115,6 +120,7 @@ def fetch_timeline(
115 120
116 121
117 @router.get('/timeseries', response_model=List[schemas.daily.TimeSeries]) 122 @router.get('/timeseries', response_model=List[schemas.daily.TimeSeries])
123 +@not_found
118 def fetch_timeseries( 124 def fetch_timeseries(
119 db: Session = Depends(model.get_db), 125 db: Session = Depends(model.get_db),
120 ): 126 ):
......
...@@ -7,6 +7,7 @@ from sqlalchemy.orm import Session ...@@ -7,6 +7,7 @@ from sqlalchemy.orm import Session
7 from sqlalchemy import and_, or_, select 7 from sqlalchemy import and_, or_, select
8 8
9 from presupuestov1 import model, schema, constant, schemas, models, search 9 from presupuestov1 import model, schema, constant, schemas, models, search
10 +from presupuestov1.routers._decorators import not_found
10 11
11 12
12 router_entidad = APIRouter( 13 router_entidad = APIRouter(
...@@ -30,6 +31,7 @@ router_da = APIRouter( ...@@ -30,6 +31,7 @@ router_da = APIRouter(
30 # clas 31 # clas
31 32
32 @router_entidad.get('/clasificador', response_model=List[schemas.classifier.ClasInstitucional]) 33 @router_entidad.get('/clasificador', response_model=List[schemas.classifier.ClasInstitucional])
34 +@not_found
33 def fetch_classifier( 35 def fetch_classifier(
34 db: Session = Depends(model.get_db), 36 db: Session = Depends(model.get_db),
35 ): 37 ):
...@@ -37,6 +39,7 @@ def fetch_classifier( ...@@ -37,6 +39,7 @@ def fetch_classifier(
37 39
38 40
39 @router_ubigeo.get('/clasificador', response_model=List[schemas.classifier.ClasGeografico]) 41 @router_ubigeo.get('/clasificador', response_model=List[schemas.classifier.ClasGeografico])
42 +@not_found
40 def fetch_classifier( 43 def fetch_classifier(
41 db: Session = Depends(model.get_db), 44 db: Session = Depends(model.get_db),
42 ): 45 ):
...@@ -47,6 +50,7 @@ def fetch_classifier( ...@@ -47,6 +50,7 @@ def fetch_classifier(
47 # base 50 # base
48 51
49 @router_entidad.get('/{entity_id:str}', response_model=schemas.entity.ClasInstitucionalIngresosGastos) 52 @router_entidad.get('/{entity_id:str}', response_model=schemas.entity.ClasInstitucionalIngresosGastos)
53 +@not_found
50 def fetch_entity( 54 def fetch_entity(
51 entity_id: str, 55 entity_id: str,
52 db: Session = Depends(model.get_db), 56 db: Session = Depends(model.get_db),
...@@ -63,6 +67,7 @@ def fetch_entity( ...@@ -63,6 +67,7 @@ def fetch_entity(
63 67
64 68
65 @router_ubigeo.get('/{ubigeo_id:str}', response_model=schemas.entity.ClasGeograficoIngresosGastos) 69 @router_ubigeo.get('/{ubigeo_id:str}', response_model=schemas.entity.ClasGeograficoIngresosGastos)
70 +@not_found
66 def fetch_entity( 71 def fetch_entity(
67 ubigeo_id: str, 72 ubigeo_id: str,
68 db: Session = Depends(model.get_db), 73 db: Session = Depends(model.get_db),
...@@ -156,6 +161,7 @@ def fetch_entity_organismos( ...@@ -156,6 +161,7 @@ def fetch_entity_organismos(
156 # private 161 # private
157 ############################################################################### 162 ###############################################################################
158 163
164 +@not_found
159 def get_distribuciones(db, tipo_codigo, entity_id, dimension, query): 165 def get_distribuciones(db, tipo_codigo, entity_id, dimension, query):
160 EntidadDistribucionesSchema = schemas.entity.EntidadDistribucion 166 EntidadDistribucionesSchema = schemas.entity.EntidadDistribucion
161 EntidadDistribuciones = models.entity.EntidadDistribuciones 167 EntidadDistribuciones = models.entity.EntidadDistribuciones
......