diff --git a/database/db.sql b/database/db.sql new file mode 100644 index 0000000..4e59393 --- /dev/null +++ b/database/db.sql @@ -0,0 +1,95 @@ +CREATE DATABASE IF NOT EXISTS practica CHARACTER SET utf8; + +CREATE USER IF NOT EXISTS practica IDENTIFIED BY 'practica'; + +GRANT USAGE ON *.* TO practica@localhost IDENTIFIED BY 'practica'; + +GRANT ALL PRIVILEGES ON practica.* TO practica@localhost; + +USE practica; + +CREATE TABLE IF NOT EXISTS paciente ( + nombre VARCHAR(50) NOT NULL, + apellido VARCHAR(50) NOT NULL, + fecha_de_nacimiento DATE NOT NULL, + documento_identificativo VARCHAR(50) PRIMARY KEY, + tipo_documento VARCHAR(10) NOT NULL, + dirección VARCHAR(255) NOT NULL, + localidad VARCHAR(100) NOT NULL, + provincia VARCHAR(50) NOT NULL, + pais VARCHAR(100) NOT NULL +); + + +CREATE TABLE IF NOT EXISTS rol( + codigo INT PRIMARY KEY, + nombre VARCHAR(25) NOT NULL +); + +CREATE TABLE IF NOT EXISTS usuario( + nombre VARCHAR(50) NOT NULL, + usuario VARCHAR(50) PRIMARY KEY, + contraseña VARCHAR(100) NOT NULL, + rol INT NOT NULL, + especialidad VARCHAR(50), + correo VARCHAR(100), + fecha_alta DATE NOT NULL, + fecha_baja DATE, + FOREIGN KEY (rol) + REFERENCES rol(codigo) +); + + +CREATE TABLE IF NOT EXISTS festivos ( + fecha_festivo DATE NOT NULL, + tipo_festivo VARCHAR(15) NOT NULL, + medico VARCHAR(50), + FOREIGN KEY (medico) + REFERENCES usuario(usuario) +); + +CREATE TABLE IF NOT EXISTS calendario ( + id INT NOT NULL, + hora_inicio_mañana TIME, + hora_fin_mañana TIME, + hora_inicio_tarde TIME, + hora_fin_tarde TIME, + horario VARCHAR(15) NOT NULL, + sabado_habil BOOLEAN, + domingo_habil BOOLEAN, + duracion_cita_por_defecto INT, + medico VARCHAR(50), + PRIMARY KEY (id, medico), + FOREIGN KEY (medico) + REFERENCES usuario(usuario) +); + +CREATE TABLE IF NOT EXISTS cita( + id INT NOT NULL, + fecha DATE NOT NULL, + hora TIME NOT NULL, + duracion INT, + medico VARCHAR(50) NOT NULL, + observaciones VARCHAR(255), + paciente VARCHAR(50), + PRIMARY KEY (id, medico), + FOREIGN KEY (medico) + REFERENCES usuario(usuario), + FOREIGN KEY (paciente) + REFERENCES paciente(documento_identificativo) +); + +CREATE TABLE IF NOT EXISTS informe( + id INT NOT NULL, + fecha DATE NOT NULL, + hora TIME NOT NULL, + paciente VARCHAR(50) NOT NULL, + titulo VARCHAR(100) NOT NULL, + contenido VARCHAR(255) NOT NULL, + medico VARCHAR(50) NOT NULL, + PRIMARY KEY (id, paciente), + FOREIGN KEY (medico) + REFERENCES usuario(usuario), + FOREIGN KEY (paciente) + REFERENCES paciente(documento_identificativo) +); diff --git a/shell.nix b/shell.nix index 5a15675..ecf6c85 100644 --- a/shell.nix +++ b/shell.nix @@ -10,6 +10,7 @@ mkShell { mysqld --datadir="$(pwd)/.mysql" --socket="$(pwd)/.mysql/mysql.sock" --initialize-insecure mysqld --datadir="$(pwd)/.mysql" --socket="$(pwd)/.mysql/mysql.sock" --skip-networking & + sleep 1 mysql --socket="$(pwd)/.mysql/mysql.sock" -u root < $(pwd)/database/db.sql ''; diff --git a/static/style.css b/static/style.css new file mode 100644 index 0000000..ee14fe1 --- /dev/null +++ b/static/style.css @@ -0,0 +1,4 @@ +* { + font-family: Roboto, Mono; + font-size: 14px; +} diff --git a/templates/header-footer.html b/templates/header-footer.html new file mode 100644 index 0000000..9153b30 --- /dev/null +++ b/templates/header-footer.html @@ -0,0 +1,27 @@ + + + + + MDIS + + + + + +
+ +
+ + +