36 lines
1.2 KiB
JavaScript
36 lines
1.2 KiB
JavaScript
require('dotenv').config();
|
||
const Price = require('../src/models/Price');
|
||
|
||
/**
|
||
* 数据库迁移脚本:添加数据源标识字段
|
||
* 为现有 prices 表添加数据源区分字段
|
||
*/
|
||
|
||
async function migrate() {
|
||
console.log('🔄 开始数据库迁移:添加数据源标识字段\n');
|
||
|
||
try {
|
||
await Price.migrateAddSourceFields();
|
||
|
||
console.log('\n' + '='.repeat(60));
|
||
console.log('✅ 数据库迁移完成!');
|
||
console.log('='.repeat(60));
|
||
console.log('\n📊 新增字段说明:');
|
||
console.log(' - price_source_code: 数据源代码(YUNNAN_STEEL_ASSOC / MY_STEEL / DE_STEEL_FACTORY)');
|
||
console.log(' - price_source_desc: 数据源描述');
|
||
console.log(' - data_origin: 数据来源标识(LOCAL_FILE 或 API:ENDPOINT)');
|
||
console.log('\n🎨 数据源标识:');
|
||
console.log(' 🔴 YUNNAN_STEEL_ASSOC - 云南钢协指导价(DEFAULT 接口)');
|
||
console.log(' 🔵 MY_STEEL - 我的钢铁网价格(BACKUP 接口)');
|
||
console.log(' 🟢 DE_STEEL_FACTORY - 德钢钢厂指导价(EXTENDED 接口)');
|
||
|
||
process.exit(0);
|
||
} catch (error) {
|
||
console.error('\n❌ 迁移失败:', error);
|
||
process.exit(1);
|
||
}
|
||
}
|
||
|
||
// 运行迁移
|
||
migrate();
|