// backend/server.js
require('dotenv').config();
const express = require('express');
const mysql = require('mysql2/promise');
const cors = require('cors');

const app = express();
app.use(cors());
app.use(express.json());

// 数据库连接池
const pool = mysql.createPool({
    host: process.env.DB_HOST || 'localhost',
    user: process.env.DB_USER || 'root',
    password: process.env.DB_PASSWORD || '123456',
    database: process.env.DB_NAME || 't_app_wcs_task_bak',
    waitForConnections: true,
    // 指定连接池允许的最大连接数
    connectionLimit: 10
});

// 测试数据库连接
pool.getConnection()
  .then(connection => {
      console.log('数据库连接成功');
      connection.release();
  })
  .catch(err => {
      console.error('数据库连接失败:', err);
  });

// 根路径路由
app.get('/', (req, res) => {
    res.send('后端服务正常运行！');
});

// API路由：获取任务数据
app.get('/api/wcs-tasks', async (req, res) => {
    try {
        const [rows] = await pool.query('SELECT * FROM t_app_wcs_task_bak');
        res.json(rows);
    } catch (error) {
        console.error('数据库查询失败:', error);
        res.status(500).json({ error: '服务器内部错误' });
    }
});

// 启动服务
const PORT = process.env.PORT || 3000; // 修改为 3000 端口
app.listen(PORT, () => {
    console.log(`后端API运行在 http://localhost:${PORT}`);
});