const { DataTypes } = require('sequelize'); const { sequelize } = require('../config/database'); const LeaveRequest = sequelize.define('leave_requests', { id: { type: DataTypes.UUID, defaultValue: DataTypes.UUIDV4, primaryKey: true }, student_id: { type: DataTypes.UUID, allowNull: false }, requested_by: { type: DataTypes.UUID, allowNull: false, comment: 'Parent user_id' }, leave_from: { type: DataTypes.DATE, allowNull: false }, leave_to: { type: DataTypes.DATE, allowNull: false }, reason: { type: DataTypes.TEXT, allowNull: false }, status: { type: DataTypes.ENUM('pending', 'approved', 'rejected'), defaultValue: 'pending' }, approved_by: { type: DataTypes.UUID }, approved_at: { type: DataTypes.DATE }, created_at: { type: DataTypes.DATE, allowNull: false, defaultValue: DataTypes.NOW }, updated_at: { type: DataTypes.DATE, allowNull: false, defaultValue: DataTypes.NOW }, }, { tableName: 'leave_requests', timestamps: true, underscored: true, }); module.exports = LeaveRequest;