UNPKG

@tomei/live-price

Version:

Tomei live-price Package

106 lines (91 loc) 2.1 kB
import { BelongsTo, Column, DataType, ForeignKey, Model, Table, } from 'sequelize-typescript'; import { NonSourceFeedName } from '../enum/feed.enum'; import FeedModel from './price-feed.entity'; import { ITomeiPriceLatestAttr } from '../interfaces/price-tomei-price-latest-attr.interface'; import TomeiPriceHistoryModel from './price-tomei-price-history.entity'; @Table({ tableName: 'price_TomeiPriceLatest', timestamps: false, }) export default class TomeiPriceLatestModel extends Model implements ITomeiPriceLatestAttr { @ForeignKey(() => FeedModel) @Column({ primaryKey: true, allowNull: false, type: DataType.STRING(50), }) FeedName: NonSourceFeedName; @ForeignKey(() => TomeiPriceHistoryModel) @Column({ allowNull: false, type: DataType.STRING(30), }) TomeiPriceHistoryId: string; @Column({ primaryKey: true, allowNull: false, type: DataType.CHAR(3), }) Currency: string; @Column({ primaryKey: true, allowNull: false, type: DataType.STRING(10), defaultValue: 'CTH', }) CompanyCode: string; @Column({ allowNull: false, type: DataType.DATE, }) DateTime: Date; @Column({ allowNull: true, type: DataType.DECIMAL(5, 2), }) AdjustBuyPercentage: number; @Column({ allowNull: true, type: DataType.DECIMAL(5, 2), }) AdjustSellPercentage: number; @Column({ allowNull: false, type: DataType.DECIMAL(10, 2), }) TomeiBuyPrice: number; @Column({ allowNull: false, type: DataType.DECIMAL(10, 2), }) TomeiSellPrice: number; @Column({ allowNull: true, type: DataType.STRING(30), }) AdjustedById: string; @Column({ allowNull: true, type: DataType.DATE, }) AdjustedDateTime: Date; @Column({ allowNull: false, type: DataType.DATE, }) UpdatedAt: Date; @BelongsTo(() => FeedModel) Feed: FeedModel; @BelongsTo(() => TomeiPriceHistoryModel) TomeiPriceHistory: TomeiPriceHistoryModel; }