# RF-MAA017-006: Gestion Ambiental

## Informacion General

| Atributo | Valor |
|----------|-------|
| **Codigo** | RF-MAA017-006 |
| **Nombre** | Gestion Ambiental |
| **Modulo** | MAA-017 Seguridad HSE |
| **Prioridad** | P2 - Media |
| **Complejidad** | Media |

## Descripcion

El sistema debe permitir la gestion de aspectos ambientales en obras de construccion, incluyendo manejo de residuos peligrosos y no peligrosos, generacion de manifiestos de traslado, evaluacion de impacto ambiental, y cumplimiento de normatividad SEMARNAT y LGEEPA.

## Requisitos Funcionales

### RF-MAA017-006.1: Catalogo de Residuos

- Registrar tipos de residuos generados en obra:
  - Residuos peligrosos (RP):
    - Aceites usados
    - Solventes
    - Pinturas y barnices
    - Baterias
    - Envases contaminados
    - Trapos y estopas impregnados
    - Residuos de soldadura
  - Residuos de manejo especial (RME):
    - Escombro y cascajo
    - Tierra contaminada
    - Material de demolicion
  - Residuos solidos urbanos (RSU):
    - Carton y papel
    - Plasticos
    - Organicos
- Clasificar segun NOM-052-SEMARNAT-2005
- Definir caracteristicas CRETIB
- Indicar manejo requerido por tipo
- Vincular transportistas autorizados

### RF-MAA017-006.2: Registro de Generacion de Residuos

- Registrar volumen/peso de residuos generados por obra
- Capturar fecha y area de generacion
- Identificar fuente generadora
- Adjuntar fotos del residuo
- Etiquetar contenedores segun norma
- Control de almacenamiento temporal
- Tiempo maximo de almacenamiento (6 meses RP)
- Alertas de aproximacion a limite

### RF-MAA017-006.3: Manifiestos de Traslado

- Generar manifiesto para residuos peligrosos
- Datos del generador (empresa)
- Datos del transportista autorizado
- Datos del destino final (reciclador/confinamiento)
- Descripcion del residuo y cantidad
- Numero de autorizacion SEMARNAT
- Folio de manifiesto
- Firmas digitales de responsables
- Seguimiento de entrega a destino
- Archivo de manifiestos por 5 anos

### RF-MAA017-006.4: Proveedores Autorizados

- Catalogo de transportistas autorizados SEMARNAT
- Catalogo de sitios de disposicion final
- Verificar vigencia de autorizaciones
- Registrar numero de autorizacion
- Alertas de vencimiento de autorizaciones
- Historial de servicios por proveedor

### RF-MAA017-006.5: Impacto Ambiental

- Evaluacion de aspectos ambientales por obra
- Identificar impactos potenciales:
  - Ruido
  - Polvo
  - Vibraciones
  - Descarga de aguas residuales
  - Emision de particulas
  - Afectacion de vegetacion
- Medidas de mitigacion por impacto
- Registro de quejas vecinales
- Plan de manejo ambiental
- Monitoreo de indicadores

### RF-MAA017-006.6: Reportes Ambientales

- Cedula de Operacion Anual (COA)
- Bitacora de residuos peligrosos
- Inventario de residuos acumulados
- Reportes de disposicion final
- Costos de gestion ambiental
- Comparativo entre obras
- Exportar para auditorias PROFEPA

## Reglas de Negocio

1. Residuos peligrosos no pueden almacenarse mas de 6 meses
2. Todo traslado de RP requiere manifiesto
3. Solo transportistas autorizados pueden mover RP
4. Manifiestos deben archivarse minimo 5 anos
5. Generador es responsable hasta disposicion final
6. Contenedores de RP deben estar etiquetados
7. Area de almacenamiento temporal debe tener contencion
8. Derrames deben reportarse en 24 horas

## Criterios de Aceptacion

