Skip to content

Submodulo rol visor ​

Rol visor ​

El rol VISOR es un rol de solo lectura diseñado para usuarios de clientes que necesitan visualizar información del sistema sin capacidad de modificación.

Definición y Ubicación en el Código ​

  • Enum: Definido en src/enums/enums.ts como VISOR = 'VISOR'
  • Validación: Incluido en src/enums/enumTypes.ts en el array de roles válidos
  • Mapeo de roles: Definido en src/helpers/parsingUserState/stateMapping.ts con el nombre legible "Visor"

Creación de Usuarios VISOR ​

¿Quién puede crear usuarios VISOR?

  • Solo usuarios con rol ADMIN_COMPANY o TREEA_ADMIN pueden crear usuarios VISOR
  • Los usuarios SUPERVISOR NO pueden crear usuarios VISOR (solo pueden crear OPERADOR)

Validación en el código:

  • Controlador: src/controllers/userAdminCompanyController.ts (líneas 61-65)
  • Validador: src/validators/userValidator.ts (línea 53) - acepta 'SUPERVISOR', 'OPERADOR', 'VISOR'

Endpoint para crear:

  • Ruta: /api/v1/userAdminCompany (POST)
  • Función: addUserByAdminCompany en src/controllers/userAdminCompanyController.ts

Permisos y Funcionalidades del Rol VISOR ​

El rol VISOR tiene acceso de solo lectura a las siguientes funcionalidades según la matriz de permisos (src/config/permissionsMatrix.ts):

Módulo Inventario de Productos Químicos ​
  • Listar inventario de productos químicos (chemicalInventoryList)
    • Permite ver el resumen de inventario
    • NO puede crear inventario (chemicalInventoryCreation: false)
Módulo Ensayos de Jarras ​
  • Listar ensayos de jarras (jarTestList)
    • Puede visualizar los ensayos realizados
    • NO puede crear ensayos (jarTestCreation: false)
Módulo Normas ​
  • Listar normas (normList)
    • Puede ver las normas configuradas
    • NO puede crear, editar, activar/desactivar o asignar normas
Módulo Histórico de Plantas de Tratamiento ​
  • Listar histórico de plantas (historyTreatmentPlantList)
    • Puede ver el listado de parámetros y mediciones históricas
    • NO puede crear históricos (historyTreatmentPlantCreation: false)
Módulo Usuarios ​
  • Listar usuarios (userList)
    • Puede ver la lista de usuarios del sistema
    • NO puede crear, actualizar o activar/desactivar usuarios
Módulo Parametrización ​
  • Listar parametrizaciones (parameterizationList)
    • Puede ver las parametrizaciones configuradas
    • NO puede activar/desactivar parametrizaciones
Módulo Notificaciones ​
  • Listar notificaciones (notificationList)
    • Puede ver las notificaciones del sistema
Módulo Productos Químicos ​
  • Guardar histórico de productos químicos (saveChemicalProductHistory)
    • Puede ver el histórico de productos químicos (usado en ver inventario - tabla frontend)
  • Listar productos químicos (chemicalProductList)
    • Puede ver el listado de productos químicos (usado en resumen de inventario - frontend)
  • Listar químico por ID (chemicalProductById)
    • Puede ver detalles de un producto químico específico
    • NO puede crear productos químicos (chemicalProductCreation: false)
Módulo Dashboard Plantas ​
  • Listar dashboard plantas (dashboardPlantsList)
    • Puede acceder a los dashboards de las plantas de tratamiento

Funcionalidades NO Permitidas para VISOR ​

El rol VISOR NO tiene acceso a:

  • Creación de inventario de productos químicos
  • Creación de ensayos de jarras
  • Creación/edición de normas
  • Activación/desactivación de normas
  • Asignación de normas
  • Creación/edición de plantas de tratamiento
  • Creación de históricos de plantas
  • Creación de usuarios
  • Actualización de usuarios
  • Activación/desactivación de usuarios
  • Creación de ajustes de dosificación
  • Ajuste de parámetros
  • Activación/desactivación de parametrizaciones
  • Creación de productos químicos
  • Creación de bajas de inventario
  • Listar bajas de inventario

Resumen de Permisos en la Matriz ​

El rol VISOR tiene true en las siguientes funcionalidades:

  1. chemicalInventoryList
  2. jarTestList
  3. normList
  4. historyTreatmentPlantList
  5. userList
  6. parameterizationList
  7. notificationList
  8. saveChemicalProductHistory
  9. chemicalProductList
  10. chemicalProductById
  11. dashboardPlantsList

Notas Importantes ​

  1. Rol de solo lectura: El VISOR está diseñado exclusivamente para visualización, sin capacidad de modificación
  2. Restricción de creación: Solo ADMIN_COMPANY y TREEA_ADMIN pueden crear usuarios VISOR
  3. Estado: Los usuarios VISOR pueden estar activos o inactivos, igual que otros roles
  4. Validación: El rol está validado en múltiples capas (enum, validators, controllers)

Lugares en el software que se modificaron para agregar el rol visor ​

  • Enum: src/enums/enums.ts
  • Validación de roles: src/enums/enumTypes.ts
  • Matriz de permisos: src/config/permissionsMatrix.ts (múltiples líneas)
  • Controlador de creación: src/controllers/userAdminCompanyController.ts
  • Validador: src/validators/userValidator.ts
  • Mapeo de nombres: src/helpers/parsingUserState/stateMapping.ts