49 lines
1.3 KiB
TypeScript
49 lines
1.3 KiB
TypeScript
import mysql from 'mysql2/promise';
|
|
import dotenv from 'dotenv';
|
|
|
|
dotenv.config();
|
|
|
|
async function checkRecords() {
|
|
try {
|
|
const conn = await mysql.createConnection({
|
|
host: process.env.DB_HOST || 'localhost',
|
|
port: Number(process.env.DB_PORT) || 3306,
|
|
user: process.env.DB_USER || 'root',
|
|
password: process.env.DB_PASSWORD || '',
|
|
database: process.env.DB_NAME || 'employee_performance',
|
|
});
|
|
|
|
console.log('=== 所有绩效记录 ===');
|
|
const [rows] = await conn.query(`
|
|
SELECT perf_id, user_id, month, status, self_score, ai_score, submit_time, created_at
|
|
FROM performance_month
|
|
ORDER BY created_at DESC
|
|
`);
|
|
console.table(rows);
|
|
|
|
console.log('\n=== 员工用户信息 ===');
|
|
const [users] = await conn.query(`
|
|
SELECT user_id, username, name, role, department, position
|
|
FROM user
|
|
WHERE role = 'employee'
|
|
`);
|
|
console.table(users);
|
|
|
|
console.log('\n=== 绩效项数量统计 ===');
|
|
const [itemCounts] = await conn.query(`
|
|
SELECT perf_id, COUNT(*) as item_count
|
|
FROM perf_item
|
|
GROUP BY perf_id
|
|
`);
|
|
console.table(itemCounts);
|
|
|
|
await conn.end();
|
|
process.exit(0);
|
|
} catch (error: any) {
|
|
console.error('错误:', error.message);
|
|
process.exit(1);
|
|
}
|
|
}
|
|
|
|
checkRecords();
|