Repository navigation
Expand file tree
/
Copy pathapp.sql
More file actions
155 lines (138 loc) · 6.51 KB
/
Copy pathapp.sql
File metadata and controls
155 lines (138 loc) · 6.51 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
drop database if exists app;
create database app;
use app;
create table perfil (
id int not null auto_increment primary key,
descripcion varchar(100) not null
) DEFAULT CHARSET=utf8;
create table modulo (
id int not null auto_increment primary key,
descripcion varchar(100) not null,
uri varchar(120) not null,
shorthand varchar(50) not null
) DEFAULT CHARSET=utf8;
create table moduloPorPerfil (
perfil_id int not null references perfil,
modulo_id int not null references modulo
) DEFAULT CHARSET=utf8;
create table area (
id int not null auto_increment primary key,
descripcion varchar(30) not null
) DEFAULT CHARSET=utf8;
create table usuario (
id int not null auto_increment primary key,
usuario varchar(32) not null,
password varchar(64) not null,
perfil_id int not null references perfil,
area_id int null references area
) DEFAULT CHARSET=utf8;
create table equipo (
codigoPatrimonial int not null auto_increment primary key,
denominacion text not null,
fabricante text not null,
area_id int not null references area,
enproceso boolean not null default false,
dadodebaja boolean not null default false,
asignado boolean not null default false
) DEFAULT CHARSET=utf8;
create table tecnico (
id int not null auto_increment primary key,
nombres varchar(50) not null,
apellidos varchar(50) not null,
fechaIngreso date not null,
especialidad varchar(50) not null,
usuario_id int not null references usuario
) DEFAULT CHARSET=utf8;
create table solicitud (
id int not null auto_increment primary key,
fecha timestamp,
usuario_id int not null references usuario,
enatencion boolean not null default false
) DEFAULT CHARSET=utf8;
create table detalleSolicitud (
id int not null auto_increment primary key,
solicitud_id int not null references solicitud,
equipo_id int not null references equipo,
problema text not null
) DEFAULT CHARSET=utf8;
create table reparacion (
id int not null auto_increment primary key,
detallesolicitud_id int not null references detalleSolicitud,
equipo_id int not null references equipo,
tecnico_id int not null references tecnico,
diagnostico text,
prioridad varchar(20),
atendida boolean not null default false,
unique(detallesolicitud_id, equipo_id)
) DEFAULT CHARSET=utf8;
create table detalleReparacion (
id int not null auto_increment primary key,
reparacion_id int not null references reparacion,
trabajo text,
costo double,
garantia double,
recomendaciones text,
unique(reparacion_id)
) DEFAULT CHARSET=utf8;
create table ordenTerceros (
id int not null auto_increment primary key,
reparacion_id int not null references reparacion,
sustentacion text
) DEFAULT CHARSET=utf8;
#dummy data
#area
insert into area (descripcion) values ('Mantenimiento');
insert into area (descripcion) values ('Recursos Humanos');
insert into area (descripcion) values ('Emergencias');
insert into area (descripcion) values ('Clínica');
insert into area (descripcion) values ('Logística');
#perfil
insert into perfil (descripcion) values ('Administrador');
insert into perfil (descripcion) values ('Jefe del área');
insert into perfil (descripcion) values ('Técnico interno');
insert into perfil (descripcion) values ('Usuario');
insert into perfil (descripcion) values ('Administrativo');
insert into perfil (descripcion) values ('Logística');
#modulo
insert into modulo (descripcion, uri, shorthand) values ('Diagnóstico de Equipos', 'reparacion/diagnostico', 'Diagnóstico');
insert into modulo (descripcion, uri, shorthand) values ('Reparación de Equipos', 'reparacion/reparacion', 'Reparación');
insert into modulo (descripcion, uri, shorthand) values ('Mantener Usuarios', 'security/usuarios', 'Usuarios');
insert into modulo (descripcion, uri, shorthand) values ('Mantener Perfiles', 'security/perfiles', 'Perfiles');
insert into modulo (descripcion, uri, shorthand) values ('Solicitar Mantenimiento Correctivo', 'solicitud', 'Solicitar Mantenimiento');
insert into modulo (descripcion, uri, shorthand) values ('Asignar Técnicos a Solicitud', 'reparacion/asignar', 'Asignar');
insert into modulo (descripcion, uri, shorthand) values ('Consultar Historial de Desempeño', 'reparacion/historial', 'Historial');
insert into modulo (descripcion, uri, shorthand) values ('Mantener Equipos', 'equipos', 'Equipos');
#moduloporperfil
#administrador del sistema
insert into moduloPorPerfil values (1, 3);
insert into moduloPorPerfil values (1, 4);
#usuario
insert into moduloPorPerfil values (4, 5);
#jefe de área
insert into moduloPorPerfil values (2, 6);
insert into moduloPorPerfil values (2, 7);
insert into moduloPorPerfil values (2, 8);
#perfil de técnico interno
insert into moduloPorPerfil values (3, 1);
insert into moduloPorPerfil values (3, 2);
#administrativo
insert into moduloPorPerfil values (5, 10);
#logistica
insert into moduloPorPerfil values (6, 11);
#usuario
insert into usuario (usuario, password, perfil_id) values ('root', 'sudo', 1); -- administrador
insert into usuario (usuario, password, perfil_id, area_id) values ('jefe', 'boss', 2, 1); -- jefe
insert into usuario (usuario, password, perfil_id, area_id) values ('scott', 'tiger', 4, 3); -- usuario
insert into usuario (usuario, password, perfil_id, area_id) values ('bob', 'sudo', 3, 1); -- técnico interno
insert into usuario (usuario, password, perfil_id, area_id) values ('bob2', 'sudo', 3, 2); -- técnico interno
insert into usuario (usuario, password, perfil_id, area_id) values ('bob3', 'sudo', 3, 3); -- técnico interno
#equipos
insert into equipo (denominacion, fabricante, area_id) values ('Ventilador', 'General Electrics', 3);
insert into equipo (denominacion, fabricante, area_id) values ('Cocina', 'Imaco', 2);
insert into equipo (denominacion, fabricante, area_id) values ('Refrigerador', 'Mabe', 3);
insert into equipo (denominacion, fabricante, area_id) values ('Rayos X', 'SuperFabricante', 3);
insert into equipo (denominacion, fabricante, area_id) values ('Rayos Y', 'SuperFabricante', 3);
#tecnicos
insert into tecnico (nombres, apellidos, fechaIngreso, especialidad, usuario_id) values ('Linus', 'Torvalds', now(), 'Telecomunicaciones', 4);
insert into tecnico (nombres, apellidos, fechaIngreso, especialidad, usuario_id) values ('Alan', 'García Pérez', now(), 'Gasfitería', 5);
insert into tecnico (nombres, apellidos, fechaIngreso, especialidad, usuario_id) values ('Diego Armando', 'Maradona', now(), 'Electricista', 6);