Alter DB schema to include register custom labels
This commit is contained in:
parent
a808c8d0a9
commit
1cb2885454
@ -1,5 +1,8 @@
|
|||||||
-- Mysql schema
|
-- Mysql schema
|
||||||
|
|
||||||
|
-- Enter the mysql container
|
||||||
|
-- sudo docker exec -it eegsac mysql -u root --password=123456789 educa7ls_plataforma
|
||||||
|
|
||||||
-- docker run --name eegsac -e MYSQL_ROOT_PASSWORD=123456789 -p 3306:3306 -d mysql:8.0-debian
|
-- docker run --name eegsac -e MYSQL_ROOT_PASSWORD=123456789 -p 3306:3306 -d mysql:8.0-debian
|
||||||
|
|
||||||
CREATE TABLE person (
|
CREATE TABLE person (
|
||||||
@ -23,166 +26,38 @@ CREATE TABLE register (
|
|||||||
register_code INTEGER NOT NULL,
|
register_code INTEGER NOT NULL,
|
||||||
register_creation_date DATETIME NOT NULL,
|
register_creation_date DATETIME NOT NULL,
|
||||||
register_display_date DATETIME NOT NULL,
|
register_display_date DATETIME NOT NULL,
|
||||||
register_custom_label VARCHAR(100) NOT NULL,
|
register_custom_label INTEGER NOT NULL,
|
||||||
register_is_preview BOOLEAN NOT NULL,
|
register_is_preview BOOLEAN NOT NULL,
|
||||||
register_person_id INTEGER NOT NULL,
|
register_person_id INTEGER NOT NULL,
|
||||||
register_course_id INTEGER NOT NULL,
|
register_course_id INTEGER NOT NULL,
|
||||||
|
|
||||||
FOREIGN KEY (register_person_id) REFERENCES person (person_id),
|
FOREIGN KEY (register_person_id) REFERENCES person (person_id),
|
||||||
FOREIGN KEY (register_course_id) REFERENCES course (course_id)
|
FOREIGN KEY (register_course_id) REFERENCES course (course_id),
|
||||||
|
|
||||||
|
CONSTRAINT fk_register_custom_label
|
||||||
|
FOREIGN KEY (register_custom_label)
|
||||||
|
REFERENCES custom_label(custom_label_id)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE custom_label (
|
||||||
|
custom_label_id INTEGER PRIMARY KEY AUTO_INCREMENT,
|
||||||
|
custom_label_value VARCHAR(50) NOT NULL
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
-- Course list
|
-- Migration
|
||||||
INSERT INTO course (course_name, course_display_name, course_days_amount, course_has_custom_label) VALUES
|
|
||||||
--
|
|
||||||
-- Comunes
|
|
||||||
--
|
|
||||||
('Manejo Def.', 'Manejo Defensivo', 1, 0),
|
|
||||||
('Mec. Basica', 'Mecánica Básica', 1, 0),
|
|
||||||
('4x4', 'Manejo en 4x4 Road Danger', 1, 0),
|
|
||||||
('Matpel 1', 'Matpel I - Advertencia', 1, 0),
|
|
||||||
('Matpel 2', 'Matpel II - Operaciones', 1, 0),
|
|
||||||
('Matpel 3', 'Matpel III - Técnico', 3, 0),
|
|
||||||
('Sup. Escolta', 'Supervisor Escolta Matpel', 7, 0),
|
|
||||||
('1ros auxilios', 'Primeros Auxilios', 1, 0),
|
|
||||||
('Lucha contra incendios', 'Lucha contra Incendios', 1, 0),
|
|
||||||
('Extintores', 'Uso y Manejo de Extintores', 1, 0),
|
|
||||||
('IPERC', 'IDENTIFICACIÓN DE PELIGROS, EVALUACIÓN DE RIESGOS Y CONTROLES (IPERC)', 1, 0),
|
|
||||||
|
|
||||||
--
|
-- Empty label
|
||||||
-- Maquinarias
|
INSERT INTO custom_label (custom_label_value) VALUES ('');
|
||||||
--
|
|
||||||
('Cargador frontal', 'Operador profesional de Cargador Frontal', 5, 1),
|
|
||||||
('Excavadora', 'Operador profesional de Excavadora', 5, 1),
|
|
||||||
('Retroexcavadora', 'Operador profesional de Retroexcavadora', 5, 1),
|
|
||||||
('Volquete', 'Operador profesional de Volquete', 5, 1),
|
|
||||||
('Minicargador', 'Operador profesional de Minicargador', 5, 1),
|
|
||||||
('Montacarga', 'Operador profesional de Montacarga', 5, 1),
|
|
||||||
('Rodillo', 'Operador profesional de Rodillo', 5, 1),
|
|
||||||
('Telehandler', 'Operador profesional de Telehandler', 5, 1),
|
|
||||||
('Camion grua', 'Operador Profesional de Grua', 5, 1),
|
|
||||||
('Tractor Oruga', 'Operador profesional de Tractor Oruga', 5, 1),
|
|
||||||
-- 90 hours
|
|
||||||
('SCOOPTRAMS', 'Operador profesional de SCOOPTRAMS', 8, 1),
|
|
||||||
-- 2 months
|
|
||||||
('Jumbo', 'Operador profesional de Jumbo', 60, 1),
|
|
||||||
('Motoniveladora', 'Operador profesional de Motoniveladora', 5, 1),
|
|
||||||
|
|
||||||
|
ALTER TABLE register MODIFY COLUMN register_custom_label INTEGER NOT NULL DEFAULT 1;
|
||||||
|
|
||||||
--
|
-- Set all registers by default to empty label
|
||||||
-- Seguridad de maquinarias
|
UPDATE register SET register_custom_label = 1;
|
||||||
--
|
|
||||||
('Seg. de Montacarga', 'Operación segura de Montacargas', 1, 0),
|
|
||||||
('Seg. Op. Maquinaria Pesada', 'Seguridad en la Operacion de Maquinaria Pesada', 3, 0),
|
|
||||||
('Seg. de Jumbo', 'SEGURIDAD EN LA OPERACIÓN DE JUMBO PERFORADOR', 30, 0),
|
|
||||||
|
|
||||||
-- Otros
|
-- Add constraint after all values are set to empty label
|
||||||
('Matpel 4', 'Matpel IV', 3, 0),
|
ALTER TABLE register CONSTRAINT fk_register_custom_label
|
||||||
('Herr. de Gestion', 'Herramientas de Gestión', 1, 0),
|
FOREIGN KEY (register_custom_label)
|
||||||
('Seguridad minera', 'Seguridad Minera', 1, 0),
|
REFERENCES custom_label(custom_label_id);
|
||||||
('SBComportamiento', 'Seguridad Basada en el Comportamiento', 1, 0),
|
|
||||||
('Primer respondedor', 'Primer Respondedor', 1, 0),
|
|
||||||
('Operador multiple', 'Operador múltiple', 1, 0),
|
|
||||||
('RITRA', 'RITRA', 1, 0),
|
|
||||||
('Fatiga y somnolencia', 'Fatiga y Somnolencia', 1, 0),
|
|
||||||
('Bioseguridad y la Salud Ocupacional', 'Bioseguridad y la Salud Ocupacional', 1, 0),
|
|
||||||
('Seguridad y Salud en Mineria', 'Seguridad y Salud en Mineria', 1, 0),
|
|
||||||
('Espacios Confinados', 'Espacios Confinados', 1, 0),
|
|
||||||
('Manipulación de productos químicos', 'Manipulación de productos químicos', 1, 0),
|
|
||||||
('Interpretación del Reglamento Interno de Transito', 'Interpretación del Reglamento Interno de Transito', 1, 0),
|
|
||||||
('DERRAMES DE HIDROCARBUROS', 'DERRAMES DE HIDROCARBUROS', 1, 0),
|
|
||||||
('PREVENCIÓN Y CONTROL DE COVID-19', 'PREVENCIÓN Y CONTROL DE COVID-19', 1, 0),
|
|
||||||
('BIOSEGURIDAD EN EL TRABAJO', 'BIOSEGURIDAD EN EL TRABAJO', 1, 0),
|
|
||||||
('Seguridad en la Operación', 'Seguridad en la Operación', 1, 0),
|
|
||||||
('IMPLEMENTACIÓN DE PLAN DE VIGILANCIA ', 'IMPLEMENTACIÓN DE PLAN DE VIGILANCIA ', 1, 0),
|
|
||||||
('ESPECIALIZACION PERFORACION Y VOLADURA', 'ESPECIALIZACION PERFORACION Y VOLADURA', 1, 0),
|
|
||||||
('SEGURIDAD Y SALUD EN EL TRABAJO frente al COVID-19', 'SEGURIDAD Y SALUD EN EL TRABAJO frente al COVID-19', 1, 0),
|
|
||||||
|
|
||||||
('Supervisor de trabajos en alto riesgo', 'Supervisor de trabajos en alto riesgo', 1, 0),
|
|
||||||
('Técnicas preventivas en la operación de maquinaria', 'Técnicas preventivas en la operación de maquinaria', 1, 0),
|
|
||||||
('Prevención y protección contra incendios', 'Prevención y protección contra incendios', 1, 0),
|
|
||||||
('Salud ocupacional y primeros auxilios', 'Salud ocupacional y primeros auxilios', 1, 0),
|
|
||||||
|
|
||||||
-- Merge with next cert, the same
|
-- End migration
|
||||||
('Manejo defensivo y transporte personal', 'Manejo defensivo y transporte personal', 1, 0),
|
|
||||||
('Seguridad con materiales peligrosos', 'Seguridad con materiales peligrosos', 1, 0),
|
|
||||||
('Operador CAT', 'Operador CAT', 1, 0),
|
|
||||||
('Brigada de emergencia', 'Brigada de emergencia', 1, 0),
|
|
||||||
('Seguridad en trabajos de alto riesgo', 'Seguridad en trabajos de alto riesgo', 1, 0),
|
|
||||||
('Supervisor de seguridad minera e industrial', 'Supervisor de seguridad minera e industrial', 1, 0),
|
|
||||||
('Logística, transporte, almacenaje y manutención', 'Logística, transporte, almacenaje y manutención', 1, 0),
|
|
||||||
|
|
||||||
('PRIMEROS AUXILIOS (BIOSEGURIDAD) frente al COVID -', 'PRIMEROS AUXILIOS (BIOSEGURIDAD) frente al COVID -', 1, 0),
|
|
||||||
('SEGURIDAD Y SALUD EN EL TRABAJO, bajo normativas a', 'SEGURIDAD Y SALUD EN EL TRABAJO, bajo normativas a', 1, 0),
|
|
||||||
|
|
||||||
('Especialización operador de puente grúa', 'Especialización operador de puente grúa', 1, 0),
|
|
||||||
('Caja Fuller', 'Caja Fuller', 1, 0),
|
|
||||||
-- ? Merge?
|
|
||||||
('Especialización Cargador Frontal', 'Especialización Cargador Frontal', 1, 0),
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
('Rescatista Industrial', 'Rescatista Industrial', 1, 0),
|
|
||||||
('Camión Minero 797F CAT', 'Camión Minero 797F CAT', 1, 0),
|
|
||||||
('Investigación de accidentes e incidentes', 'Investigación de accidentes e incidentes', 1, 0),
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
('Sistema de Comando de Incidentes SCI', 'Sistema de Comando de Incidentes SCI', 1, 0),
|
|
||||||
('Seguridad en la Operación de Camión Minero de Alto', 'Seguridad en la Operación de Camión Minero de Alto', 1, 0),
|
|
||||||
('Seguridad Minera frente al Covid-19', 'Seguridad Minera frente al Covid-19', 1, 0),
|
|
||||||
('Operador de Camión Lubricador', 'Operador de Camión Lubricador', 1, 0),
|
|
||||||
('RIGGER', 'RIGGER o Auxiliar de Operador Grua', 1, 0),
|
|
||||||
|
|
||||||
|
|
||||||
('Operador de Elevador de Tijera', 'Operador de Elevador de Tijera', 1, 0),
|
|
||||||
('Trabajos en Caliente', 'Trabajos en Caliente', 1, 0),
|
|
||||||
('Operador Grua Articulada ANSI/ASME', 'Operador Grua Articulada ANSI/ASME', 1, 0),
|
|
||||||
('Operador Calificado KOMATSU', 'Operador Calificado KOMATSU', 1, 0),
|
|
||||||
('Cuidado del Medio AMbiente', 'Cuidado del Medio AMbiente', 1, 0),
|
|
||||||
('Campaña \"No al exceso de velocidad\"', 'Campaña \"No al exceso de velocidad\"', 1, 0),
|
|
||||||
('INCENDIO EN VEHÍCULOS', 'INCENDIO EN VEHÍCULOS', 1, 0),
|
|
||||||
('Sensibilización Primeros Auxilios', 'Sensibilización Primeros Auxilios', 1, 0),
|
|
||||||
('Inspecciones de Seguridad', 'Inspecciones de Seguridad', 1, 0),
|
|
||||||
('Transporte de Personal Industrial', 'Transporte de Personal Industrial', 1, 0),
|
|
||||||
('BIOSEGURIDAD EN INDUSTRIA Y MINERIA EN COVID-19', 'BIOSEGURIDAD EN INDUSTRIA Y MINERIA EN COVID-19', 1, 0),
|
|
||||||
('CAMPAÑA DE NO ALCOHOL', 'CAMPAÑA DE NO ALCOHOL', 1, 0),
|
|
||||||
('OPERACIÓN, LOGÍSTICA Y ALMACENES', 'OPERACIÓN, LOGÍSTICA Y ALMACENES', 1, 0),
|
|
||||||
('Trabajos en Altura ', 'Trabajos en Altura ', 1, 0),
|
|
||||||
('PERFORACIÓN Y VOLADURA', 'PERFORACIÓN Y VOLADURA', 1, 0),
|
|
||||||
('SEGURIDAD Y SALUD EN EL TRABAJO', 'SEGURIDAD Y SALUD EN EL TRABAJO', 1, 0),
|
|
||||||
('PREVENCIÓN DE RIESGOS LABORALES', 'PREVENCIÓN DE RIESGOS LABORALES', 1, 0),
|
|
||||||
|
|
||||||
-- ?? Merge?
|
|
||||||
('MANEJO DEFENSIVO 4X4', 'MANEJO DEFENSIVO 4X4', 1, 0),
|
|
||||||
-- Merge
|
|
||||||
('MANEJO DEFENSIVO Y TRANSPORTE PERSONAL', 'MANEJO DEFENSIVO Y TRANSPORTE PERSONAL', 1, 0),
|
|
||||||
('CONDUCCIÓN SEGURA', 'CONDUCCIÓN SEGURA', 1, 0),
|
|
||||||
('MANEJO Y MANTENIMIENTO OPERADOR DE SEMITRAILER', 'MANEJO Y MANTENIMIENTO OPERADOR DE SEMITRAILER', 1, 0),
|
|
||||||
('OPERADOR CAMION CISTERNA', 'OPERADOR CAMION CISTERNA', 1, 0),
|
|
||||||
('SEMITRAILER INTERNATIONAL', 'SEMITRAILER INTERNATIONAL', 1, 0),
|
|
||||||
('Procedimientos de carga y descarga de combustibles', 'Procedimientos de carga y descarga de combustibles', 1, 0),
|
|
||||||
('Transporte seguro de materiales y residuos peligro', 'Transporte seguro de materiales y residuos peligro', 1, 0),
|
|
||||||
('GESTIÓN DE ALMACENES EN GENERAL', 'GESTIÓN DE ALMACENES EN GENERAL', 1, 0),
|
|
||||||
('Operación Segura para Transporte de Hidrocarburos ', 'Operación Segura para Transporte de Hidrocarburos ', 1, 0),
|
|
||||||
('COMO EVITAR ACTOS SUBESTANDAR DURANTE LA OPERACIÓN', 'COMO EVITAR ACTOS SUBESTANDAR DURANTE LA OPERACIÓN', 1, 0),
|
|
||||||
('MANIOBRAS TEMERARIAS', 'MANIOBRAS TEMERARIAS', 1, 0),
|
|
||||||
('MANIOBRAS EN PARQUEOS Y ZONAS CERCA A PERSONAL QUE', 'MANIOBRAS EN PARQUEOS Y ZONAS CERCA A PERSONAL QUE', 1, 0),
|
|
||||||
('LÍMITES DE VELOCIDAD', 'LÍMITES DE VELOCIDAD', 1, 0),
|
|
||||||
|
|
||||||
-- Merge
|
|
||||||
('Cargador Frontal 950M CAT', 'Cargador Frontal 950M CAT', 1, 0),
|
|
||||||
('CAMPAÑA DE NO ALCOHOL Y DROGAS', 'CAMPAÑA DE NO ALCOHOL Y DROGAS', 1, 0),
|
|
||||||
('GESTIÓN DE RESIDUOS SOLIDOS', 'GESTIÓN DE RESIDUOS SOLIDOS', 1, 0),
|
|
||||||
('Tractor de Ruedas', 'Tractor de Ruedas', 1, 0),
|
|
||||||
('Manlift', 'Manlift', 1, 0),
|
|
||||||
('ASPECTOS E IMPACTO AMBIENTAL', 'ASPECTOS E IMPACTO AMBIENTAL', 1, 0),
|
|
||||||
('INVESTIGACIÓN DE ACCIDENTES', 'INVESTIGACIÓN DE ACCIDENTES', 1, 0),
|
|
||||||
('MANEJO DE RESIDUOS', 'MANEJO DE RESIDUOS', 1, 0),
|
|
||||||
|
|
||||||
-- Merge
|
|
||||||
('OPERADOR DE SCOOPTRANS R1600H', 'OPERADOR DE SCOOPTRANS R1600H', 1, 0),
|
|
||||||
('ELECTRICIDAD Y MANTENIMIENTO DE VOLQUETE', 'ELECTRICIDAD Y MANTENIMIENTO DE VOLQUETE', 1, 0),
|
|
||||||
('CARGAS Y MERCANCÍAS', 'CARGAS Y MERCANCÍAS', 1, 0)
|
|
||||||
;
|
|
||||||
|
@ -29,9 +29,8 @@ pub struct Register {
|
|||||||
/// Date shown on the certificate, in YYYY-MM-DD format
|
/// Date shown on the certificate, in YYYY-MM-DD format
|
||||||
pub register_display_date: String,
|
pub register_display_date: String,
|
||||||
/// Some course's names can be extended with a label.
|
/// Some course's names can be extended with a label.
|
||||||
/// Used in machinery courses, where the course name is the type of machinery,
|
/// Points to a custom_label entity
|
||||||
/// and the custom label the manufacturer and series (i.e. `320D CAT`).
|
pub register_custom_label: i32,
|
||||||
pub register_custom_label: String,
|
|
||||||
/// Whether this register is a preview of the certificate ("sin firmas")
|
/// Whether this register is a preview of the certificate ("sin firmas")
|
||||||
pub register_is_preview: bool,
|
pub register_is_preview: bool,
|
||||||
/// Foreign key to the person table
|
/// Foreign key to the person table
|
||||||
@ -62,7 +61,7 @@ impl RegisterCreate {
|
|||||||
next_register_code,
|
next_register_code,
|
||||||
current_date,
|
current_date,
|
||||||
self.date,
|
self.date,
|
||||||
"",
|
1,
|
||||||
false,
|
false,
|
||||||
self.person_id,
|
self.person_id,
|
||||||
self.course_id
|
self.course_id
|
||||||
|
@ -19,9 +19,8 @@ export type Register = {
|
|||||||
/// Date shown on the certificate, in YYYY-MM-DD format
|
/// Date shown on the certificate, in YYYY-MM-DD format
|
||||||
register_display_date: string,
|
register_display_date: string,
|
||||||
/// Some course's names can be extended with a label.
|
/// Some course's names can be extended with a label.
|
||||||
/// Used in machinery courses, where the course name is the type of machinery,
|
/// Points to another entity
|
||||||
/// and the custom label the manufacturer and series (i.e. `320D CAT`).
|
register_custom_label: number,
|
||||||
register_custom_label: string,
|
|
||||||
/// Foreign key to the person table
|
/// Foreign key to the person table
|
||||||
register_person_id: number,
|
register_person_id: number,
|
||||||
/// Foreign key to the course table
|
/// Foreign key to the course table
|
||||||
|
Loading…
Reference in New Issue
Block a user