const { DataTypes } = require('sequelize'); const { sequelize } = require('../config/database'); const Participant = sequelize.define('Participant', { id: { type: DataTypes.INTEGER.UNSIGNED, primaryKey: true, autoIncrement: true, comment: '미팅 참가자 고유 식별자' }, meetingId: { type: DataTypes.INTEGER.UNSIGNED, allowNull: false, references: { model: 'Meetings', key: 'id' }, comment: '미팅 ID' }, memberId: { type: DataTypes.INTEGER.UNSIGNED, allowNull: false, references: { model: 'Members', key: 'id' }, comment: '회원 ID' }, teamNumber: { type: DataTypes.INTEGER.UNSIGNED, allowNull: false, defaultValue: 1, comment: '팀 번호' }, status: { type: DataTypes.ENUM('참가예정', '참가완료', '취소'), allowNull: false, defaultValue: '참가예정', comment: '참가 상태' }, attendance: { type: DataTypes.BOOLEAN, defaultValue: false, comment: '출석 여부' }, paymentStatus: { type: DataTypes.ENUM('미납', '납부완료'), allowNull: false, defaultValue: '미납', comment: '참가비 납부 상태' }, paymentAmount: { type: DataTypes.INTEGER, allowNull: false, defaultValue: 0, comment: '납부 금액' }, createdAt: { type: DataTypes.DATE, allowNull: false, comment: '생성일' }, updatedAt: { type: DataTypes.DATE, allowNull: false, comment: '수정일' } }, { tableName: 'EventParticipants', comment: '미팅 참가자 정보를 저장하는 테이블', timestamps: true }); module.exports = Participant;