refactor: 统一 TypeORM CLI 数据源配置,执行废弃列清理迁移
- data/db/data-source-cli.cjs → .ts,复用 config 模块的 pgsql 配置 - 新增迁移 CleanupTradingPairDeprecatedColumns,删除 trading_pairs 表三个废弃列 - reasonix.toml: model 升级 deepseek-pro,启用中文
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
/**
|
||||
* TypeORM CLI 专用数据源配置
|
||||
*
|
||||
* 直接复用 config 模块的 pgsql 配置(含校验),
|
||||
* 专供 TypeORM CLI(Node.js / tsx)使用。
|
||||
*
|
||||
* 使用方式:
|
||||
* npx tsx node_modules/.bin/typeorm migration:run -d db/data-source-cli.ts
|
||||
* npx tsx node_modules/.bin/typeorm migration:revert -d db/data-source-cli.ts
|
||||
* npx tsx node_modules/.bin/typeorm migration:show -d db/data-source-cli.ts
|
||||
*/
|
||||
import { DataSource } from "typeorm";
|
||||
import { fileURLToPath } from "node:url";
|
||||
import { dirname } from "node:path";
|
||||
import { pgsql } from "../config";
|
||||
|
||||
const __filename = fileURLToPath(import.meta.url);
|
||||
const __dirname = dirname(__filename);
|
||||
|
||||
const AppDataSource = new DataSource({
|
||||
type: "postgres",
|
||||
host: pgsql.host,
|
||||
port: pgsql.port,
|
||||
database: pgsql.database,
|
||||
username: pgsql.user,
|
||||
password: pgsql.password,
|
||||
entities: [__dirname + "/entities/*.{ts,js}"],
|
||||
synchronize: false,
|
||||
migrations: [__dirname + "/migrations/*.{ts,js}"],
|
||||
extra: {
|
||||
max: pgsql.max,
|
||||
idleTimeoutMillis: pgsql.idleTimeoutMillis,
|
||||
connectionTimeoutMillis: pgsql.connectionTimeoutMillis,
|
||||
},
|
||||
logging: ["error", "warn"],
|
||||
});
|
||||
|
||||
export default AppDataSource;
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
/**
|
||||
* Migration: 清理 TradingPair 表中已废弃的 K 线相关字段
|
||||
*
|
||||
* 对应 Commit: b4c7636
|
||||
* 删除字段(实体已移除,TypeORM 不再引用):
|
||||
* - kline_synthesis_enabled (BOOLEAN, DEFAULT TRUE)
|
||||
* - kline_interval (VARCHAR(100), DEFAULT '1m')
|
||||
* - kline_intervals (VARCHAR(100), DEFAULT '1m,...')
|
||||
*/
|
||||
export class CleanupTradingPairDeprecatedColumns1781583054526 {
|
||||
async up(queryRunner) {
|
||||
await queryRunner.query(`
|
||||
ALTER TABLE trading_pairs
|
||||
DROP COLUMN IF EXISTS kline_synthesis_enabled,
|
||||
DROP COLUMN IF EXISTS kline_interval,
|
||||
DROP COLUMN IF EXISTS kline_intervals
|
||||
`);
|
||||
}
|
||||
|
||||
async down(queryRunner) {
|
||||
await queryRunner.query(`
|
||||
ALTER TABLE trading_pairs
|
||||
ADD COLUMN kline_synthesis_enabled BOOLEAN NOT NULL DEFAULT TRUE,
|
||||
ADD COLUMN kline_interval VARCHAR(100) NOT NULL DEFAULT '1m',
|
||||
ADD COLUMN kline_intervals VARCHAR(100) NOT NULL DEFAULT '1m,3m,5m,15m,30m,1h,2h,4h,6h,8h,1d,1w,1mon'
|
||||
`);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user