UNPKG

dm-web-react

Version:

The DM web client with React.

116 lines (109 loc) 5.97 kB
import { TableBase } from "./tableBase"; import { CreateTableTemplate } from "../../models/database/createTableTemplate"; import { TableInfo } from "../../models/database/tableInfo"; import { BondInfo } from "../../models/entity/table/bondInfo"; export class BondInfoTable extends TableBase { public static readonly version: number = 7; public static readonly tableName: string = "bondInfo"; public static readonly serverTablename: string = "bond_quote_best_price_broker_filter"; private readonly columnNames: string[] = []; constructor() { super(); this.columnNames.push(this.getColumnName("bondUniCode")); this.columnNames.push(this.getColumnName("bondCode")); this.columnNames.push(this.getColumnName("bondCodeValue")); this.columnNames.push(this.getColumnName("status")); this.columnNames.push(this.getColumnName("bondShortName")); this.columnNames.push(this.getColumnName("bondShortNameValue")); this.columnNames.push(this.getColumnName("dmBondTypeValue")); this.columnNames.push(this.getColumnName("ratingList")); this.columnNames.push(this.getColumnName("ratingListValue")); this.columnNames.push(this.getColumnName("maxHistoryRating")); this.columnNames.push(this.getColumnName("maxHistoryRatingValue")); this.columnNames.push(this.getColumnName("bondRatingValue")); this.columnNames.push(this.getColumnName("issRatingValue")); this.columnNames.push(this.getColumnName("impliedRatingValue")); this.columnNames.push(this.getColumnName("pdRating")); this.columnNames.push(this.getColumnName("pdRatingValue")); this.columnNames.push(this.getColumnName("comAttrParValue")); this.columnNames.push(this.getColumnName("listParValue")); this.columnNames.push(this.getColumnName("munInvestValue")); this.columnNames.push(this.getColumnName("marketValue")); this.columnNames.push(this.getColumnName("provinceValue")); this.columnNames.push(this.getColumnName("cityValue")); this.columnNames.push(this.getColumnName("guarParValue")); this.columnNames.push(this.getColumnName("rateTypeParValue")); this.columnNames.push(this.getColumnName("haveRightValue")); this.columnNames.push(this.getColumnName("equityFundValue")); this.columnNames.push(this.getColumnName("chinaDevelopment")); this.columnNames.push(this.getColumnName("expirationHoilday")); this.columnNames.push(this.getColumnName("instRating")); this.columnNames.push(this.getColumnName("instRatingValue")); this.columnNames.push(this.getColumnName("instInvestmentAdvice")); this.columnNames.push(this.getColumnName("instInvestmentAdviceValue")); this.columnNames.push(this.getColumnName("industry")); this.columnNames.push(this.getColumnName("industryValue")); this.columnNames.push(this.getColumnName("pdTime")); this.columnNames.push(this.getColumnName("pdDiff")); this.columnNames.push(this.getColumnName("worstPdTime")); this.columnNames.push(this.getColumnName("isCrossMar")); this.columnNames.push(this.getColumnName("pledgeCode")); } private getColumnName(value: keyof BondInfo): string { return value.toString(); } public getCreateTableTemplate(): CreateTableTemplate { const createSql = `CREATE TABLE ${BondInfoTable.tableName} ( ${this.getColumnName("bondUniCode")} INTEGER PRIMARY KEY, ${this.getColumnName("status")} INTEGER, ${this.getColumnName("bondCode")} VARCHAR(50), ${this.getColumnName("bondCodeValue")} INTEGER, ${this.getColumnName("bondShortName")} VARCHAR(200), ${this.getColumnName("bondShortNameValue")} INTEGER, ${this.getColumnName("dmBondTypeValue")} INTEGER, ${this.getColumnName("ratingList")} VARCHAR(100), ${this.getColumnName("ratingListValue")} INTEGER, ${this.getColumnName("maxHistoryRating")} VARCHAR(50), ${this.getColumnName("maxHistoryRatingValue")} INTEGER, ${this.getColumnName("bondRatingValue")} INTEGER, ${this.getColumnName("issRatingValue")} INTEGER, ${this.getColumnName("impliedRatingValue")} INTEGER, ${this.getColumnName("pdRating")} VARCHAR(50), ${this.getColumnName("pdRatingValue")} INTEGER, ${this.getColumnName("comAttrParValue")} INTEGER, ${this.getColumnName("listParValue")} INTEGER, ${this.getColumnName("munInvestValue")} INTEGER, ${this.getColumnName("marketValue")} INTEGER, ${this.getColumnName("provinceValue")} INTEGER, ${this.getColumnName("cityValue")} INTEGER, ${this.getColumnName("guarParValue")} INTEGER, ${this.getColumnName("rateTypeParValue")} DECIMAL(10,4), ${this.getColumnName("haveRightValue")} INTEGER, ${this.getColumnName("equityFundValue")} INTEGER, ${this.getColumnName("chinaDevelopment")} INTEGER, ${this.getColumnName("expirationHoilday")} INTEGER, ${this.getColumnName("instRating")} VARCHAR(50), ${this.getColumnName("instRatingValue")} INTEGER, ${this.getColumnName("instInvestmentAdvice")} VARCHAR(50), ${this.getColumnName("instInvestmentAdviceValue")} INTEGER, ${this.getColumnName("industry")} VARCHAR(50), ${this.getColumnName("industryValue")} INTEGER, ${this.getColumnName("pdTime")} VARCHAR(50), ${this.getColumnName("pdDiff")} INTEGER, ${this.getColumnName("worstPdTime")} VARCHAR(50), ${this.getColumnName("isCrossMar")} INTEGER, ${this.getColumnName("pledgeCode")} INTEGER )`; const result = new CreateTableTemplate(); result.createSql = createSql; result.tableName = BondInfoTable.tableName; result.version = BondInfoTable.version; return result; } public getTableInfo(): TableInfo { const result = new TableInfo(); result.tableName = BondInfoTable.tableName; result.columnNames = this.columnNames; return result; } }