Toggle navigation
Toggle navigation
This project
Loading...
Sign in
Rafael Lopez
/
ppto
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Authored by
Rafael Lopez
2026-04-24 11:56:56 -0400
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
83556b86c2aec5608f2cb2fb64be11d865181f43
83556b86
1 parent
f1246636
fix nav teclado2
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
21 additions
and
49 deletions
src/routes/acteco/[codigo]/+page.js
src/routes/finfun/[codigo]/+page.server.js → src/routes/finfun/[codigo]/+page.js
src/routes/objeto/[codigo]/+page.js
src/routes/organismo/[codigo]/+page.js
src/routes/rubro/[codigo]/+page.js
src/routes/ubicacion/[ubigeo]/+page.svelte
src/routes/acteco/[codigo]/+page.js
View file @
83556b8
...
...
@@ -2,26 +2,14 @@ export const ssr = false;
import
{
error
}
from
'@sveltejs/kit'
;
import
{
API_HOST
}
from
'$lib/api.js'
;
const
API_BASE
=
API_HOST
+
'/api/acteco'
;
// Jerarquía acteco: códigos con punto "1" → "1.1" → "1.1.1"
// Todos tienen nivel "actividad" en la API, derivamos la profundidad del código
function
getDepth
(
codigo
)
{
return
String
(
codigo
).
split
(
'.'
).
length
;
}
function
getParentCode
(
codigo
)
{
const
parts
=
String
(
codigo
).
split
(
'.'
);
if
(
parts
.
length
<=
1
)
return
null
;
return
parts
.
slice
(
0
,
-
1
).
join
(
'.'
);
}
export
async
function
load
({
params
})
{
export
async
function
load
({
params
,
fetch
})
{
const
{
codigo
}
=
params
;
const
res
=
await
fetch
(
`
${
API_BASE
}
/
${
codigo
}
`
);
const
res
=
await
fetch
(
`
/api/acteco-data?codigo=
${
codigo
}
&tipo=clasificador
`
);
if
(
!
res
.
ok
)
throw
error
(
404
,
'Sector económico no encontrado'
);
const
acteco
=
await
res
.
json
();
...
...
@@ -29,7 +17,7 @@ export async function load({ params }) {
let
hijos
=
[];
try
{
const
clasRes
=
await
fetch
(
`
${
API_BASE
}
/clasificador`
);
const
clasRes
=
await
fetch
(
'/api/acteco-clasificador'
);
if
(
clasRes
.
ok
)
{
const
clasificador
=
await
clasRes
.
json
();
const
depth
=
getDepth
(
codigo
);
...
...
src/routes/finfun/[codigo]/+page.
server.
js
→
src/routes/finfun/[codigo]/+page.js
View file @
83556b8
export
const
ssr
=
false
;
import
{
error
}
from
'@sveltejs/kit'
;
import
{
API_HOST
}
from
'$lib/api.js'
;
const
API_BASE
=
API_HOST
+
'/api/finfun'
;
// Jerarquía finfun: Finalidad → Grupo Función → Función
// Códigos con punto: "1" (finalidad), "1.1" (grpfuncion), "1.1.1" (función)
...
...
@@ -26,7 +28,7 @@ export async function load({ params }) {
const
{
codigo
}
=
params
;
// Cargar datos del finfun desde la API
const
res
=
await
fetch
(
`
${
API_BASE
}
/
${
codigo
}
`
);
const
res
=
await
fetch
(
`
/api/finfun-data?codigo=
${
codigo
}
&tipo=clasificador
`
);
if
(
!
res
.
ok
)
throw
error
(
404
,
'Finalidad/Función no encontrada'
);
const
finfun
=
await
res
.
json
();
...
...
@@ -37,7 +39,7 @@ export async function load({ params }) {
let
hijos
=
[];
try
{
const
clasRes
=
await
fetch
(
`
${
API_BASE
}
/
clasificador`
);
const
clasRes
=
await
fetch
(
`
/api/finfun-
clasificador`
);
if
(
clasRes
.
ok
)
{
const
clasificador
=
await
clasRes
.
json
();
...
...
src/routes/objeto/[codigo]/+page.js
View file @
83556b8
...
...
@@ -2,18 +2,13 @@ export const ssr = false;
import
{
error
}
from
'@sveltejs/kit'
;
import
{
API_HOST
}
from
'$lib/api.js'
;
const
API_BASE
=
API_HOST
+
'/api/objeto'
;
export
async
function
load
({
params
})
{
export
async
function
load
({
params
,
fetch
})
{
const
{
codigo
}
=
params
;
// Cargar clasificador desde la API
const
res
=
await
fetch
(
`
${
API_BASE
}
/
${
codigo
}
`
);
const
res
=
await
fetch
(
`/api/objeto-data?codigo=
${
codigo
}
&tipo=clasificador`
);
if
(
!
res
.
ok
)
throw
error
(
404
,
'Objeto no encontrado'
);
const
objeto
=
await
res
.
json
();
// Derivar padres e hijos del código
const
nivel
=
objeto
.
nivel
;
let
padresCodes
=
[];
...
...
@@ -32,19 +27,17 @@ export async function load({ params }) {
padresCodes
=
[
codigo
.
charAt
(
0
)
+
'0000'
];
}
// Cargar padres e hijos en paralelo desde la API
const
[
padresResults
,
hijosResult
]
=
await
Promise
.
all
([
Promise
.
all
(
padresCodes
.
map
(
async
(
c
)
=>
{
try
{
const
r
=
await
fetch
(
`
${
API_BASE
}
/
${
c
}
`
);
const
r
=
await
fetch
(
`
/api/objeto-data?codigo=
${
c
}
&tipo=clasificador
`
);
if
(
r
.
ok
)
return
await
r
.
json
();
}
catch
{}
return
null
;
})),
(
async
()
=>
{
// Hijos: buscar en el clasificador
try
{
const
r
=
await
fetch
(
`
${
API_BASE
}
/clasificador`
);
const
r
=
await
fetch
(
'/api/objeto-clasificador'
);
if
(
!
r
.
ok
)
return
[];
const
all
=
await
r
.
json
();
...
...
@@ -63,10 +56,5 @@ export async function load({ params }) {
const
padres
=
padresResults
.
filter
(
Boolean
).
sort
((
a
,
b
)
=>
a
.
objeto
.
localeCompare
(
b
.
objeto
));
const
hijos
=
hijosResult
.
sort
((
a
,
b
)
=>
a
.
objeto
.
localeCompare
(
b
.
objeto
));
return
{
objeto
,
padres
,
hijos
,
nEntidades
:
0
};
return
{
objeto
,
padres
,
hijos
,
nEntidades
:
0
};
}
...
...
src/routes/organismo/[codigo]/+page.js
View file @
83556b8
...
...
@@ -2,13 +2,10 @@ export const ssr = false;
import
{
error
}
from
'@sveltejs/kit'
;
import
{
API_HOST
}
from
'$lib/api.js'
;
const
API_BASE
=
API_HOST
+
'/api/organismo'
;
export
async
function
load
({
params
})
{
export
async
function
load
({
params
,
fetch
})
{
const
{
codigo
}
=
params
;
const
res
=
await
fetch
(
`
${
API_BASE
}
/
${
codigo
}
`
);
const
res
=
await
fetch
(
`
/api/organismo-data?codigo=
${
codigo
}
&tipo=clasificador
`
);
if
(
!
res
.
ok
)
throw
error
(
404
,
'Organismo no encontrado'
);
const
organismo
=
await
res
.
json
();
...
...
@@ -16,7 +13,7 @@ export async function load({ params }) {
let
hijos
=
[];
try
{
const
clasRes
=
await
fetch
(
`
${
API_BASE
}
/clasificador`
);
const
clasRes
=
await
fetch
(
'/api/organismo-clasificador'
);
if
(
clasRes
.
ok
)
{
const
clasificador
=
await
clasRes
.
json
();
const
current
=
clasificador
.
find
(
c
=>
String
(
c
.
organismo
)
===
codigo
);
...
...
src/routes/rubro/[codigo]/+page.js
View file @
83556b8
...
...
@@ -2,13 +2,10 @@ export const ssr = false;
import
{
error
}
from
'@sveltejs/kit'
;
import
{
API_HOST
}
from
'$lib/api.js'
;
const
API_BASE
=
API_HOST
+
'/api/rubro'
;
export
async
function
load
({
params
})
{
export
async
function
load
({
params
,
fetch
})
{
const
{
codigo
}
=
params
;
const
res
=
await
fetch
(
`
${
API_BASE
}
/
${
codigo
}
`
);
const
res
=
await
fetch
(
`
/api/rubro-data?codigo=
${
codigo
}
&tipo=clasificador
`
);
if
(
!
res
.
ok
)
throw
error
(
404
,
'Rubro no encontrado'
);
const
rubro
=
await
res
.
json
();
...
...
@@ -17,7 +14,7 @@ export async function load({ params }) {
let
hijos
=
[];
try
{
const
clasRes
=
await
fetch
(
`
${
API_BASE
}
/clasificador`
);
const
clasRes
=
await
fetch
(
'/api/rubro-clasificador'
);
if
(
clasRes
.
ok
)
{
const
clasificador
=
await
clasRes
.
json
();
const
s
=
String
(
codigo
).
padStart
(
5
,
'0'
);
...
...
src/routes/ubicacion/[ubigeo]/+page.svelte
View file @
83556b8
...
...
@@ -102,7 +102,7 @@
// Resetear al cambiar de ubicación
let prevCodigo = codigoSeleccionado;
$effect(() => {
if (
data.gestionInicial !== gestionSeleccionada ||
codigoSeleccionado !== prevCodigo) {
if (codigoSeleccionado !== prevCodigo) {
prevCodigo = codigoSeleccionado;
gestionSeleccionada = data.gestionInicial;
distribucionesData = data.distribucionesData;
...
...
Please
register
or
login
to post a comment