- [ ] Catalogo de residuos segun NOM-052-SEMARNAT
- [ ] Registro de generacion con fotos y geolocalizacion
- [ ] Manifiestos generados en formato oficial
- [ ] Alertas 30 dias antes de limite de almacenamiento
- [ ] Proveedores con verificacion de autorizacion vigente
- [ ] Dashboard de residuos por obra
- [ ] Exportar COA en formato requerido
- [ ] Historial de 5 anos accesible

## Modelo de Datos

### Tabla: hse.residuos_catalogo
```
- id: UUID PK
- codigo: VARCHAR(20) UNIQUE
- nombre: VARCHAR(200)
- categoria: ENUM(peligroso, manejo_especial, urbano)
- caracteristicas_cretib: VARCHAR(6)
- norma_referencia: VARCHAR(50)
- manejo_requerido: TEXT
- tiempo_max_almacen_dias: INTEGER
- requiere_manifiesto: BOOLEAN DEFAULT false
- activo: BOOLEAN DEFAULT true
- created_at: TIMESTAMPTZ
```

### Tabla: hse.residuos_generacion
```
- id: UUID PK
- tenant_id: UUID FK
- fraccionamiento_id: UUID FK
- residuo_id: UUID FK (hse.residuos_catalogo)
- fecha_generacion: DATE
- cantidad: DECIMAL(10,2)
- unidad: ENUM(kg, litros, m3, piezas)
- area_generacion: VARCHAR(200)
- fuente: VARCHAR(200)
- contenedor_id: VARCHAR(50)
- foto_url: VARCHAR(500)
- ubicacion_geo: GEOMETRY(Point)
- estado: ENUM(almacenado, en_transito, dispuesto)
- created_at: TIMESTAMPTZ
- created_by: UUID FK
```

### Tabla: hse.almacen_temporal
```
- id: UUID PK
- tenant_id: UUID FK
- fraccionamiento_id: UUID FK
- nombre: VARCHAR(100)
- ubicacion: VARCHAR(200)
- capacidad_m3: DECIMAL(8,2)
- tiene_contencion: BOOLEAN DEFAULT true
- tiene_techo: BOOLEAN DEFAULT true
- senalizacion_ok: BOOLEAN DEFAULT true
- estado: ENUM(operativo, lleno, mantenimiento)
- created_at: TIMESTAMPTZ
```

### Tabla: hse.proveedores_ambientales
```
- id: UUID PK
- tenant_id: UUID FK
- razon_social: VARCHAR(300)
- rfc: VARCHAR(13)
- tipo: ENUM(transportista, reciclador, confinamiento)
- numero_autorizacion: VARCHAR(50)
- entidad_autorizadora: VARCHAR(100)
- fecha_autorizacion: DATE
- fecha_vencimiento: DATE
- servicios: TEXT
- contacto_nombre: VARCHAR(200)
- contacto_telefono: VARCHAR(20)
- activo: BOOLEAN DEFAULT true
- created_at: TIMESTAMPTZ
- updated_at: TIMESTAMPTZ
```

### Tabla: hse.manifiestos_residuos
```
- id: UUID PK
- tenant_id: UUID FK
- folio: VARCHAR(30) UNIQUE
- fraccionamiento_id: UUID FK
- transportista_id: UUID FK (hse.proveedores_ambientales)
- destino_id: UUID FK (hse.proveedores_ambientales)
- fecha_recoleccion: DATE
- fecha_entrega: DATE
- estado: ENUM(emitido, en_transito, entregado, cerrado)
- observaciones: TEXT
- documento_url: VARCHAR(500)
- created_at: TIMESTAMPTZ
- updated_at: TIMESTAMPTZ
```

### Tabla: hse.manifiesto_detalle
```
- id: UUID PK
- manifiesto_id: UUID FK
- residuo_id: UUID FK
- generacion_ids: UUID[]
- cantidad: DECIMAL(10,2)
- unidad: ENUM(kg, litros, m3)
- descripcion: TEXT
- created_at: TIMESTAMPTZ
```

