- Epicas documentadas - Schema de farmacia veterinaria - Inventario de base de datos - Reporte de ejecucion Sprint 7 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
8.7 KiB
8.7 KiB
VET-004: Hospitalizacion
Metadata
- Codigo: VET-004
- Modulo: Hospitalizacion
- Prioridad: P1
- Estado: DDL Completado
- Fase: 3 - Hospitalizacion
Descripcion
Sistema de gestion de hospitalizacion veterinaria: ingreso de pacientes, asignacion de espacios (jaulas/kennels), monitoreo de signos vitales, administracion de medicamentos, y proceso de alta.
Objetivos
- Registro de ingresos
- Asignacion de espacios
- Monitoreo periodico
- Control de medicamentos
- Proceso de alta
Alcance
Incluido
- Ingreso con diagnostico inicial
- Asignacion de jaula/kennel/UCI
- Monitoreo cada X horas (configurable)
- Registro de signos vitales
- Estado de alimentacion/eliminacion
- Notas de evolucion
- Alta con instrucciones
- Costos acumulados
Excluido
- Sensores automaticos
- Camaras de vigilancia
- Sistema de ventiladores/temperatura
Estados de Hospitalizacion
ingresado ──► en_tratamiento ──► estable ──► alta
│
├──► critico
│
└──► fallecido
| Estado | Descripcion | Acciones |
|---|---|---|
| ingresado | Recien llegado | Evaluacion inicial |
| en_tratamiento | Recibiendo cuidados | Monitoreo activo |
| estable | Mejorando | Reducir monitoreo |
| critico | Grave | Monitoreo intensivo |
| alta | Dado de alta | Cerrar expediente |
| fallecido | Fallecio | Registro de deceso |
Modelo de Datos
Tablas
veterinaria.hospitalizacion
- id, tenant_id, mascota_id, veterinario_id
- consultation_id
- fecha_ingreso, motivo_ingreso, diagnostico_ingreso
- area, numero_jaula
- estado
- fecha_alta, diagnostico_alta, instrucciones_alta
veterinaria.hospitalizacion_monitoreo
- id, tenant_id, hospitalizacion_id
- fecha_hora
- peso_kg, temperatura
- frecuencia_cardiaca, frecuencia_respiratoria
- comio, bebio_agua, orino, defeco
- consistencia_heces, estado_animo
- nivel_dolor (0-10)
- observaciones, registrado_por
Signos Vitales Normales
| Especie | Temperatura | FC | FR |
|---|---|---|---|
| Canino | 38-39°C | 60-120 lpm | 10-30 rpm |
| Felino | 38-39°C | 120-180 lpm | 20-40 rpm |
| Conejo | 38.5-40°C | 130-325 lpm | 30-60 rpm |
Endpoints API
| Metodo | Endpoint | Descripcion |
|---|---|---|
| GET | /hospitalizacion | Pacientes hospitalizados |
| GET | /hospitalizacion/:id | Detalle |
| POST | /hospitalizacion | Ingresar paciente |
| PUT | /hospitalizacion/:id | Actualizar |
| PUT | /hospitalizacion/:id/alta | Dar de alta |
| GET | /hospitalizacion/:id/monitoreos | Historial monitoreos |
| POST | /hospitalizacion/:id/monitoreos | Registrar monitoreo |
| GET | /hospitalizacion/espacios | Disponibilidad jaulas |
| PUT | /hospitalizacion/:id/espacio | Cambiar espacio |
Interfaz del Servicio
interface HospitalizacionService {
getActivos(): Promise<Hospitalizacion[]>;
getById(id: string): Promise<Hospitalizacion>;
ingresar(data: IngresoHospitalizacion): Promise<Hospitalizacion>;
darAlta(id: string, data: AltaHospitalizacion): Promise<Hospitalizacion>;
registrarMonitoreo(hospId: string, data: Monitoreo): Promise<Monitoreo>;
getMonitoreos(hospId: string): Promise<Monitoreo[]>;
getEspaciosDisponibles(): Promise<Espacio[]>;
}
interface IngresoHospitalizacion {
mascotaId: string;
veterinarioId: string;
consultationId?: string;
motivoIngreso: string;
diagnosticoIngreso?: string;
area: string;
numeroJaula?: string;
}
interface Monitoreo {
fechaHora: Date;
pesoKg?: number;
temperatura?: number;
frecuenciaCardiaca?: number;
frecuenciaRespiratoria?: number;
comio: boolean;
bebioAgua: boolean;
orino: boolean;
defeco: boolean;
consistenciaHeces?: string;
estadoAnimo?: string;
nivelDolor?: number;
observaciones?: string;
}
Flujos
Ingresar Paciente
1. Veterinario decide hospitalizar
2. Crear registro de hospitalizacion:
- Motivo de ingreso
- Diagnostico inicial
- Indicaciones
3. Verificar disponibilidad de espacios
4. Asignar jaula/kennel
5. Registrar monitoreo inicial
6. Notificar a propietario
7. Configurar frecuencia de monitoreo
Monitoreo Periodico
Cada X horas (configurable por estado):
1. Auxiliar va a jaula
2. Pesar mascota (si aplica)
3. Tomar temperatura
4. Registrar signos vitales
5. Verificar alimentacion/eliminacion
6. Evaluar estado de animo y dolor
7. Notas de observacion
8. Guardar en sistema
9. Alertar si valores anormales
Dar de Alta
1. Veterinario evalua condicion
2. Decide dar de alta
3. Registrar diagnostico final
4. Escribir instrucciones para propietario
5. Cambiar estado a "alta"
6. Generar resumen de hospitalizacion
7. Calcular costos totales
8. Notificar a propietario
9. Liberar espacio
Panel de Control
┌─────────────────────────────────────────────────────────┐
│ HOSPITALIZACION - Panel de Control │
├─────────────────────────────────────────────────────────┤
│ Jaulas Pequenas (8) │ ■ ■ ■ ■ ■ □ □ □ │
│ Jaulas Grandes (4) │ ■ ■ □ □ │
│ UCI (2) │ ■ □ │
│ Kennels (6) │ ■ ■ ■ □ □ □ │
├─────────────────────────────────────────────────────────┤
│ ■ = Ocupado □ = Disponible │
├─────────────────────────────────────────────────────────┤
│ PACIENTES ACTIVOS │
│ ┌─────────────────────────────────────────────────────┐
│ │ 🐕 Firulais (J-03) | Ingreso: 05/01 | ESTABLE │
│ │ Ultimo monitoreo: hace 2 horas │
│ ├─────────────────────────────────────────────────────┤
│ │ 🐈 Michi (J-07) | Ingreso: 06/01 | EN_TRATAMIENTO │
│ │ Ultimo monitoreo: hace 4 horas ⚠️ │
│ ├─────────────────────────────────────────────────────┤
│ │ 🐕 Rocky (UCI-01) | Ingreso: 07/01 | CRITICO │
│ │ Ultimo monitoreo: hace 30 min │
│ └─────────────────────────────────────────────────────┘
└─────────────────────────────────────────────────────────┘
Frecuencia de Monitoreo
| Estado | Frecuencia |
|---|---|
| critico | Cada 1-2 horas |
| en_tratamiento | Cada 4 horas |
| estable | Cada 8 horas |
| ingresado | Evaluacion inicial |
Costos de Hospitalizacion
interface CostosHospitalizacion {
diasInternado: number;
costoPorDia: number;
medicamentos: CostoMedicamento[];
procedimientos: CostoProcedimiento[];
estudios: CostoEstudio[];
subtotal: number;
descuento?: number;
total: number;
}
Entregables
| Entregable | Estado | Archivo |
|---|---|---|
| DDL hospitalizacion | Completado | database/schemas/01-veterinaria-schema-ddl.sql |
| DDL monitoreo | Completado | database/schemas/01-veterinaria-schema-ddl.sql |
| hospitalizacion.module.ts | Pendiente | backend/modules/hospitalizacion/ |
| HospitalizacionPanel.tsx | Pendiente | frontend/components/ |
| MonitoreoForm.tsx | Pendiente | frontend/components/ |
| EspaciosGrid.tsx | Pendiente | frontend/components/ |
Dependencias
Depende de
- VET-001 (Mascotas)
- clinica.consultations (erp-clinicas)
- clinica.doctors (erp-clinicas)
Bloquea a
- Reportes de ocupacion
- Dashboard gerencial
Criterios de Aceptacion
- Ingreso de pacientes funciona
- Asignacion de espacios
- Monitoreo se registra
- Estados se actualizan
- Alta genera resumen
- Panel muestra ocupacion
- Alertas de monitoreo vencido
- Costos se calculan
Ultima actualizacion: 2026-01-07