/**
 * 监管任务设置脚本
 * @file setup-supervision-tasks.js
 * @description 创建监管任务表并添加测试数据
 */
const { sequelize, SupervisionTask } = require('../models');
const seedSupervisionTasks = require('./seed-supervision-tasks');

async function setupSupervisionTasks() {
  try {
    console.log('🚀 开始设置监管任务...');

    // 测试数据库连接
    await sequelize.authenticate();
    console.log('✅ 数据库连接成功');

    // 同步监管任务模型（创建表）
    await sequelize.sync({ force: false });
    console.log('✅ 数据库表同步完成');

    // 添加测试数据
    await seedSupervisionTasks();

    console.log('🎉 监管任务设置完成！');

  } catch (error) {
    console.error('❌ 监管任务设置失败:', error);
    throw error;
  } finally {
    await sequelize.close();
  }
}

// 运行设置
setupSupervisionTasks()
  .then(() => {
    console.log('✅ 所有操作完成');
    process.exit(0);
  })
  .catch((error) => {
    console.error('💥 操作失败:', error);
    process.exit(1);
  });
