Saltar al contenido principal

Modelo Técnico: Configuration

Ubicación SSoT: com.neosystima.app.modules.tenant.data.model.Configuration

Campo API: category

String

1. Definición de Negocio

AtributoDetalle
EtiquetaCategoría / Scope
DescripciónNivel de aplicación de la configuración (ej: SYSTEM, USER).
DominioStatusConstants.SCOPES
Público🟢

2. Capa de Interfaz (Frontend)

RequerimientoReglas Visuales
Grilla: 🟢
Forms: 🟢
Formato: Texto
Regla UI: Selector de categoría.

3. Seguridad y Auditoría

ParámetroValor
SensibilidadLOW
Encriptado🔴
Indexado🔴
Auditado🟢

4. Especificaciones Técnicas

  • Valor Default: USER
  • Fuente / Dueño: Sistema / Sistema
  • Validaciones Raw: N/A
  • Longitud Max: 50

Ejemplo de Integración:

{
"category": "SYSTEM"
}

Campo API: configGroup

String REQUIRED

1. Definición de Negocio

AtributoDetalle
EtiquetaGrupo de Configuración
DescripciónAgrupador lógico de parámetros (ej: UI, SYSTEM, NOTIFICATIONS).
DominioMódulos del Sistema
Público🟢

2. Capa de Interfaz (Frontend)

RequerimientoReglas Visuales
Grilla: 🟢
Forms: 🟢
Formato: UPPERCASE
Regla UI: Texto corto en mayúsculas. Define pestañas en el panel de configuración.

3. Seguridad y Auditoría

ParámetroValor
SensibilidadLOW
Encriptado🔴
Indexado🟢
Auditado🟢

4. Especificaciones Técnicas

  • Valor Default: GENERAL
  • Fuente / Dueño: Sistema / Sistema
  • Validaciones Raw: Único junto con el nombre.
  • Longitud Max: 20

Ejemplo de Integración:

{
"configGroup": "DISPLAY_SETTINGS"
}

Campo API: dependencyName

String?

1. Definición de Negocio

AtributoDetalle
EtiquetaClave de Dependencia
DescripciónNombre de otra configuración de la que esta depende para ser visible.
DominioConfig Names
Público🟢

2. Capa de Interfaz (Frontend)

RequerimientoReglas Visuales
Grilla: 🔴
Forms: 🔴
Formato: Texto
Regla UI: Lógica condicional de UI.

3. Seguridad y Auditoría

ParámetroValor
SensibilidadLOW
Encriptado🔴
Indexado🔴
Auditado🟢

4. Especificaciones Técnicas

  • Valor Default: N/A
  • Fuente / Dueño: Sistema / Sistema
  • Validaciones Raw: N/A
  • Longitud Max: 100

Ejemplo de Integración:

{
"dependencyName": "ENABLE_DARK_MODE"
}

Campo API: dependencyValue

String?

1. Definición de Negocio

AtributoDetalle
EtiquetaValor de Dependencia
DescripciónValor que debe tener la 'Clave de Dependencia' para que este campo se habilite.
DominioValores Dinámicos
Público🟢

2. Capa de Interfaz (Frontend)

RequerimientoReglas Visuales
Grilla: 🔴
Forms: 🔴
Formato: Texto
Regla UI: Lógica condicional de UI.

3. Seguridad y Auditoría

ParámetroValor
SensibilidadLOW
Encriptado🔴
Indexado🔴
Auditado🟢

4. Especificaciones Técnicas

  • Valor Default: N/A
  • Fuente / Dueño: Sistema / Sistema
  • Validaciones Raw: N/A
  • Longitud Max: 255

Ejemplo de Integración:

{
"dependencyValue": "true"
}

Campo API: description

String?

1. Definición de Negocio

AtributoDetalle
EtiquetaDescripción / Ayuda
DescripciónTexto explicativo que ayuda al administrador a entender qué cambia esta configuración.
DominioTexto libre
Público🟢

2. Capa de Interfaz (Frontend)

RequerimientoReglas Visuales
Grilla: 🔴
Forms: 🟢
Formato: Texto Largo
Regla UI: Se muestra como un Tooltip o texto de ayuda debajo del campo.

3. Seguridad y Auditoría

ParámetroValor
SensibilidadLOW
Encriptado🔴
Indexado🔴
Auditado🟢

4. Especificaciones Técnicas

  • Valor Default: N/A
  • Fuente / Dueño: Sistema / Sistema
  • Validaciones Raw: Máximo 350 caracteres.
  • Longitud Max: 350

Ejemplo de Integración:

{
"description": "Define el color principal de los botones de la App."
}

Campo API: name

String REQUIRED

1. Definición de Negocio

