Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
File Manager
/
Seleccion
/
node_modules
/
function-bind
:
examenModel.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php // models/Examen.php class Examen { private $conn; private $table = 'examenes'; public function __construct($db) { $this->conn = $db; } public function crear($datos) { $query = "INSERT INTO " . $this->table . " (candidato_id, examenes_medicos, poligrafo, contratado, fecha_contratacion, observaciones, motivo_rechazo_examen) VALUES (:candidato_id, :examenes_medicos, :poligrafo, :contratado, :fecha_contratacion, :observaciones, :motivo_rechazo_examen)"; $stmt = $this->conn->prepare($query); foreach($datos as $key => $value) { $stmt->bindValue(':' . $key, $value); } if($stmt->execute()) { return $this->conn->lastInsertId(); } return false; } public function obtenerPorCandidato($candidato_id) { $query = "SELECT * FROM " . $this->table . " WHERE candidato_id = :candidato_id"; $stmt = $this->conn->prepare($query); $stmt->bindValue(':candidato_id', $candidato_id); $stmt->execute(); return $stmt->fetch(); } public function actualizar($id, $datos) { $query = "UPDATE " . $this->table . " SET examenes_medicos = :examenes_medicos, poligrafo = :poligrafo, contratado = :contratado, fecha_contratacion = :fecha_contratacion, observaciones = :observaciones, motivo_rechazo_examen = :motivo_rechazo_examen WHERE id = :id"; $stmt = $this->conn->prepare($query); foreach($datos as $key => $value) { $stmt->bindValue(':' . $key, $value); } $stmt->bindValue(':id', $id); return $stmt->execute(); } public function obtenerContratados($filtros = []) { $query = "SELECT e.*, c.cedula, c.nombres_apellidos, c.celular, r.codigo as requisicion_codigo, r.nombre_cargo, r.area FROM " . $this->table . " e INNER JOIN candidatos c ON e.candidato_id = c.id INNER JOIN requisiciones r ON c.requisicion_id = r.id WHERE e.contratado = 'Si'"; if(!empty($filtros['fecha_desde'])) { $query .= " AND e.fecha_contratacion >= :fecha_desde"; } if(!empty($filtros['fecha_hasta'])) { $query .= " AND e.fecha_contratacion <= :fecha_hasta"; } $query .= " ORDER BY e.fecha_contratacion DESC"; $stmt = $this->conn->prepare($query); if(!empty($filtros['fecha_desde'])) { $stmt->bindValue(':fecha_desde', $filtros['fecha_desde']); } if(!empty($filtros['fecha_hasta'])) { $stmt->bindValue(':fecha_hasta', $filtros['fecha_hasta']); } $stmt->execute(); return $stmt->fetchAll(); } } ?>