utn-cli 2.1.3 → 2.1.4
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.
package/package.json
CHANGED
|
@@ -9,6 +9,111 @@ class Servicio1 {
|
|
|
9
9
|
|
|
10
10
|
RegistrarElServicio() {
|
|
11
11
|
const NombreDelServicio = 'Servicio1';
|
|
12
|
+
|
|
13
|
+
// El segundo parámetro de RegistrarElServicio define la tarjeta (o tarjetas) que
|
|
14
|
+
// aparecerán en el dashboard del módulo. Puede ser un objeto o un arreglo de objetos.
|
|
15
|
+
// Si se omite, el servicio se registra sin crear ninguna tarjeta.
|
|
16
|
+
//
|
|
17
|
+
// Campos comunes a todos los tipos:
|
|
18
|
+
// 'Tipo' — 'Única' | 'Múltiple' | 'Reporte' | 'Personalizada'
|
|
19
|
+
// 'Posición' — Número entero; menor = aparece antes. Use múltiplos de 10.
|
|
20
|
+
// 'Título' — Texto visible en la tarjeta del dashboard.
|
|
21
|
+
// 'Descripción' — Texto secundario de la tarjeta.
|
|
22
|
+
// 'RequierePermisoExtra' — true: solo visible para usuarios con permiso extra.
|
|
23
|
+
// 'Activa' — false: la tarjeta existe pero no se muestra.
|
|
24
|
+
//
|
|
25
|
+
// ── Tipo 'Única' ────────────────────────────────────────────────────────────────
|
|
26
|
+
// Tarjeta de acceso directo a una sola ruta.
|
|
27
|
+
//
|
|
28
|
+
// Miscelaneas.RegistrarElServicio(NombreDelServicio, {
|
|
29
|
+
// 'Tipo': 'Única',
|
|
30
|
+
// 'Posición': 10,
|
|
31
|
+
// 'Título': 'Mi sección',
|
|
32
|
+
// 'Descripción': 'Descripción breve de la sección',
|
|
33
|
+
// 'Ícono': 'settings', // Nombre de ícono de Material Icons
|
|
34
|
+
// 'RutaASeguir': 'miRuta', // Ruta relativa sin barra inicial
|
|
35
|
+
// 'ColorDeBorde': '#3498db', // Opcional; omitir para color predeterminado
|
|
36
|
+
// 'RequierePermisoExtra': false,
|
|
37
|
+
// 'Activa': true
|
|
38
|
+
// });
|
|
39
|
+
//
|
|
40
|
+
// ── Tipo 'Múltiple' ──────────────────────────────────────────────────────────────
|
|
41
|
+
// Tarjeta de menú desplegable con varias opciones de navegación.
|
|
42
|
+
//
|
|
43
|
+
// Miscelaneas.RegistrarElServicio(NombreDelServicio, {
|
|
44
|
+
// 'Tipo': 'Múltiple',
|
|
45
|
+
// 'Posición': 20,
|
|
46
|
+
// 'Título': 'Mi sección',
|
|
47
|
+
// 'Descripción': 'Descripción breve de la sección',
|
|
48
|
+
// 'Rutas': [
|
|
49
|
+
// { 'Nombre': 'Opción A', 'Ruta': 'tablaOpcionA' },
|
|
50
|
+
// { 'Nombre': 'Opción B', 'Ruta': 'tablaOpcionB' },
|
|
51
|
+
// { 'Nombre': 'Opción C', 'Ruta': 'tablaOpcionC' }
|
|
52
|
+
// ],
|
|
53
|
+
// 'RequierePermisoExtra': false,
|
|
54
|
+
// 'Activa': true
|
|
55
|
+
// });
|
|
56
|
+
//
|
|
57
|
+
// ── Tipo 'Reporte' ───────────────────────────────────────────────────────────────
|
|
58
|
+
// Tarjeta que, al hacer clic, genera y descarga un reporte.
|
|
59
|
+
// El valor de 'ReporteAGenerar' debe coincidir con el identificador manejado
|
|
60
|
+
// en el método GenerarReporte() del componente ContenedorPrincipalComponent.
|
|
61
|
+
//
|
|
62
|
+
// Miscelaneas.RegistrarElServicio(NombreDelServicio, {
|
|
63
|
+
// 'Tipo': 'Reporte',
|
|
64
|
+
// 'Posición': 30,
|
|
65
|
+
// 'Título': 'Mi reporte',
|
|
66
|
+
// 'Descripción': 'Descarga el reporte de ejemplo en formato CSV',
|
|
67
|
+
// 'Ícono': 'download',
|
|
68
|
+
// 'ReporteAGenerar': 'ElReporte1', // Identificador del reporte en el frontend
|
|
69
|
+
// 'RequierePermisoExtra': false,
|
|
70
|
+
// 'Activa': true
|
|
71
|
+
// });
|
|
72
|
+
//
|
|
73
|
+
// ── Tipo 'Personalizada' ─────────────────────────────────────────────────────────
|
|
74
|
+
// Tarjeta que ejecuta una acción programada definida en el frontend.
|
|
75
|
+
// El valor de 'Acción' debe coincidir con el identificador manejado
|
|
76
|
+
// en el método EjecutarAccionPersonalizada() del componente ContenedorPrincipalComponent.
|
|
77
|
+
//
|
|
78
|
+
// Miscelaneas.RegistrarElServicio(NombreDelServicio, {
|
|
79
|
+
// 'Tipo': 'Personalizada',
|
|
80
|
+
// 'Posición': 40,
|
|
81
|
+
// 'Título': 'Mi acción',
|
|
82
|
+
// 'Descripción': 'Ejecuta una acción personalizada',
|
|
83
|
+
// 'Ícono': 'bolt',
|
|
84
|
+
// 'Etiqueta': 'Ejecutar', // Texto del botón dentro de la tarjeta
|
|
85
|
+
// 'Acción': 'MiAccionPersonalizada', // Identificador de la acción en el frontend
|
|
86
|
+
// 'RequierePermisoExtra': false,
|
|
87
|
+
// 'Activa': true
|
|
88
|
+
// });
|
|
89
|
+
//
|
|
90
|
+
// ── Múltiples tarjetas a la vez ──────────────────────────────────────────────────
|
|
91
|
+
// El segundo parámetro también acepta un arreglo para registrar varias tarjetas
|
|
92
|
+
// en una sola llamada (útil cuando un servicio expone más de una sección).
|
|
93
|
+
//
|
|
94
|
+
// Miscelaneas.RegistrarElServicio(NombreDelServicio, [
|
|
95
|
+
// {
|
|
96
|
+
// 'Tipo': 'Única',
|
|
97
|
+
// 'Posición': 10,
|
|
98
|
+
// 'Título': 'Sección A',
|
|
99
|
+
// 'Descripción': 'Descripción de la sección A',
|
|
100
|
+
// 'Ícono': 'dashboard',
|
|
101
|
+
// 'RutaASeguir': 'tablaSeccionA',
|
|
102
|
+
// 'RequierePermisoExtra': false,
|
|
103
|
+
// 'Activa': true
|
|
104
|
+
// },
|
|
105
|
+
// {
|
|
106
|
+
// 'Tipo': 'Única',
|
|
107
|
+
// 'Posición': 20,
|
|
108
|
+
// 'Título': 'Sección B',
|
|
109
|
+
// 'Descripción': 'Descripción de la sección B',
|
|
110
|
+
// 'Ícono': 'bar_chart',
|
|
111
|
+
// 'RutaASeguir': 'tablaSeccionB',
|
|
112
|
+
// 'RequierePermisoExtra': false,
|
|
113
|
+
// 'Activa': true
|
|
114
|
+
// }
|
|
115
|
+
// ]);
|
|
116
|
+
|
|
12
117
|
Miscelaneas.RegistrarElServicio(NombreDelServicio);
|
|
13
118
|
console.log("Se ha creado el servicio: " + NombreDelServicio);
|
|
14
119
|
}
|
|
@@ -39,8 +144,8 @@ class Servicio1 {
|
|
|
39
144
|
// informacionDelArchivo.Etiquetas = Etiquetas;
|
|
40
145
|
// await ejecutarConsulta("INSERT INTO `" + this.NombreDelRepositorioDeLaBaseDeDatos.slice(0, -3) + "`.`Archivos`\
|
|
41
146
|
// VALUES (?, ?, ?, ?, ?, NOW(4), ?)"
|
|
42
|
-
// , [Respuesta.insertId, Resultado.
|
|
43
|
-
// , Etiquetas, Resultado.
|
|
147
|
+
// , [Respuesta.insertId, Resultado.Identificador, informacionDelArchivo.rutaDeArchivo, informacionDelArchivo.nombreDeArchivo
|
|
148
|
+
// , Etiquetas, Resultado.Identificador]);
|
|
44
149
|
// return informacionDelArchivo;
|
|
45
150
|
// }
|
|
46
151
|
// return;
|
|
@@ -50,7 +155,7 @@ class Servicio1 {
|
|
|
50
155
|
// return await ejecutarConsulta("SELECT `BeneficioEstudiantilId`, `Nombre`, `Tipo`, `Estado` FROM `vve-bybe`.`BYBE_BeneficiosEstudiantiles`");
|
|
51
156
|
// }
|
|
52
157
|
|
|
53
|
-
// // Ejemplo de listar con paginador
|
|
158
|
+
// // Ejemplo de listar con paginador
|
|
54
159
|
// async listar(Parametros) {
|
|
55
160
|
// let Resultados = undefined;
|
|
56
161
|
// let ORDERBY = "";
|
|
@@ -109,7 +214,7 @@ class Servicio1 {
|
|
|
109
214
|
// async agergar(Datos) {
|
|
110
215
|
// return ejecutarConsulta("INSERT INTO `vve-bybe`.`BYBE_BeneficiosEstudiantiles` VALUES (NULL,\
|
|
111
216
|
// ?, ?, 'Activo', NOW(4), ?)"
|
|
112
|
-
// , [Datos.Nombre, Datos.Tipo, Resultado.
|
|
217
|
+
// , [Datos.Nombre, Datos.Tipo, Resultado.Identificador]);
|
|
113
218
|
// }
|
|
114
219
|
|
|
115
220
|
// async borrar(Datos) {
|
|
@@ -122,7 +227,7 @@ class Servicio1 {
|
|
|
122
227
|
// SET `Nombre` = ?, `Tipo` = ?, `Estado` = ?\
|
|
123
228
|
// , `LastUpdate` = NOW(4), `LastUser` = ?\
|
|
124
229
|
// WHERE `BeneficioEstudiantilId` = ?"
|
|
125
|
-
// , [Datos.Nombre, Datos.Tipo, Datos.Estado, Resultado.
|
|
230
|
+
// , [Datos.Nombre, Datos.Tipo, Datos.Estado, Resultado.Identificador, Datos.BeneficioEstudiantilId]);
|
|
126
231
|
// }
|
|
127
232
|
|
|
128
233
|
// async detalle(BeneficioEstudiantilId) {
|