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 + + + + + +
+ Crear +
+ + + + + + + + + + + + + + + + + + + +
FechaTipoMedicoAcciones
+ 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 @@ +