Files
ITAM/scratch/check_public_pcs.cjs

41 lines
1.3 KiB
JavaScript

const mysql = require('mysql2/promise');
require('dotenv').config();
async function checkPublicPCs() {
const connection = await mysql.createConnection({
host: process.env.DB_HOST,
user: process.env.DB_USER,
password: process.env.DB_PASS,
database: process.env.DB_NAME,
port: parseInt(process.env.DB_PORT || '3306')
});
console.log('🔍 공용 PC(Public PC)로 추정되는 자산 조회 중...');
// 사번이 없거나, 사용자명에 '공용'이 포함된 데이터 조회
const [rows] = await connection.query(`
SELECT id, asset_code, user_current, emp_no, current_dept, asset_type
FROM asset_core
WHERE (emp_no IS NULL OR emp_no = '' OR user_current LIKE '%공용%')
AND id LIKE 'PC_20260615_%'
`);
console.log(`📊 발견된 공용 PC 후보: ${rows.length}`);
if (rows.length > 0) {
console.table(rows.slice(0, 20)); // 상위 20개 샘플 출력
// 요약 통계
const summary = {
only_no_emp: rows.filter(r => (!r.emp_no) && !r.user_current.includes('공용')).length,
only_public_name: rows.filter(r => r.emp_no && r.user_current.includes('공용')).length,
both: rows.filter(r => (!r.emp_no) && r.user_current.includes('공용')).length
};
console.log('\n📈 요약 통계:', summary);
}
await connection.end();
}
checkPublicPCs().catch(console.error);