UNPKG

dm-web-react

Version:

The DM web client with React.

86 lines (81 loc) 4.43 kB
import { TableBase } from "./tableBase"; import { CreateTableTemplate } from "../../models/database/createTableTemplate"; import { TableInfo } from "../../models/database/tableInfo"; import { ExchangeImagePrice } from "../../models/entity/table/exchangeImagePrice"; export class ExchangeImagePriceTable extends TableBase { public static readonly tableName: string = "exchangeImagePrice"; public static readonly version: number = 1; private readonly columnNames: string[] = []; constructor() { super(); this.columnNames.push(this.getColumnName("dataId")); this.columnNames.push(this.getColumnName("issueDataTime")); this.columnNames.push(this.getColumnName("bondCode")); this.columnNames.push(this.getColumnName("bid")); this.columnNames.push(this.getColumnName("bidValue")); this.columnNames.push(this.getColumnName("bidVolume")); this.columnNames.push(this.getColumnName("bidVolumeValue")); this.columnNames.push(this.getColumnName("ofr")); this.columnNames.push(this.getColumnName("ofrValue")); this.columnNames.push(this.getColumnName("ofrVolume")); this.columnNames.push(this.getColumnName("ofrVolumeValue")); this.columnNames.push(this.getColumnName("bidSubChinaBond")); this.columnNames.push(this.getColumnName("bidSubChinaBondValue")); this.columnNames.push(this.getColumnName("chinaBondSubOfr")); this.columnNames.push(this.getColumnName("chinaBondSubOfrValue")); this.columnNames.push(this.getColumnName("bidSubCsIndex")); this.columnNames.push(this.getColumnName("bidSubCsIndexValue")); this.columnNames.push(this.getColumnName("csIndexSubOfr")); this.columnNames.push(this.getColumnName("csIndexSubOfrValue")); this.columnNames.push(this.getColumnName("tradeSubChinaBond")); this.columnNames.push(this.getColumnName("tradeSubCsIndex")); this.columnNames.push(this.getColumnName("recentYtm")); this.columnNames.push(this.getColumnName("recentVolumn")); } private getColumnName(value: keyof ExchangeImagePrice): string { return value.toString(); } public getCreateTableTemplate(): CreateTableTemplate { const createSql = `CREATE TABLE ${ExchangeImagePriceTable.tableName} ( ${this.getColumnName("dataId")} VARCHAR(50) PRIMARY KEY, ${this.getColumnName("id")} INTEGER, ${this.getColumnName("issueDataTime")} INTEGER, ${this.getColumnName("bondCode")} VARCHAR(50), ${this.getColumnName("bid")} VARCHAR(50), ${this.getColumnName("bidValue")} DECIMAL(10,4), ${this.getColumnName("bidVolume")} VARCHAR(50), ${this.getColumnName("bidVolumeValue")} DECIMAL(10,4), ${this.getColumnName("ofr")} VARCHAR(50), ${this.getColumnName("ofrValue")} DECIMAL(10,4), ${this.getColumnName("ofrVolume")} VARCHAR(50), ${this.getColumnName("ofrVolumeValue")} DECIMAL(10,4), ${this.getColumnName("bidSubChinaBond")} VARCHAR(50), ${this.getColumnName("bidSubChinaBondValue")} DECIMAL(10,4), ${this.getColumnName("chinaBondSubOfr")} VARCHAR(50), ${this.getColumnName("chinaBondSubOfrValue")} DECIMAL(10,4), ${this.getColumnName("bidSubCsIndex")} VARCHAR(50), ${this.getColumnName("bidSubCsIndexValue")} DECIMAL(10,4), ${this.getColumnName("csIndexSubOfr")} VARCHAR(50), ${this.getColumnName("csIndexSubOfrValue")} DECIMAL(10,4), ${this.getColumnName("tradeSubChinaBond")} VARCHAR(50), ${this.getColumnName("tradeSubCsIndex")} VARCHAR(50) ); CREATE INDEX IF NOT EXISTS index_${ExchangeImagePriceTable.tableName}_${this.getColumnName("id")} ON ${ ExchangeImagePriceTable.tableName }(${this.getColumnName("id")}); CREATE INDEX IF NOT EXISTS index_${ExchangeImagePriceTable.tableName}_${this.getColumnName("issueDataTime")} ON ${ ExchangeImagePriceTable.tableName }(${this.getColumnName("issueDataTime")});`; const result = new CreateTableTemplate(); result.createSql = createSql; result.tableName = ExchangeImagePriceTable.tableName; result.version = ExchangeImagePriceTable.version; return result; } public getTableInfo(): TableInfo { const result = new TableInfo(); result.tableName = ExchangeImagePriceTable.tableName; result.columnNames = this.columnNames; return result; } }