### Tabla: hse.impacto_ambiental
```
- id: UUID PK
- tenant_id: UUID FK
- fraccionamiento_id: UUID FK
- aspecto: VARCHAR(200)
- tipo_impacto: ENUM(ruido, polvo, vibraciones, agua, emision, vegetacion, otro)
- severidad: ENUM(bajo, medio, alto)
- probabilidad: ENUM(baja, media, alta)
- nivel_riesgo: ENUM(tolerable, moderado, significativo)
- medidas_mitigacion: TEXT
- responsable_id: UUID FK
- estado: ENUM(identificado, mitigando, controlado)
- created_at: TIMESTAMPTZ
- updated_at: TIMESTAMPTZ
```

### Tabla: hse.quejas_ambientales
```
- id: UUID PK
- tenant_id: UUID FK
- fraccionamiento_id: UUID FK
- fecha_queja: TIMESTAMPTZ
- origen: ENUM(vecino, autoridad, interno, anonimo)
- tipo: ENUM(ruido, polvo, olores, agua, otro)
- descripcion: TEXT
- nombre_quejoso: VARCHAR(200)
- contacto_quejoso: VARCHAR(100)
- acciones_tomadas: TEXT
- estado: ENUM(recibida, atendiendo, cerrada)
- fecha_cierre: DATE
- created_at: TIMESTAMPTZ
- updated_at: TIMESTAMPTZ
```

## Casos de Uso

### CU-MAA017-006.1: Registrar Generacion de Residuo Peligroso

**Actor**: Encargado de Obra / Almacenista
**Precondicion**: Catalogo de residuos configurado

**Flujo Principal**:
1. Usuario identifica residuo generado en obra
2. Sistema muestra catalogo de residuos
3. Usuario selecciona tipo de residuo
4. Usuario registra cantidad y unidad
5. Usuario indica area y fuente de generacion
6. Usuario toma foto del residuo
7. Sistema asigna contenedor de almacen temporal
8. Sistema calcula fecha limite de almacenamiento
9. Sistema programa alertas de vencimiento
10. Sistema actualiza inventario de almacen

### CU-MAA017-006.2: Generar Manifiesto de Traslado

**Actor**: Coordinador HSE
**Precondicion**: Residuos acumulados, transportista disponible

**Flujo Principal**:
1. Coordinador selecciona obra y residuos a trasladar
2. Sistema muestra inventario de residuos almacenados
3. Coordinador selecciona registros a incluir
4. Sistema verifica limite de tiempo no excedido
5. Coordinador selecciona transportista autorizado
6. Sistema verifica autorizacion vigente
7. Coordinador selecciona destino final
8. Sistema genera manifiesto con folio
9. Coordinador revisa y firma digitalmente
10. Sistema genera PDF y registra emision
11. Al entregar, se cierra manifiesto con firma destino

### CU-MAA017-006.3: Atender Queja Ambiental

**Actor**: Residente de Obra / Coordinador HSE
**Precondicion**: Queja recibida

**Flujo Principal**:
1. Usuario registra queja con origen y tipo
2. Sistema asigna folio de seguimiento
3. Usuario documenta descripcion detallada
4. Sistema vincula a impactos ambientales
5. Usuario define acciones inmediatas
6. Sistema notifica a responsables
7. Usuario ejecuta acciones de mitigacion
8. Usuario registra evidencia de atencion
9. Usuario cierra queja con resolucion
10. Sistema actualiza indicadores ambientales

## Mockups

### Pantalla: Inventario de Residuos
```
+--------------------------------------------------+
| INVENTARIO DE RESIDUOS                           |
| Obra: Residencial Norte                          |
+--------------------------------------------------+
| Almacen Temporal: [Almacen RP-01 v]             |
| Capacidad: 80% ocupado                           |
+--------------------------------------------------+
| RESIDUOS PELIGROSOS ALMACENADOS                  |
+--------------------------------------------------+
| Tipo           | Cantidad | Ingreso   | Limite  |
+--------------------------------------------------+
| Aceite usado   | 200 L    | 01-Oct    | 01-Abr  |
| Solventes      | 50 L     | 15-Oct    | 15-Abr  |
| Envases cont.  | 30 kg    | 01-Nov    | 01-May  |
| Estopas imp.   | 25 kg    | 20-Nov    | 20-May  |
+--------------------------------------------------+
| ! ALERTA: Aceite usado a 60 dias de limite      |
+--------------------------------------------------+
| [Registrar Nuevo]  [Generar Manifiesto]         |
+--------------------------------------------------+
```

