UNPKG

@tomei/sso

Version:
88 lines (75 loc) 1.48 kB
import { BelongsTo, Column, CreatedAt, DataType, ForeignKey, Model, Table, UpdatedAt, } from 'sequelize-typescript'; import User from './user.entity'; import SystemModel from './system.entity'; @Table({ tableName: 'sso_UserSystemAccess', timestamps: true, createdAt: 'CreatedAt', updatedAt: 'UpdatedAt', }) export default class UserSystemAccessModel extends Model { @Column({ primaryKey: true, type: DataType.INTEGER, allowNull: false, autoIncrement: true, }) UserSystemAccessId: number; @ForeignKey(() => User) @Column({ type: DataType.INTEGER, field: 'UserId', }) UserId: number; @ForeignKey(() => SystemModel) @Column({ type: DataType.STRING(10), allowNull: false, }) SystemCode: string; @Column({ type: DataType.CHAR(20), defaultValue: 'Active', }) Status: string; @ForeignKey(() => User) @Column({ type: DataType.INTEGER, }) CreatedById: number; @ForeignKey(() => User) @Column({ type: DataType.INTEGER, }) UpdatedById: number; @CreatedAt CreatedAt: Date; @UpdatedAt UpdatedAt: Date; @BelongsTo(() => User, { foreignKey: 'UserId', as: 'User', }) User: User; @BelongsTo(() => SystemModel) System: SystemModel; @BelongsTo(() => User, { foreignKey: 'CreatedById', as: 'CreatedBy', }) CreatedBy: User; @BelongsTo(() => User, { foreignKey: 'UpdatedById', as: 'UpdatedBy', }) UpdatedBy: User; }