Modelo funcional y reglas de negocio
Tablas farmacológicas

Tablas farmacológicas

entidades_farmacologicas

Tabla central para drogas y grupos terapéuticos.

Campo Función
id Identificador único
tipoEntidad DROGA o GRUPO_TERAPEUTICO
nombre Nombre único de la entidad
activo Estado lógico
fechaCreacion Auditoría
fechaModificacion Auditoría

Reglas

nombre es único globalmente.

Una misma tabla contiene drogas y grupos porque ambos pueden participar de una interacción.

drogas_contenidos

Contiene información propia de una droga que depende del idioma.

Campo Función
idDroga Entidad farmacológica de tipo DROGA
idIdioma Idioma del contenido
contraindicaciones Texto localizado
precauciones Texto localizado
embarazo Texto localizado
lactancia Texto localizado

Existe una sola fila por:

idDroga + idIdioma

La FK garantiza que idDroga exista como entidad farmacológica. El backend debe garantizar además que sea de tipo DROGA.

drogas_alias

Relaciona una forma alternativa de nombrar una droga con su identificador real.

Campo Función
idDroga Droga real
alias Nombre alternativo único

alias posee unicidad global.

Esto impide que un mismo texto resuelva a dos drogas diferentes.

grupos_terapeuticos_drogas

Tabla de pertenencia de drogas a grupos.

Campo Función
idGrupoTerapeutico Entidad de tipo GRUPO_TERAPEUTICO
idDroga Entidad de tipo DROGA

La combinación es única:

idGrupoTerapeutico + idDroga

El backend valida los tipos de ambas entidades.

laboratorios

Maestro de laboratorios del vademécum.

Campos principales:

id
nombre
fechaCreacion
fechaModificacion

nombre es único.

No debe confundirse con entidades, que pertenece al circuito comercial y de distribución.

productos

Representa productos comerciales del vademécum.

Campo Función
id Identificador
nombre Nombre comercial
idLaboratorio Laboratorio
activo Estado lógico

La regla prevista para evitar duplicados es la combinación:

idLaboratorio + nombre

De esta forma dos laboratorios diferentes pueden utilizar el mismo nombre comercial, pero el mismo laboratorio no puede duplicar exactamente un producto.

productos_contenidos

Contenido del producto dependiente del idioma:

presentacion
composicion
accionTerapeutica
dosificacion

Existe una sola fila por:

idProducto + idIdioma

productos_drogas

Relación N:M entre productos y drogas.

idProducto
idDroga

La combinación es única.

Un producto puede contener varias drogas y una droga puede aparecer en varios productos.

Los productos no se relacionan directamente con grupos terapéuticos.