import { Table, Column, Model, Default, DataType } from 'sequelize-typescript'; import { ApiProperty } from '@nestjs/swagger'; @Table({ tableName: 'test_assign', paranoid: true }) export default class TestAssign extends Model { @ApiProperty({ type: Number }) @Column(DataType.BIGINT) testId: number; @ApiProperty({ type: Number }) @Column(DataType.BIGINT) userId: number; @ApiProperty({ type: Date, format: 'date-time' }) @Column(DataType.DATEONLY) assignedAt: Date; @ApiProperty({ type: Date, format: 'date-time' }) @Column(DataType.DATEONLY) startTime: Date; @ApiProperty({ type: Date, format: 'date-time' }) @Column(DataType.DATEONLY) endTime: Date; @ApiProperty({ type: Date, default: new Date() }) @Default(new Date()) @Column(DataType.DATEONLY) validFrom: Date; @ApiProperty({ type: Date, default: new Date("2070-12-31") }) @Default(new Date("2070-12-31")) @Column(DataType.DATEONLY) validTill: Date; @ApiProperty({ type: String, format: 'date-time' }) @Column(DataType.DATEONLY) createdAt: Date; @ApiProperty({ type: String, format: 'date-time' }) @Column(DataType.DATEONLY) updatedAt: Date; @ApiProperty({ type: String, required: false }) @Column(DataType.TEXT) createdBy: string; @ApiProperty({ type: String, required: false }) @Column(DataType.TEXT) modifiedBy: string; @ApiProperty({ type: Date, required: false }) @Column(DataType.DATEONLY) deletedAt: Date; @ApiProperty({ type: Number }) @Column(DataType.NUMBER) version: number; @ApiProperty({ type: String }) @Column(DataType.TEXT) status: string; }