const db = require('../config/database'); class Teacher { static async findById(id) { const teachers = await db.query('SELECT * FROM teachers WHERE id = ?', [id]); return teachers[0]; } static async create(teacherData) { const { id, name, department, title, contact_info } = teacherData; await db.query( 'INSERT INTO teachers (id, name, department, title, contact_info) VALUES (?, ?, ?, ?, ?)', [id, name, department, title, contact_info] ); } static async update(id, data) { const fields = []; const values = []; if (data.name) { fields.push('name = ?'); values.push(data.name); } if (data.department) { fields.push('department = ?'); values.push(data.department); } if (data.title !== undefined) { fields.push('title = ?'); values.push(data.title); } if (data.contact_info !== undefined) { fields.push('contact_info = ?'); values.push(data.contact_info); } if (fields.length === 0) return true; values.push(id); const sql = `UPDATE teachers SET ${fields.join(', ')} WHERE id = ?`; await db.query(sql, values); return true; } static async delete(id) { await db.query('DELETE FROM teachers WHERE id = ?', [id]); } } module.exports = Teacher;