Crear Módulos para Aplicaciones Base
Documentación: Flujo Crear Módulos para Aplicaciones Base
Descripción
La creación de módulos para aplicaciones base del tenant se realiza a través del endpoint de aplicaciones. Los módulos permiten extender la funcionalidad de una aplicación y asociar features específicas.
Pasos para Crear un Módulo
Para crear un módulo en una aplicación base, utiliza la siguiente solicitud POST:
POST https://apolo-app-platcom-platform-bff-api-api.cencosudx.com/applications/{application_id}/modules
Nota: Reemplaza
{application_id}con el ID de la aplicación base donde deseas crear el módulo.
Cuerpo de la Solicitud
{
"name": "security_module",
"label": "Modulo Seguridad PE",
"scope_id": "66c666908bd2409eab6f9e26",
"position": 1,
"is_active": true,
"config": {
"assets": {
"val_1": "test_1"
},
"__TYPE__": "DEFAULT"
},
"path": "/security-module/:moduleId",
"icon": "description",
"features": [
{
"label": "Reportes",
"icon": "description",
"position": 1,
"grouped": false,
"assets": {},
"children": [
{
"label": "Usuarios",
"icon": "description",
"position": 1,
"grouped": true,
"path": "/:module_id/users_abm",
"assets": {}
},
{
"label": "Roles/Permisos",
"icon": "description",
"position": 2,
"grouped": true,
"path": "/:module_id/users_agp",
"assets": {}
},
{
"label": "Logging Usuarios",
"icon": "description",
"position": 3,
"grouped": true,
"path": "/:module_id/user_logging_logs",
"assets": {}
},
{
"label": "Logging Roles/Permisos",
"icon": "description",
"position": 4,
"grouped": true,
"path": "/:module_id/user_roles_logs",
"assets": {}
}
]
}
]
}
Campos Detallados
Descripción de los Campos:
| Campo | Tipo | Descripción |
|---|---|---|
| name | string | Nombre único e identificador del módulo. |
| label | string | Etiqueta descriptiva del módulo visible para el usuario. |
| scope_id | string | Identificador del scope asociado al módulo. |
| position | number | Posición ordinal del módulo en la aplicación. |
| is_active | boolean | Indica si el módulo está activo y disponible. |
| config | object | Objeto de configuración adicional del módulo. |
| └ assets | object | Valores personalizados para el módulo (clave-valor). |
| └ TYPE | string | Tipo de configuración (por ejemplo, DEFAULT). |
| path | string | Ruta de acceso al módulo en la aplicación. |
| icon | string | Nombre del icono representativo del módulo. |
| features | object[] | Lista de features (funcionalidades) asociadas al módulo. |
| └ label | string | Nombre descriptivo del feature. |
| └ icon | string | Icono representativo del feature. |
| └ position | number | Posición ordinal del feature dentro del módulo. |
| └ grouped | boolean | Indica si el feature está agrupado con otros. |
| └ assets | object | Valores personalizados del feature. |
| └ children | object[] | Subfeatures o funcionalidades anidadas dentro del feature. |
| └ label | string | Nombre del subfeature. |
| └ icon | string | Icono del subfeature. |
| └ position | number | Posición ordinal del subfeature. |
| └ grouped | boolean | Indica si el subfeature está agrupado. |
| └ path | string | Ruta de acceso al subfeature. |
| └ assets | object | Valores personalizados del subfeature. |
Proceso
- El usuario accede al portal de desarrolladores y navega a la sección de aplicaciones.
- Selecciona la aplicación base a la cual desea agregar un módulo.
- Obtiene el ID de la aplicación base seleccionada.
- Selecciona la opción para crear un nuevo módulo.
- Completa el formulario con los datos requeridos (ver tabla de campos).
- Configura las features y subfeatures asociadas al módulo.
- El sistema valida la información ingresada.
- Si la validación es exitosa, se realiza la solicitud POST al endpoint correspondiente.
- El sistema recibe la respuesta y notifica al usuario el resultado de la operación.
Pasos principales
- Ingresar al portal y autenticarse.
- Ir a la sección "Aplicaciones" y seleccionar la aplicación base deseada.
- Copiar o anotar el ID de la aplicación base (application_id).
- Hacer clic en "Crear nuevo módulo".
- Completar los campos obligatorios: name, label, scope_id, position, path e icon.
- (Opcional) Configurar propiedades adicionales en el objeto config si corresponde.
- Agregar features y estructurar las funcionalidades del módulo.
- Definir la jerarquía de children para features anidadas si es necesario.
- Enviar el formulario y esperar confirmación.
Consideraciones
- Los campos name, label, scope_id, position, path e icon son obligatorios.
- El parámetro application_id en la URL debe ser reemplazado por el ID real de la aplicación base donde se creará el módulo.
- El name del módulo debe ser único dentro de la aplicación base.
- La estructura de features permite crear jerarquías mediante el array children.
- El campo grouped permite agrupar features relacionadas visualmente en la interfaz.
- Los valores de position determinan el orden de visualización de módulos y features.
- El campo is_active permite activar o desactivar módulos sin eliminarlos.
- El sistema puede requerir permisos específicos para crear o modificar módulos.
- Se recomienda documentar internamente los cambios realizados para futuras referencias.
- La gestión de módulos (creación, actualización, consulta y eliminación) se realiza siempre a través del endpoint de aplicaciones. Consulta el controlador de aplicaciones para más detalles sobre las operaciones disponibles.