AtributoDetalle
EtiquetaNombre de la Clave
DescripciónIdentificador único de la configuración dentro de su grupo.
DominioClaves técnicas
Público🟢

2. Capa de Interfaz (Frontend)

RequerimientoReglas Visuales
Grilla: 🟢
Forms: 🟢
Formato: SNAKE_CASE
Regla UI: Texto de solo lectura para el usuario final.

3. Seguridad y Auditoría

ParámetroValor
SensibilidadLOW
Encriptado🔴
Indexado🟢
Auditado🟢

4. Especificaciones Técnicas

  • Valor Default: N/A
  • Fuente / Dueño: Sistema / Sistema
  • Validaciones Raw: Único por grupo.
  • Longitud Max: 25

Ejemplo de Integración:

{
"name": "PRIMARY_COLOR, SESSION_TIMEOUT"
}

Campo API: sortOrder

Int

1. Definición de Negocio

AtributoDetalle
EtiquetaOrden
DescripciónPosición relativa dentro del grupo para organizar el formulario.
DominioNumérico
Público🟢

2. Capa de Interfaz (Frontend)

RequerimientoReglas Visuales
Grilla: 🔴
Forms: 🔴
Formato: Entero
Regla UI: N/A

3. Seguridad y Auditoría

ParámetroValor
SensibilidadLOW
Encriptado🔴
Indexado🔴
Auditado🟢

4. Especificaciones Técnicas

  • Valor Default: 0
  • Fuente / Dueño: Sistema / Sistema
  • Validaciones Raw: N/A
  • Longitud Max: 255

Ejemplo de Integración:

{
"sortOrder": "1, 2, 10"
}

Campo API: status

Status?

1. Definición de Negocio

AtributoDetalle
EtiquetaEstado
DescripciónIndica si la configuración está operativa en el sistema.
DominioTabla Status
Público🟢

2. Capa de Interfaz (Frontend)

RequerimientoReglas Visuales
Grilla: 🟢
Forms: 🟢
Formato: ID Foráneo
Regla UI: Selector de estados.

3. Seguridad y Auditoría

ParámetroValor
SensibilidadLOW
Encriptado🔴
Indexado🟢
Auditado🟢

4. Especificaciones Técnicas

  • Valor Default: N/A
  • Fuente / Dueño: Sistema / Sistema
  • Validaciones Raw: Obligatorio.
  • Longitud Max: 255

Ejemplo de Integración:

{
"status": "1 (Activo), 2 (Inactivo)"
}

Campo API: type

ConfigurationType REQUIRED

1. Definición de Negocio

AtributoDetalle
EtiquetaTipo de Dato
DescripciónDefine cómo se debe interpretar y renderizar el valor (TEXT, BOOLEAN, NUMBER, COLOR).
DominioConfigurationType
Público🟢

2. Capa de Interfaz (Frontend)

RequerimientoReglas Visuales
Grilla: 🔴
Forms: 🟢
Formato: Enum
Regla UI: Selector de tipos predefinidos.

3. Seguridad y Auditoría

ParámetroValor
SensibilidadLOW
Encriptado🔴
Indexado🔴
Auditado🟢

4. Especificaciones Técnicas

  • Valor Default: TEXT
  • Fuente / Dueño: Sistema / Sistema
  • Validaciones Raw: Obligatorio.
  • Longitud Max: 20

Ejemplo de Integración:

{
"type": "BOOLEAN"
}

Campo API: value

String REQUIRED

1. Definición de Negocio

AtributoDetalle
EtiquetaValor Configurado
DescripciónContenido real del parámetro de configuración.
DominioDependiente del tipo
Público🟢

2. Capa de Interfaz (Frontend)

RequerimientoReglas Visuales
Grilla: 🟢
Forms: 🟢
Formato: Dinámico
Regla UI: El componente de entrada cambia según el 'type' (Switch, Input, ColorPicker).

3. Seguridad y Auditoría

ParámetroValor
SensibilidadMEDIUM
Encriptado🔴
Indexado🔴
Auditado🟢

4. Especificaciones Técnicas

  • Valor Default: N/A
  • Fuente / Dueño: Manual / Sistema
  • Validaciones Raw: Máximo 500 caracteres.
  • Longitud Max: 500

Ejemplo de Integración:

{
"value": "#FFFFFF, 3600, true"
}

Campo API: createdAt

Instant? REQUIRED

1. Definición de Negocio

AtributoDetalle
EtiquetaFecha de Creación
DescripciónFecha y hora exacta en la que se insertó el registro por primera vez.
DominioFechas válidas pasadas o presentes
Público🟢

2. Capa de Interfaz (Frontend)

RequerimientoReglas Visuales
Grilla: 🔴
Forms: 🟢
Formato: Timestamp (ISO 8601)
Regla UI: Selector de fecha/hora. En creación está oculto, en edición se muestra como solo lectura.

