Modulo global de normas
- De los parametros de una norma, solo se pueden editar los valores, No el nombre ni la especificación
- Cuando typeValidation es igual a norma la propiedad parameters se establece en null y ahora los parameters se encuentran disponibles en normativityId.
Listado parametros norma masiva
Este endpoint lista los parametros que se usan en el excel que se usa para cargar normas de forma masiva
- [ GET ] /v1/parameters-names-lists
Este endpoint lista las mediciones - requiere que se le suministre el _id de una planta de tratamiento
[ GET ] /v1/history-treatment-plants-summary/679ce9887de17f6f4f3d06a8
Si se escoge en el campo tipo de agua la opción Agua potable no se debe habilitar el campo industria
- Como agua potable no tiene listado de actividades la estructura de los datos debe ser totalmente distinta a las demás por ejemplo industria o agroindustria...
- FRONTEND, NO DEBE HABILITAR EL CAMPO INDUSTRIA SI EL USUARIO Escoge en tipo de agua: Agua Potable, tampoco debe habilitar el campo actividad
Actualizacion modulo crear normas
MODULO CREACIÓN DE NORMAS:- Si el tipo de agua es Agua residual se habilita el campo industria con las opciones: Agroindustria, ganaderia, mineria, hidrocarburos, alimentos y bebidas, fabricación y manufactura de bienes, servicios, vivienda residencial y otros casos. Si el usuario selecciono tipo de norma automatica, se deben guardar los parametros automaticamente, no sin antes haber seleccionado la actividad relacionada a esa industria en el campo actividad.
- Si el tipo de agua es Agua potable no se habilita el campo industria, pero si se manejan parametros automaticos. El campo actividad no se debe habilitar.
- El tipo de industria: Otros casos se habilita exclusivamente cuando el tipo de agua es: Agua residual y se debe habilitar un campo llamado actividad con la opcion otros casos
- Cuando el tipo de agua es: Aguas lluvias no va ni industria, ni actividad ni parametros automaticos
- La norma Norma Manual no debe estar visible para asignarsela a ninguna planta. Esta norma se usa para configurar los parametros solo los nombres no se configura ni su especificación ni sus respectivos valores. Se usa para configurar parametros personalizados y en el modulo crear test de jarras.
- Cuando se selecciona isMassUploadMode en si a pesar de que el usuario seleccione industria y actividad se debe ingresar los parametros mediante un excel y los demás datos de la norma...
- De los parametros de una norma solo se pueden editar los valores, no el nombre ni la especificación
Creación de normas campo punto de vertimiento
Cambios en creación de normas
Fecha de implementación: Martes 17 de diciembre 2025
Se agregó un nuevo campo dischargePoint (punto de vertimiento) al módulo de creación de normas. Este campo permite especificar el destino del vertimiento del agua residual tratada, lo cual afecta los valores máximos permitidos de ciertos parámetros cuando se crea una norma automática.
Descripción del Campo
El campo dischargePoint indica el punto de vertimiento del agua residual tratada y puede tener dos valores:
aguaSuperficial: Vertimiento a cuerpos de agua superficiales (ríos, lagos, mar, etc.)alcantarillado: Vertimiento al sistema de alcantarillado
Cambios Realizados en el Código
1. Enum y Validación (src/enums/enumStandard.ts)
Se agregó el enum validDischargePointStandard para validar los valores permitidos:
export const validDischargePointStandard = {
// aguaSuperficial: Agua superficial (Rios, lagos, mar, etc)
values: ['aguaSuperficial', 'alcantarillado'],
message: '{VALUE} no es una entrada de agua valida'
}2. Tipo TypeScript (src/types/typesStandard.ts)
Se definió el tipo DischargePointType:
export type DischargePointType = 'aguaSuperficial' | 'alcantarillado';3. Interfaz del Modelo (src/interfaces/IStandard/IStandard.ts)
Se agregó la propiedad dischargePoint a la interfaz IStandard:
dischargePoint: DischargePointType; //Punto de vertimiento (agua superficial o alcantarillado)4. Modelo de Base de Datos (src/models/normativity.ts)
Se agregó el campo al esquema de Mongoose:
dischargePoint: {type: String, enum: validDischargePointStandard},
//ADD MIERCOLES 17 DIC 2025 /Punto de vertimiento (agua superficial o alcantarillado)También se importó el enum necesario:
import {
validDischargePointStandard
} from "../enums/enumStandard";5. Lógica de Negocio (src/controllers/normativityController.ts)
Se implementó la lógica especial para normas automáticas con vertimiento a alcantarillado. Cuando se cumple la condición:
- Tipo de agua:
aguaResidual - Tipo de norma:
automatica - Punto de vertimiento:
alcantarillado
Se aplica un multiplicador de 1.50 a los valores máximos permitidos de los siguientes parámetros:
- DQO (Demanda Química de Oxígeno)
- DBO5 (Demanda Bioquímica de Oxígeno a 5 días)
- SST (Sólidos Suspendidos Totales)
- SSED (Sólidos Sedimentables)
- Grasas y Aceites
- Ortofosfatos
- Fósforo Total
- Nitratos
- Nitritos
- Nitrógeno Amoniacal
- Nitrógeno Total
Comportamiento del Sistema
Caso 1: Norma Automática con Vertimiento a Alcantarillado
Cuando se crea una norma con:
typeOfWater: 'aguaResidual'standardType: 'automatica'dischargePoint: 'alcantarillado'
Acción: Los valores máximos permitidos (maxValueSpecification) de los 11 parámetros mencionados se multiplican por 1.50 antes de guardar la norma.
Ejemplo:
- Si un parámetro tiene
maxValueSpecification: 100 - Y está en la lista de parámetros afectados
- Y su
specificationes'valorMaximo' - Entonces se guardará con
maxValueSpecification: 150(100 x 1.50)
Caso 2: Norma Automática con Vertimiento a Agua Superficial
Cuando se crea una norma con:
typeOfWater: 'aguaResidual'standardType: 'automatica'dischargePoint: 'aguaSuperficial'
Acción: Se utiliza el flujo normal de creación de normas automáticas, sin modificación de valores.
Caso 3: Norma Personalizada
Cuando standardType: 'personalizada', el campo dischargePoint se guarda pero no se aplica ninguna modificación a los parámetros, ya que estos son ingresados manualmente por el usuario.
Notas Importantes
Aplicación del multiplicador: Solo se aplica a parámetros que:
- Están en la lista de parámetros afectados
- Tienen
specification: 'valorMaximo' - Son parte de una norma automática con vertimiento a alcantarillado
Parámetros no afectados: Los parámetros que no están en la lista o que tienen otras especificaciones (
rangooanalisisYReporte) no se modifican.Normas personalizadas: El campo
dischargePointse guarda en normas personalizadas pero no afecta los valores, ya que estos son definidos manualmente.Validación: El campo está validado mediante enum de Mongoose, por lo que solo acepta los valores
'aguaSuperficial'o'alcantarillado'.
Archivos Modificados
src/enums/enumStandard.ts- Agregado enumvalidDischargePointStandardsrc/types/typesStandard.ts- Agregado tipoDischargePointTypesrc/interfaces/IStandard/IStandard.ts- Agregada propiedaddischargePointsrc/models/normativity.ts- Agregado campo al esquema de Mongoosesrc/controllers/normativityController.ts- Implementada lógica de multiplicación