// models/ProjectMember.js
const { DataTypes } = require('sequelize');
const sequelize = require('../config/database');

const ProjectMember = sequelize.define('ProjectMember', {
  pm_id: {
    type: DataTypes.UUID,
    defaultValue: DataTypes.UUIDV4,  // สร้าง UUID อัตโนมัติ
    primaryKey: true,
  },
  user_id: {
    type: DataTypes.UUID,
    allowNull: false,
    // ถ้าต้องการกำหนด constraint ให้ DB รู้ว่าคอลัมน์นี้อ้างอิงตาราง users:
    // references: {
    //   model: 'users',
    //   key: 'user_id',
    // },
  },
  project_id: {
    type: DataTypes.UUID,
    allowNull: false,
    // references: {
    //   model: 'projects',
    //   key: 'project_id',
    // },
  },
  role_in_project: {
    type: DataTypes.STRING(100),
    allowNull: true,
  },
  created_at: {
    type: DataTypes.DATE,
    allowNull: false,
    defaultValue: DataTypes.NOW,
  },
  updated_at: {
    type: DataTypes.DATE,
    allowNull: false,
    defaultValue: DataTypes.NOW,
  },
}, {
  tableName: 'project_members',
  timestamps: false, // ถ้าไม่ต้องการให้ Sequelize จัดการ createdAt/updatedAt ให้อัตโนมัติ
});

module.exports = ProjectMember;