3. Seguridad y Auditoría

ParámetroValor
SensibilidadLOW
Encriptado🔴
Indexado🔴
Auditado🔴

4. Especificaciones Técnicas

  • Valor Default: CURRENT_TIMESTAMP
  • Fuente / Dueño: Generado automáticamente por el framework de auditoría / Sistema
  • Validaciones Raw: No modificable tras su creación (updatable = false).
  • Longitud Max: 255

Ejemplo de Integración:

{
"createdAt": "2025-10-15T14:30:00Z"
}

Campo API: createdBy

String?

1. Definición de Negocio

AtributoDetalle
EtiquetaCreado Por
DescripciónIdentificador principal del usuario que creó originalmente el registro.
DominioUsuarios válidos en el contexto de seguridad
Público🟢

2. Capa de Interfaz (Frontend)

RequerimientoReglas Visuales
Grilla: 🔴
Forms: 🟢
Formato: Alfanumérico
Regla UI: Campo de texto estándar. En creación está oculto, en edición se muestra como solo lectura.

3. Seguridad y Auditoría

ParámetroValor
SensibilidadMEDIUM
Encriptado🔴
Indexado🔴
Auditado🔴

4. Especificaciones Técnicas

  • Valor Default: N/A
  • Fuente / Dueño: Extraído del contexto de seguridad (SecurityContext) / Sistema
  • Validaciones Raw: No modificable tras la creación.
  • Longitud Max: 50

Ejemplo de Integración:

{
"createdBy": "admin, guest, USR-001"
}

Campo API: id

Long? REQUIRED

1. Definición de Negocio

AtributoDetalle
EtiquetaIdentificador del Sistema
DescripciónIdentificador numérico interno y clave primaria (Primary Key) del registro en la base de datos.
DominioNúmeros enteros positivos mayores a 0
Público🔴

2. Capa de Interfaz (Frontend)

RequerimientoReglas Visuales
Grilla: 🔴
Forms: 🔴
Formato: Numérico (BigInt)
Regla UI: Campo oculto o deshabilitado. No se expone directamente al usuario final para edición.

3. Seguridad y Auditoría

ParámetroValor
SensibilidadLOW
Encriptado🔴
Indexado🟢
Auditado🔴

4. Especificaciones Técnicas

  • Valor Default: Asignación automática
  • Fuente / Dueño: Autoincrementable y asignado por el motor de BD al insertar (INSERT). / Sistema
  • Validaciones Raw: Único e irrepetible. De solo lectura tras su creación.
  • Longitud Max: 255

Ejemplo de Integración:

{
"id": "1, 2, 1054"
}

Campo API: lastModifiedBy

String?

1. Definición de Negocio

AtributoDetalle
EtiquetaModificado Por
DescripciónIdentificador principal del usuario que realizó la última modificación al registro.
DominioUsuarios válidos en el contexto de seguridad
Público🟢

2. Capa de Interfaz (Frontend)

RequerimientoReglas Visuales
Grilla: 🔴
Forms: 🟢
Formato: Alfanumérico
Regla UI: Campo de texto estándar. En creación está oculto, en edición se muestra como solo lectura.

3. Seguridad y Auditoría

ParámetroValor
SensibilidadLOW
Encriptado🔴
Indexado🔴
Auditado🔴

4. Especificaciones Técnicas

  • Valor Default: N/A
  • Fuente / Dueño: Extraído del contexto de seguridad (SecurityContext) / Sistema
  • Validaciones Raw: Ninguna adicional.
  • Longitud Max: 50

Ejemplo de Integración:

{
"lastModifiedBy": "admin, manager"
}

Campo API: updatedAt

Instant?

1. Definición de Negocio

AtributoDetalle
EtiquetaÚltima Actualización
DescripciónFecha y hora de la última modificación del registro.
DominioFechas válidas pasadas o presentes
Público🟢

2. Capa de Interfaz (Frontend)

RequerimientoReglas Visuales
Grilla: 🔴
Forms: 🟢
Formato: Timestamp (ISO 8601)
Regla UI: Selector de fecha/hora. En creación está oculto, en edición se muestra como solo lectura.

3. Seguridad y Auditoría

ParámetroValor
SensibilidadLOW
Encriptado🔴
Indexado🔴
Auditado🔴

4. Especificaciones Técnicas

  • Valor Default: CURRENT_TIMESTAMP
  • Fuente / Dueño: Generado automáticamente por el framework de auditoría / Sistema
  • Validaciones Raw: Se actualiza automáticamente en cada operación de modificación (UPDATE).
  • Longitud Max: 255

Ejemplo de Integración:

{
"updatedAt": "2025-10-16T09:15:00Z"
}