const { sequelize, InstallationTask, User } = require('../models')
const seedInstallationTasks = require('./seed-installation-tasks')

async function setupInstallationTasks() {
  try {
    console.log('开始设置待安装任务...')

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

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

    // 创建测试数据
    await seedInstallationTasks()
    console.log('✅ 待安装任务设置完成')

  } catch (error) {
    console.error('设置待安装任务失败:', error)
    throw error
  }
}

// 如果直接运行此脚本
if (require.main === module) {
  setupInstallationTasks()
    .then(() => {
      console.log('待安装任务设置完成')
      process.exit(0)
    })
    .catch((error) => {
      console.error('脚本执行失败:', error)
      process.exit(1)
    })
}

module.exports = setupInstallationTasks
