diff --git a/database/db.sql b/database/db.sql
index 26b3495..0f7123f 100644
--- a/database/db.sql
+++ b/database/db.sql
@@ -53,9 +53,9 @@ CREATE TABLE IF NOT EXISTS festivo (
id INT PRIMARY KEY AUTO_INCREMENT,
fecha_festivo DATE NOT NULL,
tipo_festivo VARCHAR(15) NOT NULL,
- medico VARCHAR(50),
+ medico INT DEFAULT NULL,
FOREIGN KEY (medico)
- REFERENCES usuario(usuario)
+ REFERENCES usuario(id)
);
CREATE TABLE IF NOT EXISTS calendario (
@@ -68,10 +68,10 @@ CREATE TABLE IF NOT EXISTS calendario (
sabado_habil BOOLEAN,
domingo_habil BOOLEAN,
duracion_cita_por_defecto INT,
- medico VARCHAR(50),
+ medico INT,
PRIMARY KEY (id, medico),
FOREIGN KEY (medico)
- REFERENCES usuario(usuario)
+ REFERENCES usuario(id)
);
CREATE TABLE IF NOT EXISTS cita(
@@ -79,12 +79,12 @@ CREATE TABLE IF NOT EXISTS cita(
fecha DATE NOT NULL,
hora TIME NOT NULL,
duracion INT,
- medico VARCHAR(50) NOT NULL,
+ medico INT NOT NULL,
observaciones VARCHAR(255),
paciente INT NOT NULL,
PRIMARY KEY (id, medico),
FOREIGN KEY (medico)
- REFERENCES usuario(usuario),
+ REFERENCES usuario(id),
FOREIGN KEY (paciente)
REFERENCES paciente(id)
);
@@ -96,10 +96,10 @@ CREATE TABLE IF NOT EXISTS informe(
paciente INT NOT NULL,
titulo VARCHAR(100) NOT NULL,
contenido VARCHAR(255) NOT NULL,
- medico VARCHAR(50) NOT NULL,
+ medico INT NOT NULL,
PRIMARY KEY (id, paciente),
FOREIGN KEY (medico)
- REFERENCES usuario(usuario),
+ REFERENCES usuario(id),
FOREIGN KEY (paciente)
REFERENCES paciente(id)
);
diff --git a/src/calendar.php b/src/calendar.php
new file mode 100644
index 0000000..27dfe64
--- /dev/null
+++ b/src/calendar.php
@@ -0,0 +1,48 @@
+
+
+
+
+
+ Gestión de calendario
+
+
+
+
+
+
+
+
+
+ Fecha |
+ Tipo |
+ Medico |
+ Acciones |
+
+
+
+
+ |
+ |
+ |
+
+ Editar
+ |
+
+ Borrar
+ |
+
+
+
+
+
+
diff --git a/src/database.php b/src/database.php
index 8b66c2b..d0999f6 100644
--- a/src/database.php
+++ b/src/database.php
@@ -53,19 +53,24 @@ function deletePatient($pdo, string $id) {
}
function createHoliday($pdo, $data) {
- $query = "INSERT INTO festivo (fecha_festivo, tipo_festivo, medico) VALUES (?,?,?)";
- $pdo->prepare($query)->execute([$data["fecha_festivo"], $data["tipo_festivo"], $data["medico"]]);
+ if(empty($data["medico"])){
+ $query = "INSERT INTO festivo (fecha_festivo, tipo_festivo, medico) VALUES (?,?,?)";
+ $pdo->prepare($query)->execute([$data["fecha_festivo"], $data["tipo_festivo"], $data["medico"]]);
+ } else {
+ $query = "INSERT INTO festivo (fecha_festivo, tipo_festivo) VALUES (?,?)";
+ $pdo->prepare($query)->execute([$data["fecha_festivo"], $data["tipo_festivo"]]);
+ }
return "Festivo creado con éxito";
}
-function editHoliday($pdo, $attr, $param, $id) {
- $query = "UPDATE festivo SET ? = ? WHERE id = ?";
- $pdo->prepare($query)->execute([$attr, $param, $id]);
+function editHoliday($pdo, $data, $id) {
+ $query = "UPDATE festivo SET fecha_festivo=?, tipo_festivo=?, medico=? WHERE id=?";
+ $pdo->prepare($query)->execute([$data["fecha_festivo"], $data["tipo_festivo"], $data["medico"], $id]);
return "Festivo modificado con éxito";
}
-function deleteHoliday($pdo, str $id) {
- $statement = "DELETE FROM festivo where id = ?";
+function deleteHoliday($pdo, $id) {
+ $statement = "DELETE FROM festivo where id=?";
$pdo->prepare($statement)->execute([$id]);
return "Festivo borrado con éxito";
}
@@ -121,8 +126,10 @@ function findUser($pdo, $input) {
function listPatients($pdo) {
$query = "SELECT paciente.id, paciente.nombre, paciente.apellido, paciente.fecha_de_nacimiento, paciente.documento_identificativo,
- paciente.tipo_documento, paciente.direccion, paciente.localidad, paciente.provincia, paciente.pais, cita.id, informe.titulo
- FROM paciente LEFT JOIN cita ON paciente.id=cita.paciente LEFT JOIN informe ON paciente.id=informe.paciente
+ paciente.tipo_documento, paciente.direccion, municipios.nombre, provincias.provincia, paciente.pais, cita.id, informe.titulo
+ FROM paciente INNER JOIN municipios ON paciente.localidad = municipios.id_municipio
+ INNER JOIN provincias ON paciente.provincia = provincias.id_provincia
+ LEFT JOIN cita ON paciente.id=cita.paciente LEFT JOIN informe ON paciente.id=informe.paciente
GROUP BY paciente.id, cita.id, informe.titulo";
$result = $pdo->prepare($query);
$result->execute();
@@ -164,4 +171,28 @@ function fetchRegions($pdo){
return $data;
}
+function listHolidays($pdo){
+ $query = "SELECT * FROM festivo";
+ $result = $pdo->prepare($query);
+ $result->execute();
+ $data = $result->fetchAll();
+ return $data;
+}
+
+function listDoctors($pdo){
+ $query = "SELECT * FROM usuario where rol=2";
+ $result = $pdo->prepare($query);
+ $result->execute();
+ $data = $result->fetchAll();
+ return $data;
+}
+
+function fetchHolidayData($pdo, string $id) {
+ $query = "SELECT * FROM festivo WHERE id=?";
+ $result = $pdo->prepare($query);
+ $result->execute([$id]);
+ $data = $result->fetch();
+ return $data;
+}
+
?>
diff --git a/src/forms/holiday_create_form.php b/src/forms/holiday_create_form.php
new file mode 100644
index 0000000..207e89f
--- /dev/null
+++ b/src/forms/holiday_create_form.php
@@ -0,0 +1,42 @@
+
+
+
+ Gestión de usuarios
+
+
+
+
+
+
+
+
+
diff --git a/src/forms/holiday_edit_form.php b/src/forms/holiday_edit_form.php
new file mode 100644
index 0000000..739597c
--- /dev/null
+++ b/src/forms/holiday_edit_form.php
@@ -0,0 +1,43 @@
+
+
+
+ Gestión de usuarios
+
+
+
+
+
+
+
+
+
diff --git a/src/holiday_management.php b/src/holiday_management.php
new file mode 100644
index 0000000..bfa1443
--- /dev/null
+++ b/src/holiday_management.php
@@ -0,0 +1,40 @@
+