Modelo Normalizado - Sistema de Gestión de Laboratorios Analíticos (SYSLAB)
Generado el 05/09/2025 a las 20:39:03
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_campana_equipo | BIGINT | Clave PrimariaAutoincremental |
Identificador único de la asignación |
| id_campana | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES campanias_analiticas(id_campania) |
Referencia a la campaña analítica |
| id_usuario | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES usuarios(id_usuario) |
Referencia al usuario del equipo |
| id_perfil | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES perfiles_usuario(id_perfil) |
Referencia al perfil del usuario en esta campaña |
| fecha_asignacion | DATETIME | Campo ObligatorioValor por Defecto - DEFAULT CURRENT_TIMESTAMP |
Fecha de asignación al equipo |
| fecha_inicio | DATE | Fecha de inicio de participación | |
| fecha_fin | DATE | Fecha de fin de participación | |
| observaciones | TEXT | Observaciones sobre la participación | |
| activo | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si la asignación está activa |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_campana_paquete | BIGINT | Clave PrimariaAutoincremental |
Identificador único de la relación |
| id_campania | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES campanias_analiticas(id_campania) |
Campaña a la que pertenece |
| id_paquete | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES paquetes_analiticos(id_paquete) |
Paquete analítico seleccionado |
| cantidad_planificada | INT | Campo ObligatorioValidación - CHECK (cantidad_planificada > 0) |
Cantidad planificada de muestras para este paquete |
| cantidad_real | INT | Validación - CHECK (cantidad_real >= 0) |
Cantidad real de muestras procesadas |
| precio_unitario | DECIMAL(8,2) | Precio unitario acordado para esta campaña | |
| costo_total_estimado | DECIMAL(10,2) | Costo total estimado (cantidad_planificada * precio_unitario) | |
| costo_total_real | DECIMAL(10,2) | Costo total real (cantidad_real * precio_unitario) | |
| fecha_asignacion | DATETIME | Campo ObligatorioValor por Defecto - DEFAULT CURRENT_TIMESTAMP |
Fecha de asignación del paquete a la campaña |
| fecha_confirmacion | DATETIME | Fecha de confirmación de cantidades reales | |
| observaciones | TEXT | Observaciones sobre modificaciones de cantidades | |
| activo | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si la asignación está activa |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_paquete | BIGINT | Clave PrimariaAutoincremental |
Identificador único del paquete analítico |
| codigo_paquete | VARCHAR(50) | Valor ÚnicoCampo Obligatorio |
Código único del paquete |
| nombre_paquete | VARCHAR(200) | Campo Obligatorio |
Nombre del paquete analítico |
| descripcion | TEXT | Descripción detallada del paquete | |
| id_laboratorio | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES laboratorios(id_laboratorio) |
Laboratorio que ofrece este paquete |
| precio_base | DECIMAL(10,2) | Precio base del paquete | |
| moneda | VARCHAR(3) | Valor por Defecto - DEFAULT 'USD' |
Moneda del precio |
| tiempo_estimado_dias | INT | Tiempo estimado de análisis en días | |
| activo | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si el paquete está activo |
| fecha_creacion | DATETIME | Campo ObligatorioValor por Defecto - DEFAULT CURRENT_TIMESTAMP |
Fecha de creación del registro |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_perfil | BIGINT | Clave PrimariaAutoincremental |
Identificador único del perfil |
| codigo_perfil | VARCHAR(50) | Valor ÚnicoCampo Obligatorio |
Código único del perfil |
| nombre_perfil | VARCHAR(100) | Campo Obligatorio |
Nombre del perfil de usuario |
| descripcion | TEXT | Descripción detallada del perfil y sus responsabilidades | |
| nivel_acceso | INT | Campo ObligatorioValidación - CHECK (nivel_acceso BETWEEN 1 AND 10) |
Nivel de acceso del perfil (1=básico, 10=administrador) |
| puede_crear_proyectos | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT FALSE |
Indica si puede crear proyectos |
| puede_crear_campanias | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT FALSE |
Indica si puede crear campañas |
| puede_validar_resultados | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT FALSE |
Indica si puede validar resultados |
| puede_gestionar_usuarios | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT FALSE |
Indica si puede gestionar otros usuarios |
| activo | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si el perfil está activo |
| fecha_creacion | DATETIME | Campo ObligatorioValor por Defecto - DEFAULT CURRENT_TIMESTAMP |
Fecha de creación del registro |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_proyecto_paquete | BIGINT | Clave PrimariaAutoincremental |
Identificador único de la relación |
| id_proyecto | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES proyectos(id_proyecto) |
Proyecto al que pertenece |
| id_paquete | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES paquetes_analiticos(id_paquete) |
Paquete analítico preseleccionado |
| precio_acordado | DECIMAL(10,2) | Precio acordado para este proyecto | |
| fecha_asignacion | DATETIME | Campo ObligatorioValor por Defecto - DEFAULT CURRENT_TIMESTAMP |
Fecha de asignación del paquete al proyecto |
| activo | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si la asignación está activa |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_campania | BIGINT | Clave PrimariaAutoincremental |
Identificador único de la campaña |
| codigo_campania | VARCHAR(50) | Valor ÚnicoCampo Obligatorio |
Código único de la campaña (formato: CAMP-YYYY-NNNN) |
| id_proyecto | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES proyectos(id_proyecto) |
Referencia al proyecto al que pertenece la campaña |
| nombre_campania | VARCHAR(200) | Campo Obligatorio |
Nombre descriptivo de la campaña |
| descripcion | TEXT | Descripción detallada de la campaña | |
| fecha_creacion | DATETIME | Campo ObligatorioValor por Defecto - DEFAULT CURRENT_TIMESTAMP |
Fecha y hora de creación de la campaña |
| fecha_inicio_planificada | DATE | Fecha planificada de inicio de la campaña | |
| fecha_fin_planificada | DATE | Fecha planificada de finalización de la campaña | |
| estado_general | ENUM('Planificacion', 'En_Proceso', 'Completada', 'Cancelada', 'Suspendida') | Campo ObligatorioValor por Defecto - DEFAULT 'Planificacion' |
Estado general actual de la campaña |
| etapa_actual_id | INT | Clave Foránea - FOREIGN KEY REFERENCES etapas_proceso(id_etapa) |
Etapa actual del proceso |
| porcentaje_completado | DECIMAL(5,2) | Valor por Defecto - DEFAULT 0.00Validación - CHECK (porcentaje_completado >= 0 AND porcentaje_completado <= 100) |
Porcentaje de completado de la campaña (0-100) |
| id_laboratorio | BIGINT | Clave Foránea - FOREIGN KEY REFERENCES laboratorios(id_laboratorio) |
Laboratorio asignado para la campaña |
| usuario_responsable_id | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES usuarios(id_usuario) |
Usuario responsable actual de la campaña |
| usuario_creador_id | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES usuarios(id_usuario) |
Usuario que creó la campaña |
| costo_estimado | DECIMAL(12,2) | Costo estimado de la campaña | |
| costo_real | DECIMAL(12,2) | Costo real de la campaña | |
| moneda | VARCHAR(3) | Valor por Defecto - DEFAULT 'USD' |
Moneda para los costos (ISO 4217) |
| observaciones | TEXT | Observaciones generales de la campaña | |
| fecha_ultima_actualizacion | DATETIME | Campo ObligatorioValor por Defecto - DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP |
Fecha y hora de la última actualización |
| activo | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si el registro está activo |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_certificacion | BIGINT | Clave PrimariaAutoincremental |
Identificador único de la certificación |
| codigo_certificacion | VARCHAR(50) | Valor ÚnicoCampo Obligatorio |
Código único de la certificación |
| nombre_certificacion | VARCHAR(200) | Campo Obligatorio |
Nombre de la certificación |
| organismo_certificador | VARCHAR(200) | Organismo que otorga la certificación | |
| descripcion | TEXT | Descripción de la certificación | |
| tipo_certificacion | ENUM('ISO', 'Acreditacion', 'Licencia', 'Registro', 'Otro') | Campo Obligatorio |
Tipo de certificación |
| vigencia_anos | INT | Vigencia en años de la certificación | |
| activo | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si la certificación está activa |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_cliente | BIGINT | Clave PrimariaAutoincremental |
Identificador único del cliente |
| codigo_cliente | VARCHAR(50) | Valor ÚnicoCampo Obligatorio |
Código único del cliente |
| razon_social | VARCHAR(200) | Campo Obligatorio |
Razón social del cliente |
| nombre_comercial | VARCHAR(200) | Nombre comercial del cliente | |
| tipo_cliente | ENUM('Empresa', 'Gobierno', 'ONG', 'Particular') | Campo Obligatorio |
Tipo de cliente |
| rut_nit | VARCHAR(20) | Valor Único |
RUT o NIT del cliente |
| direccion | TEXT | Dirección del cliente | |
| ciudad | VARCHAR(100) | Ciudad del cliente | |
| pais | VARCHAR(100) | País del cliente | |
| telefono | VARCHAR(20) | Teléfono principal | |
| VARCHAR(100) | Email principal | ||
| contacto_principal | VARCHAR(200) | Nombre del contacto principal | |
| fecha_creacion | DATETIME | Campo ObligatorioValor por Defecto - DEFAULT CURRENT_TIMESTAMP |
Fecha de creación del registro |
| activo | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si el registro está activo |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_documento | BIGINT | Clave PrimariaAutoincremental |
Identificador único del documento |
| id_seguimiento | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES seguimiento_etapas(id_seguimiento) |
Referencia al seguimiento de etapa |
| id_tipo_documento | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES tipos_documento(id_tipo_documento) |
Tipo de documento |
| nombre_archivo | VARCHAR(255) | Campo Obligatorio |
Nombre original del archivo |
| nombre_archivo_sistema | VARCHAR(255) | Campo Obligatorio |
Nombre del archivo en el sistema |
| ruta_archivo | VARCHAR(500) | Campo Obligatorio |
Ruta completa del archivo |
| url_acceso | VARCHAR(500) | URL de acceso al documento | |
| tamano_bytes | BIGINT | Tamaño del archivo en bytes | |
| extension | VARCHAR(10) | Extensión del archivo | |
| mime_type | VARCHAR(100) | Tipo MIME del archivo | |
| hash_archivo | VARCHAR(64) | Hash SHA-256 del archivo para integridad | |
| descripcion | TEXT | Descripción del documento | |
| es_publico | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT FALSE |
Indica si el documento es público |
| usuario_subida_id | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES usuarios(id_usuario) |
Usuario que subió el documento |
| fecha_subida | DATETIME | Campo ObligatorioValor por Defecto - DEFAULT CURRENT_TIMESTAMP |
Fecha y hora de subida del documento |
| version | INT | Campo ObligatorioValor por Defecto - DEFAULT 1 |
Versión del documento |
| activo | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si el documento está activo |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_especialidad | BIGINT | Clave PrimariaAutoincremental |
Identificador único de la especialidad |
| codigo_especialidad | VARCHAR(50) | Valor ÚnicoCampo Obligatorio |
Código único de la especialidad |
| nombre_especialidad | VARCHAR(200) | Campo Obligatorio |
Nombre de la especialidad |
| descripcion | TEXT | Descripción de la especialidad | |
| categoria | VARCHAR(100) | Categoría de la especialidad | |
| activo | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si la especialidad está activa |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_dato_especifico | BIGINT | Clave PrimariaAutoincremental |
Identificador único del dato específico |
| id_seguimiento | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES seguimiento_etapas(id_seguimiento) |
Referencia al seguimiento de etapa |
| nombre_campo | VARCHAR(100) | Campo Obligatorio |
Nombre del campo específico |
| etiqueta_campo | VARCHAR(200) | Etiqueta legible del campo | |
| tipo_dato | ENUM('Texto', 'Numero', 'Fecha', 'Boolean', 'Decimal', 'Lista', 'Archivo') | Campo Obligatorio |
Tipo de dato del campo |
| valor_texto | TEXT | Valor cuando es tipo texto | |
| valor_numerico | BIGINT | Valor cuando es tipo numérico entero | |
| valor_decimal | DECIMAL(15,6) | Valor cuando es tipo decimal | |
| valor_fecha | DATETIME | Valor cuando es tipo fecha | |
| valor_boolean | BOOLEAN | Valor cuando es tipo boolean | |
| unidad_medida | VARCHAR(50) | Unidad de medida para valores numéricos | |
| descripcion | TEXT | Descripción del dato específico | |
| es_obligatorio | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT FALSE |
Indica si el campo es obligatorio |
| orden_presentacion | INT | Valor por Defecto - DEFAULT 1 |
Orden de presentación del campo |
| fecha_registro | DATETIME | Campo ObligatorioValor por Defecto - DEFAULT CURRENT_TIMESTAMP |
Fecha de registro del dato |
| usuario_registro_id | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES usuarios(id_usuario) |
Usuario que registró el dato |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_etapa_origen | INT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES etapas_proceso(id_etapa) |
Etapa que debe completarse primero |
| id_etapa_destino | INT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES etapas_proceso(id_etapa) |
Etapa que depende de la etapa origen |
| tipo_dependencia | ENUM('Secuencial', 'Condicional', 'Paralela', 'Opcional') | Campo ObligatorioValor por Defecto - DEFAULT 'Secuencial' |
Tipo de dependencia entre etapas |
| condicion | TEXT | Condición específica para la dependencia | |
| tiempo_espera_horas | INT | Valor por Defecto - DEFAULT 0 |
Tiempo de espera en horas antes de iniciar la etapa destino |
| es_critica | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si la dependencia es crítica |
| activo | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si la dependencia está activa |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_etapa | INT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES etapas_proceso(id_etapa) |
Referencia a la etapa |
| id_tipo_documento | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES tipos_documento(id_tipo_documento) |
Referencia al tipo de documento |
| es_obligatorio | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si el documento es obligatorio para la etapa |
| orden_presentacion | INT | Valor por Defecto - DEFAULT 1 |
Orden de presentación del documento |
| instrucciones | TEXT | Instrucciones específicas para el documento | |
| activo | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si el requerimiento está activo |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_validacion | BIGINT | Clave PrimariaAutoincremental |
Identificador único de la validación |
| id_etapa | INT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES etapas_proceso(id_etapa) |
Referencia a la etapa |
| nombre_validacion | VARCHAR(200) | Campo Obligatorio |
Nombre de la validación |
| descripcion | TEXT | Descripción de la validación | |
| tipo_validacion | ENUM('Campo_Obligatorio', 'Formato', 'Rango', 'Dependencia', 'Negocio', 'Documento') | Campo Obligatorio |
Tipo de validación |
| campo_objetivo | VARCHAR(100) | Campo al que se aplica la validación | |
| regla_validacion | TEXT | Campo Obligatorio |
Regla de validación en formato legible |
| expresion_validacion | TEXT | Expresión técnica de validación (regex, SQL, etc.) | |
| mensaje_error | TEXT | Campo Obligatorio |
Mensaje de error a mostrar |
| es_critica | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT FALSE |
Indica si la validación es crítica |
| orden_ejecucion | INT | Valor por Defecto - DEFAULT 1 |
Orden de ejecución de la validación |
| activo | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si la validación está activa |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_etapa | INT | Clave PrimariaAutoincremental |
Identificador único de la etapa |
| numero_etapa | INT | Campo ObligatorioValor Único |
Número secuencial de la etapa |
| nombre_etapa | VARCHAR(200) | Campo Obligatorio |
Nombre de la etapa |
| descripcion | TEXT | Descripción de la etapa | |
| tipo_etapa | ENUM('Planificacion', 'Ejecucion', 'Control', 'Cierre') | Campo Obligatorio |
Tipo de etapa |
| es_obligatoria | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si la etapa es obligatoria |
| permite_paralelo | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT FALSE |
Indica si permite ejecución en paralelo |
| duracion_estimada_dias | INT | Duración estimada en días | |
| activo | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si la etapa está activa |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_laboratorio | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES laboratorios(id_laboratorio) |
Referencia al laboratorio |
| id_certificacion | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES certificaciones(id_certificacion) |
Referencia a la certificación |
| numero_certificado | VARCHAR(100) | Número del certificado | |
| fecha_obtencion | DATE | Campo Obligatorio |
Fecha de obtención de la certificación |
| fecha_vencimiento | DATE | Fecha de vencimiento de la certificación | |
| estado | ENUM('Vigente', 'Vencida', 'Suspendida', 'Revocada') | Campo ObligatorioValor por Defecto - DEFAULT 'Vigente' |
Estado de la certificación |
| archivo_certificado | VARCHAR(500) | Ruta del archivo del certificado | |
| fecha_registro | DATETIME | Campo ObligatorioValor por Defecto - DEFAULT CURRENT_TIMESTAMP |
Fecha de registro de la certificación |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_laboratorio | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES laboratorios(id_laboratorio) |
Referencia al laboratorio |
| id_especialidad | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES especialidades_laboratorio(id_especialidad) |
Referencia a la especialidad |
| fecha_certificacion | DATE | Fecha de certificación en la especialidad | |
| fecha_vencimiento | DATE | Fecha de vencimiento de la certificación | |
| nivel_competencia | ENUM('Basico', 'Intermedio', 'Avanzado', 'Experto') | Valor por Defecto - DEFAULT 'Basico' |
Nivel de competencia en la especialidad |
| vigente | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si la certificación está vigente |
| fecha_asignacion | DATETIME | Campo ObligatorioValor por Defecto - DEFAULT CURRENT_TIMESTAMP |
Fecha de asignación de la especialidad |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_laboratorio | BIGINT | Clave PrimariaAutoincremental |
Identificador único del laboratorio |
| codigo_laboratorio | VARCHAR(50) | Valor ÚnicoCampo Obligatorio |
Código único del laboratorio |
| nombre_laboratorio | VARCHAR(200) | Campo Obligatorio |
Nombre del laboratorio |
| razon_social | VARCHAR(200) | Razón social del laboratorio | |
| rut_nit | VARCHAR(20) | Valor Único |
RUT o NIT del laboratorio |
| direccion | TEXT | Dirección del laboratorio | |
| ciudad | VARCHAR(100) | Ciudad del laboratorio | |
| pais | VARCHAR(100) | País del laboratorio | |
| telefono | VARCHAR(20) | Teléfono principal | |
| VARCHAR(100) | Email principal | ||
| sitio_web | VARCHAR(200) | Sitio web del laboratorio | |
| contacto_principal | VARCHAR(200) | Nombre del contacto principal | |
| tiene_web_service | BOOLEAN | Valor por Defecto - DEFAULT FALSE |
Indica si el laboratorio tiene servicio web |
| url_web_service | VARCHAR(500) | URL del servicio web | |
| estado | ENUM('Activo', 'Inactivo', 'Suspendido') | Campo ObligatorioValor por Defecto - DEFAULT 'Activo' |
Estado del laboratorio |
| fecha_creacion | DATETIME | Campo ObligatorioValor por Defecto - DEFAULT CURRENT_TIMESTAMP |
Fecha de creación del registro |
| activo | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si el registro está activo |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_permiso | BIGINT | Clave PrimariaAutoincremental |
Identificador único del permiso |
| codigo_permiso | VARCHAR(50) | Valor ÚnicoCampo Obligatorio |
Código único del permiso |
| nombre_permiso | VARCHAR(200) | Campo Obligatorio |
Nombre del permiso |
| descripcion | TEXT | Descripción del permiso | |
| modulo | VARCHAR(100) | Campo Obligatorio |
Módulo al que pertenece el permiso |
| accion | ENUM('Crear', 'Leer', 'Actualizar', 'Eliminar', 'Ejecutar', 'Administrar') | Campo Obligatorio |
Acción que permite el permiso |
| nivel_acceso | ENUM('Basico', 'Intermedio', 'Avanzado', 'Administrador') | Campo ObligatorioValor por Defecto - DEFAULT 'Basico' |
Nivel de acceso requerido |
| activo | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si el permiso está activo |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_proyecto | BIGINT | Clave PrimariaAutoincremental |
Identificador único del proyecto |
| codigo_proyecto | VARCHAR(50) | Valor ÚnicoCampo Obligatorio |
Código único del proyecto |
| nombre_proyecto | VARCHAR(200) | Campo Obligatorio |
Nombre del proyecto |
| descripcion | TEXT | Descripción del proyecto | |
| id_cliente | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES clientes(id_cliente) |
Cliente propietario del proyecto |
| fecha_inicio | DATE | Fecha de inicio del proyecto | |
| fecha_fin_estimada | DATE | Fecha estimada de finalización | |
| estado | ENUM('Activo', 'Suspendido', 'Completado', 'Cancelado') | Campo ObligatorioValor por Defecto - DEFAULT 'Activo' |
Estado actual del proyecto |
| presupuesto | DECIMAL(12,2) | Presupuesto total del proyecto | |
| moneda | VARCHAR(3) | Valor por Defecto - DEFAULT 'USD' |
Moneda del presupuesto |
| usuario_responsable_id | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES usuarios(id_usuario) |
Usuario responsable del proyecto |
| fecha_creacion | DATETIME | Campo ObligatorioValor por Defecto - DEFAULT CURRENT_TIMESTAMP |
Fecha de creación del registro |
| activo | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si el registro está activo |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_seguimiento | BIGINT | Clave PrimariaAutoincremental |
Identificador único del seguimiento |
| id_campania | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES campanias_analiticas(id_campania) |
Referencia a la campaña |
| id_etapa | INT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES etapas_proceso(id_etapa) |
Referencia a la etapa |
| numero_intento | INT | Campo ObligatorioValor por Defecto - DEFAULT 1 |
Número de intento de la etapa |
| estado | ENUM('Pendiente', 'En_Proceso', 'Completada', 'Bloqueada', 'Cancelada') | Campo ObligatorioValor por Defecto - DEFAULT 'Pendiente' |
Estado actual de la etapa |
| fecha_inicio | DATETIME | Fecha y hora de inicio de la etapa | |
| fecha_fin | DATETIME | Fecha y hora de finalización de la etapa | |
| fecha_limite | DATETIME | Fecha límite para completar la etapa | |
| usuario_responsable_id | BIGINT | Clave Foránea - FOREIGN KEY REFERENCES usuarios(id_usuario) |
Usuario responsable de la etapa |
| usuario_ejecutor_id | BIGINT | Clave Foránea - FOREIGN KEY REFERENCES usuarios(id_usuario) |
Usuario que ejecuta la etapa |
| porcentaje_avance | DECIMAL(5,2) | Valor por Defecto - DEFAULT 0.00Validación - CHECK (porcentaje_avance >= 0 AND porcentaje_avance <= 100) |
Porcentaje de avance de la etapa |
| observaciones | TEXT | Observaciones específicas de la etapa | |
| fecha_creacion | DATETIME | Campo ObligatorioValor por Defecto - DEFAULT CURRENT_TIMESTAMP |
Fecha de creación del registro |
| fecha_actualizacion | DATETIME | Campo ObligatorioValor por Defecto - DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP |
Fecha de última actualización |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_tipo_documento | BIGINT | Clave PrimariaAutoincremental |
Identificador único del tipo de documento |
| codigo_tipo | VARCHAR(50) | Valor ÚnicoCampo Obligatorio |
Código único del tipo de documento |
| nombre_tipo | VARCHAR(200) | Campo Obligatorio |
Nombre del tipo de documento |
| descripcion | TEXT | Descripción del tipo de documento | |
| categoria | ENUM('Evidencia', 'Reporte', 'Certificado', 'Solicitud', 'Resultado', 'Factura', 'Otro') | Campo Obligatorio |
Categoría del documento |
| extension_permitida | VARCHAR(200) | Extensiones de archivo permitidas (separadas por coma) | |
| tamano_maximo_mb | INT | Valor por Defecto - DEFAULT 10 |
Tamaño máximo permitido en MB |
| es_obligatorio | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT FALSE |
Indica si el documento es obligatorio |
| activo | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si el tipo está activo |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_usuario | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES usuarios(id_usuario) |
Referencia al usuario |
| id_permiso | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES permisos_sistema(id_permiso) |
Referencia al permiso |
| fecha_asignacion | DATETIME | Campo ObligatorioValor por Defecto - DEFAULT CURRENT_TIMESTAMP |
Fecha de asignación del permiso |
| fecha_expiracion | DATE | Fecha de expiración del permiso | |
| asignado_por | BIGINT | Campo ObligatorioClave Foránea - FOREIGN KEY REFERENCES usuarios(id_usuario) |
Usuario que asignó el permiso |
| activo | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si la asignación está activa |
| Campo | Tipo de Dato | Restricciones | Descripción |
|---|---|---|---|
| id_usuario | BIGINT | Clave PrimariaAutoincremental |
Identificador único del usuario |
| codigo_usuario | VARCHAR(50) | Valor ÚnicoCampo Obligatorio |
Código único del usuario |
| nombre_completo | VARCHAR(200) | Campo Obligatorio |
Nombre completo del usuario |
| VARCHAR(100) | Valor ÚnicoCampo Obligatorio |
Email del usuario | |
| telefono | VARCHAR(20) | Teléfono del usuario | |
| cargo | VARCHAR(100) | Cargo del usuario | |
| departamento | VARCHAR(100) | Departamento del usuario | |
| fecha_ingreso | DATE | Fecha de ingreso del usuario | |
| estado | ENUM('Activo', 'Inactivo', 'Suspendido') | Campo ObligatorioValor por Defecto - DEFAULT 'Activo' |
Estado del usuario |
| fecha_ultimo_acceso | DATETIME | Fecha del último acceso | |
| fecha_creacion | DATETIME | Campo ObligatorioValor por Defecto - DEFAULT CURRENT_TIMESTAMP |
Fecha de creación del registro |
| activo | BOOLEAN | Campo ObligatorioValor por Defecto - DEFAULT TRUE |
Indica si el registro está activo |