- Move 6 non-standard folders to _archive/ - Update _MAP.md with standardized structure Standard: SIMCO-ESTANDAR-ORCHESTRATION v1.0.0 Level: SUB-CONSUMER Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
277 lines
6.4 KiB
Markdown
277 lines
6.4 KiB
Markdown
# TRIGGER: Inventarios Sincronizados - Clinica Veterinaria
|
|
|
|
**ID:** TRIGGER-VET-INVENTARIOS
|
|
**Version:** 1.0.0
|
|
**Proyecto:** clinica-veterinaria
|
|
**Hereda de:** @ERP_TRIGGER_INVENTARIOS -> @CLINICAS_TRIGGER_INVENTARIOS
|
|
**Alias:** @VET_TRIGGER_INVENTARIOS
|
|
|
|
---
|
|
|
|
## Proposito
|
|
|
|
Mantener los inventarios sincronizados con el codigo fuente, asegurando que cada objeto nuevo/modificado este registrado, con enfasis en componentes especificos del dominio veterinario.
|
|
|
|
## Cadena de Herencia
|
|
|
|
```
|
|
template-saas (PROVIDER)
|
|
|
|
|
v
|
|
erp-core (INTERMEDIATE)
|
|
|
|
|
v
|
|
erp-clinicas (CONSUMER)
|
|
|
|
|
v
|
|
clinica-veterinaria (SUB-VERTICAL) <- ESTE PROYECTO
|
|
```
|
|
|
|
## Activacion
|
|
|
|
### Post-Tarea
|
|
- Creacion de entity/service/controller veterinario
|
|
- Creacion de tabla DDL en sub_veterinaria
|
|
- Creacion de componente frontend veterinario
|
|
- Modificacion de modulo CVT
|
|
|
|
### Automatica
|
|
- Post-commit (via hook)
|
|
- Pre-release
|
|
|
|
## Inventarios a Sincronizar
|
|
|
|
### DATABASE_INVENTORY.yml
|
|
```yaml
|
|
ubicacion: "orchestration/inventarios/DATABASE_INVENTORY.yml"
|
|
contenido:
|
|
schemas_propios:
|
|
- sub_veterinaria
|
|
tablas_veterinaria:
|
|
- sub_veterinaria.pets
|
|
- sub_veterinaria.pet_owners
|
|
- sub_veterinaria.pet_photos
|
|
- sub_veterinaria.vaccinations
|
|
- sub_veterinaria.vaccine_types
|
|
- sub_veterinaria.vaccination_reminders
|
|
- sub_veterinaria.dewormings
|
|
- sub_veterinaria.dewormer_types
|
|
- sub_veterinaria.hospitalizations
|
|
- sub_veterinaria.kennel_spaces
|
|
- sub_veterinaria.hospitalization_notes
|
|
- sub_veterinaria.grooming_services
|
|
- sub_veterinaria.grooming_appointments
|
|
- sub_veterinaria.vet_medications
|
|
- sub_veterinaria.medication_sales
|
|
tablas_heredadas:
|
|
- "clinicas.pacientes (adaptado como mascotas)"
|
|
- "clinicas.citas (adaptado)"
|
|
- "clinicas.expedientes (extendido)"
|
|
```
|
|
|
|
### BACKEND_INVENTORY.yml
|
|
```yaml
|
|
ubicacion: "orchestration/inventarios/BACKEND_INVENTORY.yml"
|
|
contenido:
|
|
modulos_CVT:
|
|
- CVT-001: mascotas
|
|
- CVT-002: vacunacion
|
|
- CVT-003: desparasitaciones
|
|
- CVT-004: hospitalizacion
|
|
- CVT-005: estetica-canina
|
|
- CVT-006: farmacia-veterinaria
|
|
entities_por_modulo: TBD
|
|
services_por_modulo: TBD
|
|
controllers_y_endpoints: TBD
|
|
dtos: TBD
|
|
guards_especificos:
|
|
- vet-professional.guard.ts
|
|
- pet-owner-consent.guard.ts
|
|
- controlled-substance.guard.ts
|
|
```
|
|
|
|
### FRONTEND_INVENTORY.yml
|
|
```yaml
|
|
ubicacion: "orchestration/inventarios/FRONTEND_INVENTORY.yml"
|
|
contenido:
|
|
pages_veterinaria:
|
|
- MascotasPage
|
|
- VacunacionPage
|
|
- DesparasitacionesPage
|
|
- HospitalizacionDashboard
|
|
- EsteticaPage
|
|
- FarmaciaPage
|
|
components_especializados:
|
|
- PetProfileCard
|
|
- VaccinationCalendar
|
|
- KennelMap
|
|
- GroomingScheduler
|
|
- MedicationDispenser
|
|
- PetWeightTracker
|
|
hooks_veterinaria:
|
|
- usePetProfile
|
|
- useVaccinationSchedule
|
|
- useHospitalization
|
|
```
|
|
|
|
### MASTER_INVENTORY.yml
|
|
```yaml
|
|
ubicacion: "orchestration/inventarios/MASTER_INVENTORY.yml"
|
|
contenido:
|
|
totales_consolidados: TBD
|
|
estadisticas_por_capa: TBD
|
|
ultima_sincronizacion: TBD
|
|
cobertura_tests: TBD
|
|
cumplimiento_normativo: TBD
|
|
```
|
|
|
|
## Reglas de Actualizacion
|
|
|
|
```yaml
|
|
regla_1:
|
|
evento: "Entity veterinaria creada"
|
|
acciones:
|
|
- Agregar a BACKEND_INVENTORY.yml
|
|
- Incrementar contador en MASTER_INVENTORY.yml
|
|
- Verificar campos NOM-064 si aplica
|
|
|
|
regla_2:
|
|
evento: "Tabla DDL veterinaria creada"
|
|
acciones:
|
|
- Agregar a DATABASE_INVENTORY.yml
|
|
- Verificar entity correspondiente
|
|
- Validar schema sub_veterinaria
|
|
|
|
regla_3:
|
|
evento: "Componente React veterinario creado"
|
|
acciones:
|
|
- Agregar a FRONTEND_INVENTORY.yml
|
|
- Clasificar por tipo (page/component/hook)
|
|
- Verificar usabilidad en dispositivos moviles
|
|
```
|
|
|
|
## Validacion de Consistencia
|
|
|
|
### Conteos Esperados
|
|
|
|
| Inventario | Metrica | Valor Esperado |
|
|
|------------|---------|----------------|
|
|
| DATABASE | Schemas propios | 1 (sub_veterinaria) |
|
|
| DATABASE | Tablas propias | 15+ |
|
|
| DATABASE | Tablas heredadas | 10+ (de clinicas) |
|
|
| BACKEND | Modulos CVT | 6 |
|
|
| BACKEND | Entities | 15+ |
|
|
| FRONTEND | Pages | 6+ |
|
|
| FRONTEND | Components especializados | 10+ |
|
|
|
|
### Script de Validacion
|
|
|
|
```bash
|
|
# Validar sincronizacion
|
|
npm run inventory:validate
|
|
|
|
# Actualizar inventarios
|
|
npm run inventory:sync
|
|
|
|
# Validar cumplimiento NOM-064
|
|
npm run inventory:validate-nom
|
|
```
|
|
|
|
## Inventarios de Insumos Veterinarios
|
|
|
|
### Categorias Especiales (Control SENASICA)
|
|
|
|
```yaml
|
|
medicamentos_controlados:
|
|
antibioticos:
|
|
- amoxicilina
|
|
- enrofloxacina
|
|
- cefalexina
|
|
registro_obligatorio: true
|
|
receta_medico_veterinario: true
|
|
|
|
vacunas:
|
|
- rabia
|
|
- parvovirus
|
|
- moquillo
|
|
- triple_felina
|
|
cadena_frio: obligatorio
|
|
lote_tracking: true
|
|
|
|
anestesicos:
|
|
- ketamina
|
|
- propofol
|
|
- xilazina
|
|
registro_stricto: true
|
|
libro_control: obligatorio
|
|
|
|
desparasitantes:
|
|
- internos
|
|
- externos
|
|
lote_tracking: true
|
|
|
|
sustancias_controladas:
|
|
- opioides
|
|
- barbituratos
|
|
registro_senasica: obligatorio
|
|
libro_amarillo: true
|
|
```
|
|
|
|
### Inventario de Alimentos
|
|
|
|
```yaml
|
|
alimentos_hospitalizados:
|
|
categorias:
|
|
- dietas_terapeuticas
|
|
- alimento_cachorro
|
|
- alimento_adulto
|
|
- alimento_senior
|
|
- alimento_renal
|
|
- alimento_hepatico
|
|
trazabilidad: por_paciente
|
|
caducidad_control: true
|
|
```
|
|
|
|
## Formato de Entrada
|
|
|
|
```yaml
|
|
# Nueva entity veterinaria
|
|
entities:
|
|
- nombre: "PetEntity"
|
|
archivo: "pet.entity.ts"
|
|
modulo: "mascotas"
|
|
tabla_ddl: "sub_veterinaria.pets"
|
|
estado: "implementado"
|
|
tests: true
|
|
cumple_nom_064: true
|
|
```
|
|
|
|
## Metricas
|
|
|
|
| Metrica | Objetivo | Actual |
|
|
|---------|----------|--------|
|
|
| Sincronizacion DB | 100% | TBD |
|
|
| Sincronizacion BE | 100% | TBD |
|
|
| Sincronizacion FE | 100% | TBD |
|
|
| Trazabilidad medicamentos | 100% | TBD |
|
|
| Trazabilidad vacunas | 100% | TBD |
|
|
| Ultima actualizacion | Diaria | TBD |
|
|
|
|
## Referencias
|
|
|
|
- `@VET_INV_MASTER` - MASTER_INVENTORY.yml
|
|
- `@VET_INV_DB` - DATABASE_INVENTORY.yml
|
|
- `@VET_INV_BE` - BACKEND_INVENTORY.yml
|
|
- `@VET_INV_FE` - FRONTEND_INVENTORY.yml
|
|
- `@CLINICAS_TRIGGER_INVENTARIOS` - Trigger padre
|
|
- `@ERP_TRIGGER_INVENTARIOS` - Trigger abuelo
|
|
- `@WS_TRIGGER_INVENTARIOS` - Trigger raiz del workspace
|
|
|
|
---
|
|
|
|
**Normativa Aplicable para Inventarios:**
|
|
- NOM-064-ZOO-2000: Control de medicamentos e insumos veterinarios
|
|
- SENASICA: Registro de sustancias controladas
|
|
- NOM-012-ZOO-1993: Especificaciones para la regulacion de productos quimicos
|
|
- Ley Federal de Sanidad Animal: Trazabilidad de biologicos
|