### Pantalla: Generar Manifiesto
```
+--------------------------------------------------+
| MANIFIESTO DE RESIDUOS PELIGROSOS                |
+--------------------------------------------------+
| Folio: MAN-RP-2025-0015 (auto)                  |
| Fecha: 06-Dic-2025                               |
+--------------------------------------------------+
| DATOS DEL GENERADOR                              |
| Empresa: Constructora ABC S.A. de C.V.          |
| RFC: CAB-950612-XX1                              |
| Obra: Residencial Norte                          |
+--------------------------------------------------+
| RESIDUOS A TRASLADAR                             |
| [✓] Aceite usado - 200 L                        |
| [✓] Solventes - 50 L                            |
| [ ] Envases contaminados - 30 kg                |
+--------------------------------------------------+
| TRANSPORTISTA                                    |
| [Transportes Ecologicos SA v]                   |
| Autorizacion: SCT-2024-0089 (Vigente)           |
+--------------------------------------------------+
| DESTINO FINAL                                    |
| [Recicladora Ambiental SA v]                    |
| Autorizacion: SEMARNAT-2023-1234 (Vigente)      |
+--------------------------------------------------+
| [Cancelar]              [Generar Manifiesto]    |
+--------------------------------------------------+
```

### Pantalla: Dashboard Ambiental
```
+--------------------------------------------------+
| GESTION AMBIENTAL - Dashboard                    |
+--------------------------------------------------+
| Periodo: [2025 v]    Obra: [Todas v]            |
+--------------------------------------------------+
| RESIDUOS GENERADOS (Toneladas)                   |
|                                                  |
|    RP    RME    RSU                             |
|   0.8    45     12      [Grafica barras]        |
|                                                  |
+--------------------------------------------------+
| MANIFIESTOS EMITIDOS                             |
| +--------+  +--------+  +--------+               |
| |   15   |  |   12   |  |    3   |              |
| | Total  |  |Cerrados|  |Abiertos|              |
| +--------+  +--------+  +--------+               |
+--------------------------------------------------+
| QUEJAS AMBIENTALES                               |
| Este mes: 2    Pendientes: 1                    |
+--------------------------------------------------+
| IMPACTOS POR CONTROLAR                           |
| ! Ruido - Nivel Alto - Edificio A               |
| ! Polvo - Nivel Medio - Excavaciones            |
+--------------------------------------------------+
| [Ver Detalle]  [Exportar COA]                   |
+--------------------------------------------------+
```

## Especificaciones Tecnicas Relacionadas

- ET-MAA017-DB-001: Schema HSE Database
- ET-MAA017-BE-008: Environmental Management Service
- ET-MAA017-BE-009: Manifest Generator Service
- ET-MAA017-FE-013: Waste Inventory View
- ET-MAA017-FE-014: Manifest Form
- ET-MAA017-FE-015: Environmental Dashboard

## User Stories Relacionadas

- US-MAA017-010: Registrar manejo de residuos
- US-MAA017-021: Generar manifiesto de traslado
- US-MAA017-022: Registrar queja ambiental
- US-MAA017-023: Evaluar impacto ambiental
- US-MAA017-024: Generar COA

## Integraciones

### Internas
- MAI-002: Obtener lista de obras/fraccionamientos
- MAI-008: Vincular con proveedores de servicios

### Externas
- SEMARNAT: Consulta de autorizaciones
- SEMARNAT: Formato COA
- PROFEPA: Preparacion de auditorias

---

**Autor**: Requirements-Analyst
**Fecha**: 2025-12-06
**Version**: 1.0.0
